Print

Print


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