if I try to modify the default xrootd port, with xrd directives that look like
xrd.port 11094
if exec xrootd
xrd.protocol xproofd:1093 libXrdProofd.so
fi
Proof complains at the merging step, with error messages that look like
TProofOutputFile::AddFile: error from TFileMerger::AddFile(root://pwork02.pic.es//home/proof/cosuna/session-pf001-1281622187-7079/worker-0.6-pf002-1281622193-17248//ttbar5200LocalNtuple.root)
If I comment out the line xrd.port 11094, then proofd is located at 1093 and xrootd at 1094 and then it works. It seems that TProofOutputFiles does not know that the xrootd port is not the default.
For a daemon running the two protocols (XrdXrootd and XrdProofd) the information is available in the env variable XRD_PORT (or similar). However, when we run xproofd alone, the information must be input by hand (or, in the future, using an autodiscovery system …).
We can probably automatize the first case. We will see.
For the moment try by adding:
xpd.putenv LOCALDATASERVER root://<host>:11094/
( will be resolved to the local host: leave it as it is …).
In fact I thought the daemon was running the two protocols. Not sure to understand this point, but when running the daemon I get xrootd on 1094 and xproofd on 1093 if I dont change the defaults.
Anyway I tried by adding this line to the conf and the error changes but still I getting errors from the Merger
TProofOutputFile::AddFile: error from TFileMerger::AddFile(file:/home/proof/cosuna/session-pf001-1282641059-9498/worker-0.50-pf004-1282641080-3009//ttbar5200LocalNtuple.root)
Can you also look in user’s worker sandboxes for a file of the type .env and check the content in there? It should contain the definition of LOCALDATASERVER …