When configuring an xrootd instance to be a redirector with RedirectLocal, it is expected that the redirector redirects clients to their local filesystem, given the proper conditions are met. For that the redirector instance needs to know the top level data directory, which is specified in the config option oss.localroot. It is however not needed for that directory to be present on the redirector instance. Only data server and client need to have that directory. Yet the redirector instance refuses startup without a directory by that name being present on the redirector host. Steps to reproduce: 1. Start an xrootd instance as redirector, for example with a config file like this: ``` all.export / r/w all.role manager all.manager redirector.localdomain 3122 xrd.protocol xrootd * all.adminpath /var/run/xrootd all.pidpath /var/run/xrootd xrd.port 1094 ofs.cmslib /usr/lib64/libXrdCmsRedirectLocal.so oss.localroot /lustre/alise/data ``` Make sure the directory specified in oss.localroot does not exist. 2. Observe how xrootd fails to start: ``` [vagrant@redirector ~]$ xrootd -c /etc/xrootd/xrootd.conf 200909 16:22:59 1241 Starting on Linux 5.8.7-arch1-1 Copr. 2004-2012 Stanford University, xrd version v5.0.1 ++++++ xrootd [log in to unmask] initialization started. Config using configuration file /etc/xrootd/xrootd.conf =====> xrd.protocol xrootd * =====> all.adminpath /var/run/xrootd =====> all.pidpath /var/run/xrootd =====> xrd.port 1094 Config maximum number of connections restricted to 524288 Config maximum number of threads restricted to 3847 Copr. 2012 Stanford University, xrootd protocol 5.0.0 version v5.0.1 ++++++ xrootd protocol initialization started. =====> all.export / r/w Config exporting / Config warning: 'xrootd.seclib' not specified; strong authentication disabled! Config Routing for 127.0.1.1: local pub4 prv4 Config Route all4: 127.0.1.1 Dest=[::127.0.1.1]:1094 ++++++ File system initialization started. =====> all.role manager =====> ofs.cmslib /usr/lib64/libXrdCmsRedirectLocal.so ++++++ Storage system initialization started. =====> all.export / r/w =====> oss.localroot /lustre/alise/data 200909 16:22:59 1241 oss_N2N: Unable to use localroot /lustre/alise/data; no such file or directory ------ Storage system initialization failed. ++++++ Configuring manager role. . . =====> all.manager redirector.localdomain 3122 =====> all.adminpath /var/run/xrootd Config 1 manager(s) started. ------ File system manager initialization failed. 200909 16:22:59 1241 XrootdConfig: Unable to load base file system using default ------ xrootd protocol initialization failed. 200909 16:22:59 1241 XrdProtocol: Protocol xroot could not be loaded ------ xrootd [log in to unmask]:1094 initialization failed. ``` 3. Create a phony directory on the redirector as specified in oss.localroot: `mkdir -p /lustre/alise/data` 4. Observe how xrootd now starts without error: ``` [vagrant@redirector ~]$ xrootd -c /etc/xrootd/xrootd.conf 200909 16:24:53 1262 Starting on Linux 5.8.7-arch1-1 Copr. 2004-2012 Stanford University, xrd version v5.0.1 ++++++ xrootd [log in to unmask] initialization started. Config using configuration file /etc/xrootd/xrootd.conf =====> xrd.protocol xrootd * =====> all.adminpath /var/run/xrootd =====> all.pidpath /var/run/xrootd =====> xrd.port 1094 Config maximum number of connections restricted to 524288 Config maximum number of threads restricted to 3847 Copr. 2012 Stanford University, xrootd protocol 5.0.0 version v5.0.1 ++++++ xrootd protocol initialization started. =====> all.export / r/w Config exporting / Config warning: 'xrootd.seclib' not specified; strong authentication disabled! Config Routing for 127.0.1.1: local pub4 prv4 Config Route all4: 127.0.1.1 Dest=[::127.0.1.1]:1094 ++++++ File system initialization started. =====> all.role manager =====> ofs.cmslib /usr/lib64/libXrdCmsRedirectLocal.so ++++++ Storage system initialization started. =====> all.export / r/w =====> oss.localroot /lustre/alise/data Config effective /etc/xrootd/xrootd.conf oss configuration: oss.alloc 0 0 0 oss.spacescan 600 oss.fdlimit 262144 524288 oss.maxsize 0 oss.localroot /lustre/alise/data oss.trace 0 oss.xfr 1 deny 10800 keep 1200 oss.memfile off max 512393216 oss.defaults r/w nocheck nodread nomig nopurge norcreate nostage oss.path / r/w nocheck nodread nomig nopurge norcreate nostage ------ Storage system initialization completed. Plugin loaded ++++++ Configuring manager role. . . =====> all.manager redirector.localdomain 3122 =====> all.adminpath /var/run/xrootd Config 1 manager(s) started. 200909 16:24:53 1273 XrdOpen: Unable to connect socket to redirector.localdomain; connection refused Config effective /etc/xrootd/xrootd.conf ofs configuration: all.role manager ofs.maxdelay 60 ofs.persist manual hold 600 logdir /var/run/xrootd/.ofs/posc.log ofs.trace 0 ofs.cmslib /usr/lib64/libXrdCmsRedirectLocal-5.so ------ File system manager initialization completed. ------ xrootd protocol initialization completed. Copr. 2012 Stanford University, xrootd protocol 5.0.0 version v5.0.1 ++++++ xrootd protocol initialization started. =====> all.export / r/w Config exporting / Config warning: 'xrootd.seclib' not specified; strong authentication disabled! Config Routing for 127.0.1.1: local pub4 prv4 Config Route all4: 127.0.1.1 Dest=[::127.0.1.1]:1094 ------ xrootd protocol initialization completed. ------ xrootd [log in to unmask]:1094 initialization completed. 200909 16:24:57 1273 cms_ClientMan: Connected to suspended redirector.localdomain v 3 ``` -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/xrootd/xrootd/issues/1278 ######################################################################## Use REPLY-ALL to reply to list To unsubscribe from the XROOTD-DEV list, click the following link: https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1