Print

Print


Hi Pavel,

No, thank you for pointing that out. This is definetely a bug. The
additional blanks should have been removed. Sorry that this put you
through a lot of grief.

Andy


On Tue, 28 Mar 2006, Pavel Jakl wrote:

> Hi Andy again,
>
> I have found that stupid thing. And it is magic end of line :))
> Why it was not taken the particular line with supervisor is because the
> string "supervisor" in if statement had additional blank characters and
> I didn't see that.
> Maybe it would be good to demark the statement in brackets to beware of it.
>
> Sorry to spam you and thanks for help
> Pavel
>
> Pavel Jakl wrote:
>
> > Hi Andy,
> >
> > I re-produced it again. As you could see from the olb log file:
> >
> > 060328 17:40:22 001 (c) 2005 SLAC olbd version 20060307-0546
> >
> > 060328 17:40:22 001 [log in to unmask] initilization
> > started.
> >
> > 060328 17:40:22 001 olb_Config: Role not specified; manager role assumed.
> >
> > 060328 17:40:22 19119 olb_Xeq: Performance monitor thread started
> >
> > 060328 17:40:22 19119 olb_Xeq: Refcount monitor thread started
> >
> > 060328 17:40:22 19119 olb_Xeq: Request Responder thread started
> >
> > 060328 17:40:22 19119 olb_Xeq: Request Timeout thread started
> >
> > 060328 17:40:22 19119 olb_Xeq: State monitor thread started
> >
> > 060328 17:40:22 001 [log in to unmask]:3121 manager
> > initialization completed.
> >
> > 060328 17:40:22 19119 olb_Xeq: Admin traffic thread started
> >
> > 060328 17:40:27 19119 olb_Admin_Login: Primary server 19060 logged in
> >
> > 060328 17:41:52 19119 olb_Xeq: Worker thread started
> >
> > 060328 17:41:52 19119 olb_Config: Service enabled.
> >
> > And please also see that this node has as instance name "supervisor"
> > and I have these lines in configuration file:
> >
> >        olb.role manager if named redirector
> >
> >        olb.role server if named dataserver
> >
> >        olb.role supervisor if named supervisor
> >
> >
> > I am also sending the whole configuration file in attachement to be
> > sure that I didn't set something wrong that could replace or break
> > this confgiguration directive.
> > I could not say the symptons, sorry.
> >
> > Pavel
> >
> >
> > Andrew Hanushevsky wrote:
> >
> >> Hi Pavel,
> >>
> >> Could you give me the symptoms that made it appear to not work? The
> >> first
> >> one should have worked. If it dod not, this is a bug and will be fixed.
> >>
> >> In any case, a supervisor node needs *both* 'ofs.redirect remote' *and*
> >> 'ofs.redirect target' specified and it is subject to a redirection as
> >> well
> >> as redirecting itself. Specifying only "remote" will not work in most
> >> cases since the supervisor will not connect to the local olbd and off
> >> failures will occur (this pointed out that the protocol spec was a bit
> >> fuzzy on this, sigh).
> >>
> >> So, you should also have the line:
> >>
> >> ofs.redirect target if named supervisor
> >>
> >> Anyway, I will check on this.
> >>
> >> Andy
> >>
> >> P.S. I am in the process of simplifying the configuration which will
> >> make
> >> the "redirect" statement superfluous (though upwardly acceptable).
> >>
> >> On Tue, 28 Mar 2006, pjakl wrote:
> >>
> >>
> >>
> >>> Hi guys,
> >>>
> >>> I have deployed latest development version 20060307 and tried to
> >>> simplify my config file using INSTANCE_NAME and if statement.
> >>> I wrote this to the config file and for that particular node it
> >>> didn't work:
> >>>
> >>> if named dataserver
> >>>    ofs.redirect target
> >>> else
> >>>    ofs.redirect remote
> >>> fi
> >>>
> >>> If I did use like this, it did work:
> >>>
> >>> ofs.redirect target if named dataserver
> >>> ofs.redirect remote if named redirector
> >>> ofs.redirect remote if named supervisor
> >>>
> >>> (dataserver,redirector,supervisor) are INSTANCE_NAMES which I am
> >>> setting
> >>> through command line argument -n.
> >>>
> >>> Do am I missing something ? like badly comprehend the if statement
> >>> syntax ?
> >>> Thank for any advice
> >>>
> >>> Pavel
> >>>
> >>>
> >>
> >
> >------------------------------------------------------------------------
> >
> >#   !!!Removing this file is punished by death !!!      #
> >#							#
> >#   This is a configuration file for XROOTD System      #
> >#							#
> >
> >	#				#
> >	#	XRD Daemon section	#
> >	#				#
> >
> ># it specifies protocol and * means that library is statically linked with daemon
> >xrd.protocol xrootd *
> >
> ># it specifies xrd port (in future will be 1094 for manager and any for dataservers)
> >xrd.port 1095
> >
> ># it specifies level of debuging
> ># --> normal mode
> ># xrd.trace all -debug -sched -poll -mem
> ># xrootd.trace all -debug -stall -mem
> ># --> debug mode, 2005/12
> >xrd.trace conn net
> >xrootd.trace login
> >
> >	#				#
> >	#    	 XROOTD Section		#
> >	#				#
> >
> ># here is loading the extended file system support for xrootd
> >xrootd.fslib /star/u/starlib/ROOT/xrootd/lib/libXrdOfs.so
> >
> >#here is loading support of authentication
> >xrootd.seclib /star/u/starlib/ROOT/xrootd/lib/libXrdSec.so
> >
> ># specify a valid path prefix to file requests
> >xrootd.export /data0
> >xrootd.export /data1
> >xrootd.export /data2
> >xrootd.export /data3
> >xrootd.export /home
> >
> >	#				#
> >	#	  OLB Section		#
> >	#				#
> >
> ># Restriction for hosts that subscribe to the olbd manager
> >olb.allow host rcas*.rcf.bnl.gov
> >
> ># Designate the port number to use for incoming requests from client (this is mandatory directive)
> >olb.port 3121
> >
> ># Specify how load is computed and reported.
> >olb.perf int 5m pgm /star/u/starlib/ROOT/xrootd/utils/XrdOlbMonPerf.pl 300
> >
> ># Specify the parameters for the load balancing scheduling algorithm
> >olb.sched cpu 20 io 40 mem 0 pag 10 runq 30 fuzz 10 refreset 43200
> >
> ># Specify how server are selected for file creation
> >olb.space linger 5 500m 100m
> >
> >
> ># Designate paths handle by server (r - read, s will be staging)
> >
> >olb.path r /data0
> >olb.path r /data1
> >olb.path r /data2
> >olb.path r /data3
> >olb.path r /home
> ># with s stage all files from HPSS that aren't on distributed disk
> >#olb.path rs /home
> >
> >#Setup Manage Procesing latency
> >#@see documentation
> >
> >olb.delay discard 5 drop 10s full 5 lookup 1  overload *
> >olb.delay servers 90% service 60 startup 90 suspend 30
> >
> >
> >#Set the time file existence information is to be cached in memory
> >#For testing ....
> >#olb.fxhold 60s
> >
> ># Tell server olbd's the location of the manager
> >olb.subscribe xrdstar.rcf.bnl.gov 3121
> >
> ># Indecate the role this server will have based on host name (default is server)
> >olb.role manager if named redirector
> >olb.role server if named dataserver
> >olb.role supervisor if named supervisor
> >
> >
> >#Tell the odc component the location of the manager
> >odc.manager xrdstar.rcf.bnl.gov 3121
> >
> ># Tell level of event loging
> >odc.trace all -debug
> >olb.trace all -debug
> >
> >	#				#
> >	#    	OFS and OSS Section	#
> >	#				#
> >
> >#
> ># Set redirect option using instance name (Supervisor must have both options)
> >#
> >ofs.redirect target if named dataserver
> >ofs.redirect remote if named redirector
> >ofs.redirect remote if named supervisor
> >ofs.redirect target if named supervisor
> >
> ># Restrict access to files only for operation read
> >oss.readonly
> >
> ># Tell level of loging
> >ofs.trace all -debug -aio -read -readdir -write
> >oss.trace all -debug
> >
> ># Control the way a disk cache partition is selected for file placement
> >oss.alloc * * 80
> >
> ># Control file descriptor's allocating
> >oss.fdlimit * max
> >
> ># Specify whether or not to check that a file exists in HPSS
> >oss.check
> >
> ># Specify command to obtain data from HPSS
> >oss.mssgwcmd /star/u/starlib/ROOT/xrootd/utils/hpss_talk.pl
> >oss.stagecmd /star/u/starlib/ROOT/xrootd/utils/mps_Stage -F -c /star/u/starlib/ROOT/xrootd/config/configuration.cfg
> >
> ># Restrict access to files only for operation read
> >oss.readonly
> >
> ># Specify processing options for any entry matching the specified path prefix
> >oss.path /data0
> >oss.path /data1
> >oss.path /data2
> >oss.path /data3
> >oss.path /home
> >oss.localroot /home/starlib
> >
> ># Specify the location of a disk cache partition
> ># PJ: Only wildcard would work here. Individual drive would not and crash
> >#     xrootd.
> >oss.cache rhstar /data*
> >
> ># number of threads, for beginning take defaults
> >oss.xfr 6 * 15 0
> >
> >	#				#
> >	#	  MPS section		#
> >	#				#
> >
> ># Where error message go via mail, choose some user
> >mps.adminuser starlib
> >
> ># Specify path where will be placed symlinks
> >mps.scan /home
> >
> ># set level of debuging for all components (4 -additionally records internal debugging information)
> >mps.debug 4
> >
> ># is the name of the file that is to hold error information
> >mps.errlogfn /star/data08/logerr
> >
> ># specify command for bringing the files from hpss
> >mps.stage.xfrcmd /star/u/starlib/ROOT/xrootd/utils/hpss_stage.pl %sfn %tfn
> >
> ># specify names of log files for every components of MPS separately
> >mps.stage.logfn /star/data08/stage_log
> >
> ># Set the number of times a failing data transfer operation may be retried.
> >mps.stage.max_retry 2
> >
> >#is the name or number of the Unix group that is to be used for newly created files
> >mps.stage.cpgroup rhstar
> >
> >#is the command to be used to communicate with the Mass Storage System.
> >mps.stage.msscmd /star/u/starlib/ROOT/xrootd/utils/hpss_talk.pl
> >
> >#the command to issue in order to obtain free space information about a file system.
> >mps.stage._fs_stat /star/u/starlib/ROOT/xrootd/utils/fs_stat
> >
> ># enable security only one nodes that holds data
> >if named dataserver
> >sec.protocol /star/u/starlib/ROOT/xrootd/lib pwd -a:0
> >fi
> >
>
>