Print

Print


(posted earlier on xrootd-dev, reposting on xrootd-l)

On 09/17/2014 01:43 PM, Daniel L. Wang wrote:
> Hello,
>
> We have encountered what looks like a bug while building Xrootd that 
> seems to be triggered by having a long git tag.
>
> Here is a build log snippet:
> Building CXX object 
> src/CMakeFiles/XrdFileCache.dir/XrdFileCache/XrdFileCacheFactory.cc.o
> [ 97%] [ 97%] [ 97%] [ 97%] Building CXX object 
> src/CMakeFiles/XrdFileCache.dir/XrdFileCache/XrdFileCacheIOEntireFile.cc.o
> Building CXX object 
> src/CMakeFiles/XrdFileCache.dir/XrdFileCache/XrdFileCacheIOFileBlock.cc.o
> Building CXX object 
> src/CMakeFiles/XrdFileCache.dir/XrdFileCache/XrdFileCachePrefetch.cc.o
> Building CXX object 
> src/CMakeFiles/XrdFileCache.dir/XrdFileCache/XrdFileCacheInfo.cc.o
> Linking CXX executable xrdadler32
> Linking CXX shared library libXrdPosixPreload.so
> Linking CXX shared library libXrdSecgsi.so
> [ 97%] Built target XrdPosixPreload
> [ 97%] Built target xrdadler32
> [ 97%] Built target XrdSecgsi
> Linking CXX executable xrdfs
> Scanning dependencies of target XrdSecgsiGMAPDN
> [ 97%] Building CXX object 
> src/CMakeFiles/XrdSecgsiGMAPDN.dir/XrdSecgsi/XrdSecgsiGMAPFunDN.cc.o
> Linking CXX shared library libXrdFfs.so
> /lsst/home/lsstsw/build/xrootd/src/XrdFileCache/XrdFileCacheFactory.cc:49: 
> error: initializer-string for array of chars is too long
> [ 97%] Built target xrdfs
> [ 97%] Built target XrdFfs
> make[2]: *** 
> [src/CMakeFiles/XrdFileCache.dir/XrdFileCache/XrdFileCacheFactory.cc.o] Error 
> 1
> make[2]: *** Waiting for unfinished jobs....
>
> The tag we are using is: 4.0.0rc3-qsClient2.lsst1 , which is 24 
> characters. XrdFileCacheFactory.cc:49 has a line that uses the 
> XrdVERSIONINFO macro, which apparently joins strings together based on 
> a discovered git tag. It's interesting that the length limit was only 
> hit when compiling XrdFileCacheFactory.cc -- I'm sure the macro was 
> referenced in many parts of code that successfully compiled.
>
> Ideally, I think the code should be robust enough to handle 
> arbitrarily-long tags. But realistically, I think a warning and some 
> creative tag shortening: "SomebodysReallyReallyLongTag" --> 
> "SomebodysRe...gTag" would suffice, and be simpler to implement.
>
> I'm not positive that the issue exists on the mainline xrootd--if 
> there have been updates to the tag/version handling, I should 
> certainly pull a new version. The version I'm using is in my 
> repository on github: wangd/xrootd, tag: qsClient2 (but re-tagged to 
> the long string above).
>
> Have a nice day,
>
> -Daniel
>

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-L list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-L&A=1