Print

Print


Hello Jerome

I am just trying something out related to your setup
but run into some trouble. Anyhow, I will answer the
previous Email soon.

Cheers,
  Wilko


On Fri, 15 Jul 2005, Jerome LAURET wrote:

>
> 	It does (more or less), thank you.
>
> 	But if you could also answer the previous Email/post,
> it would be great.
>
> 	Thanks,
>
> Wilko Kroeger wrote:
> > Hello Pavel
> >
> > On Fri, 15 Jul 2005, Pavel Jakl wrote:
> >
> >
> >>Hello again,
> >>
> >>	In the MPS manual and mps_* scripts, there are things like
> >>
> >>$Config{xfrcmd}    = ($isMPS ? '/opt/xrootd/utils/xfrcmd'
> >>                             : '/usr/etc/ooss/pftp_client');
> >>
> >>  and similar switch for port, nodes, account name ... while both
> >>seem to accept ftp-like commands. Could you please explain what
> >>was the philosophy of having separate commands for oss/mps (but
> >>using the same scripts) and why different port/nodes ?? This is
> >>not entirely clear to us ...
> >
> >
> > The ooss scripts are used at SLAC to manage the cache files systems.
> > The mps scripts evolved out of the ooss scripts and they are kept
> > backwards compatible, meaning that they would work with the ooss scripts
> > installed in /usr/etc/ooss. The $isMPS basically decides if the MPS
> > scripts that come with xrootd are used or the ooss scripts (installed in
> > /usr/etc/ooss). This allows site that have ooss installed (like SLAC) to
> > use the mps scripts.
> >
> >
> >>	Since stagecmd for oss is pftp and mps stagecmd is
> >>xfrcmd, it makes us puzzled as per what xfrcmd does in addition
> >>of pftp. This does not appear to be explained in the documentation.
> >
> >
> > The  '/opt/xrootd/utils/xfrcmd' should do the same thing that
> > '/usr/etc/ooss/pftp_client' does for HPSS.
> > Different sites use different MSS systems and even if they use the same
> > system the access methods could be different. Therefore the mps scripts were
> > written so that an xrootd site can provide their own implementation for
> > mss access without modifying the mps scripts. If you are using pftp to access
> > HPSS you could just call it from within /opt/xrootd/utils/xfrcmd.
> >
> > I hope this clarified your issues a littele bit.
> >
> > Cheers,
> >   Wilko
> >
> >
> >>
> >>Jerome & Pavel
> >>
> >>
> >>On Thu, 14 Jul 2005 20:50:39 -0400
> >>Jerome LAURET <[log in to unmask]> wrote:
> >>
> >>
> >>>	Hello Wilko (possibly Andy),
> >>>
> >>>	Thanks already for your many answers which clarifies
> >>>things quite a lot but we are not entirely sure of some details.
> >>>What we are trying to do is the following (re-explained from
> >>>the start, it may not be possible but ..)
> >>>
> >>>- first, we already have files located as (no typo, note
> >>>   the path "massage" here)
> >>>
> >>>   /data?/starlib/reco/productionHigh/FullField/P04ik/2004/f1.root
> >>>
> >>>   where ? stands for any number between 0 and 3. Each file
> >>>   correspond to its initial source (and continuing with our
> >>>   example)
> >>>
> >>>   /home/starreco/reco/productionHigh/FullField/P04ik/2004/f1.root
> >>>
> >>>   so, intrinsically, /data*/starlib/reco/... is equivalent to
> >>>   /home/starreco/reco/... (different PFN, same LFN and in our
> >>>   scheme, the path is slightly modified to fall back on our
> >>>   feet PFN -> LFN)
> >>>
> >>>
> >>>- Our application takes advantage of already catalogued
> >>>   PFN. We would like to do a smooth transition as there is
> >>>   about 50+ TB of data already placed ... We nicely access
> >>>   the files using rootd referencing the files as
> >>>root://node//data1/starlib/reco/productionHigh/FullField/P04ik/2004/f1.root
> >>>   as the files are a-piori known
> >>>
> >>>
> >>>- Xrootd saves us a lot of course, for example, being able
> >>>   to reduce the name space to ONLY
> >>>root://redirector//home/starreco/reco/productionHigh/FullField/P04ik/2004/f1.root
> >>>
> >>>   as if we are accessing HPSS files while Xrootd handles it
> >>>   would be reat. BUT we also would like to be able to access
> >>>   the files the usual-current way i.e. within a syntax
> >>>   indicating //node/data1.
> >>>
> >>>- For this to happen, Xrootd would need to understand BOTH
> >>>   /home/starreco/reco using /data* as cache (for example i.e. MPS)
> >>>   AND also be able to access /data*/starlib/reco in direct
> >>>   access mode
> >>>
> >>>   If so, several questions comes to mind
> >>>
> >>>   /home/starreco would be populated with soft-links to files named
> >>>   /data?/%home%starreco%... which shares the space with the files
> >>>   already there.
> >>>
> >>>   * Will Xrootd be happy with that ??? [a priori, why not]
> >>>     Seems like a possible space management nightmare to me
> >>>     (shared space)
> >>>
> >>>   * What happen if in the /home/starreco/reco tree (local not
> >>>     HPSS) a soft-link is accidentely removed ?? Is it re-created ??
> >>>
> >>>   * I assume the %XX%YY% files are managed i.e. deleted along
> >>>     the line of a policy. But folowing the above question, what
> >>>     happens if a file has disappeared but tyhe soft-link remains ??
> >>>     Is Xrootd smart enough to find it and re-stage ??
> >>>
> >>>   * Are a lot of flat files in an identical /data?/ (i.e. files
> >>>     of the form %XX%YY% into a single dir) is read efficient ??
> >>>     Imagine that we get several 10k files in a single directory,
> >>>     will that cause a performance impact of some sort (directory
> >>>     lookup or otherwise) ??
> >>>
> >>>   * By the way, does "readonly" have the meaning of 'cannot open
> >>>     a new file' or really readonly (which terminology seems to
> >>>     be incompatible with writting files into /data*). I assume
> >>>     the former.
> >>>
> >>>
> >>>   * Now for a controversial question. stagecmd command accepts
> >>>     in one of its form two arguments:
> >>>        HPSSPathAsInput  localPath
> >>>     If localPath was only a "suggested path" and stagecmd would
> >>>     RETURN to Xrootd (as sstring) its final file placement,
> >>>     we could implement our own space management mechanism and
> >>>     policy. I can understand this not an item for the wish list
> >>>     but this WOULD have resolved our funny disk mapping and
> >>>     namespace issue [what it would not do is name space reduction
> >>>     at the end to a single namespace but that is another story].
> >>>     Comments ??
> >>>
> >>>- And Pavel would like to know if someone has an example of the
> >>>   /opt/xrootd/utils/xfrcmd script (to be sent to list or privately).
> >>>
> >>>
> >>>	Thanks & cheers,
> >>>
> >>>
> >>>Wilko Kroeger wrote:
> >>>
> >>>>Hello Pavel
> >>>>
> >>>>Let me try to answer your questions.
> >>>>
> >>>>1) The stage command 'stagecmd':
> >>>>
> >>>>If a file is not on disk xrootd tries to stage the file onto disk. It
> >>>>calls the stagecmd with two arguments:
> >>>>   stagecmd <remoteFileName> <localFileName>
> >>>>where remoteFileName is the name in HPSS and localFileName is the one on
> >>>>disk. Xrootd forms these names from the file name provide by the client
> >>>>and the two prefixes oss.remoteroot and oss.localroot
> >>>>For example:
> >>>>the xrootd config file contains
> >>>>oss.remoteroot /fr
> >>>>oss.localroot  /fl
> >>>>a client requests a file like:
> >>>>    xrdcp root://dataserver//my/test.file  test.file
> >>>>in this case the stage command is called:
> >>>>  stagecmd  /fr/my/test.file  /fl/my/test.file
> >>>>
> >>>>If oss.remoteroot and oss.localroot are not specified the arguments to the
> >>>>stagecmd is just the file name specified by the client.
> >>>>
> >>>>As you can see the files will always be staged into the same disk if you
> >>>>use the oss.localroot. If you have more then one disk on an xrootd server
> >>>>you want to use the cache system and a stagecmd that is aware of the cache
> >>>>system.
> >>>>
> >>>>The xrootd actually comes with a cache aware stage command. You can find
> >>>>it in the utils directory of an xrootd release it is called mps_Stage.
> >>>>I haven't used it myself but I will find out how to use it.
> >>>>The utils dir contains a few mps_XXX utils that are used to manage a cache
> >>>>system. On the xrootd web site there is a document that describes the mps
> >>>>system: http://xrootd.slac.stanford.edu/doc/mps_config/mps_config.htm
> >>>>
> >>>>
> >>>>2) The cache file system:
> >>>>
> >>>>A file that is staged into a cache file system is physically put in any of
> >>>>the specified caches and a link between this files and the proper file
> >>>>name is created. For example:
> >>>>
> >>>>Lets assume you have the following file:
> >>>> /home/starreco/reco/productionHigh/FullField/P04ik/2004/f1.root
> >>>>and it is in the cache /data3:
> >>>>
> >>>>
> >>>>
> >>>>>ls -l /home/starreco/reco/productionHigh/FullField/P04ik/2004/f1.root
> >>>>
> >>>>would show:
> >>>>/home/starreco/reco/productionHigh/FullField/P04ik/2004/f1.root ->
> >>>> /data3/%home%starreco%reco%productionHigh%FullField%P04ik%2004%f1.root
> >>>>
> >>>>As I mentioned above, if you want to use a cache system the stagecmd
> >>>>has to be aware of it.
> >>>>
> >>>>3) Your setup:
> >>>>
> >>>>In the configuration that you described below you export all the cache
> >>>>system (/dataN) due to the olbd.path and thats maybe something you don't
> >>>>want to do. This also means the client has to access files with the
> >>>>name /data3/home/...  making your system setup visible to the client.
> >>>>
> >>>>Instead, it seems to me you that would like to make files with the name
> >>>>'/home/....' accessible to users but on the xrootd server these files are
> >>>>stored in /dataN/... .
> >>>>
> >>>>You could configure your system  with:
> >>>>
> >>>>oss.path /home  dread nomig stage
> >>>>
> >>>>oss.cache /data*
> >>>>
> >>>>xrootd.export /home
> >>>>
> >>>>You also have to specify the stagecmd and the mssgwd command. The stage
> >>>>command you obviously need in order to get a file out of HPSS, and the
> >>>>mssgwd command is needed because xrootd first checks if a file is present
> >>>>in HPSS. If you don't want xrootd to do this you could provide a
> >>>>implementation that returns dummy data.
> >>>>I could provide you with a little dummy script that implements some of the
> >>>>mssgwd commands.
> >>>>
> >>>>
> >>>>I don't now why all your path are migratable (mig). I suspect that one of
> >>>>the options forces to turn on mig but I don't know which one. I have to
> >>>>look into this.
> >>>>
> >>>>
> >>>>The
> >>>>oss.path / .....
> >>>>is always there by default.
> >>>>
> >>>>I hope I clarified some of your questions. Let me know if not.
> >>>>
> >>>>Cheers,
> >>>>   Wilko
> >>>>
> >>>>
> >>>>
> >>>>On Wed, 13 Jul 2005, Pavel Jakl wrote:
> >>>>
> >>>>
> >>>>
> >>>>>Hi Wilko,
> >>>>>
> >>>>>many thanks for advice. With directive oss.check client is redirected to
> >>>>>other node and staging of requested file is started.
> >>>>>I have some other questions, if you can help me, it will be super.
> >>>>>
> >>>>>I want to stage a file from HPSS for example with path like:
> >>>>>/home/starreco/reco/productionHigh/FullField/P04ik/2004/040/st_physics_
> >>>>>5040131_raw_2010003.MuDst.root
> >>>>>
> >>>>>and copy to path /data0 or /data1 or /data2 or /data3 which I've
> >>>>>specified with directives:
> >>>>>
> >>>>>oss.path /data0 dread nomig stage
> >>>>>oss.path /data1 dread nomig stage
> >>>>>oss.path /data2 dread nomig stage
> >>>>>oss.path /data3 dread nomig stage
> >>>>>
> >>>>>My question is if my thoughts are right and file with HPPS path:
> >>>>>
> >>>>>/home/starreco/reco/productionHigh/FullField/P04ik/2004/040/st_physics_
> >>>>>5040131_raw_2010003.MuDst.root
> >>>>>
> >>>>>will be staged to local path:
> >>>>>
> >>>>>/data0/home/starreco/reco/productionHigh/FullField/P04ik/2004/040/st_ph
> >>>>>ysics_5040131_raw_2010003.MuDst.root
> >>>>>i.e that /data0 is path to ve pre-pended to local path. Or is there some
> >>>>>other directive, which can help me to do that ?
> >>>>>
> >>>>>My second question is if I need to have specified oss.mssgwcmd command
> >>>>>when I don't plan to migrate any files from local disk to HPSS ?
> >>>>>
> >>>>>The third question is about oss.cache directive. Can I have the location
> >>>>>of cache in the same directory as I have the files to export ?
> >>>>>For example, I have all files in directories:
> >>>>>/data0, /data1, /data2 or /data3 (i export with directive xrootd.export)
> >>>>>and can I have a oss.cache /data*.
> >>>>>
> >>>>>My fourth problem is with oss.path again, I've specified this:
> >>>>>oss.path /data0 dread nomig stage
> >>>>>oss.path /data1 dread nomig stage
> >>>>>oss.path /data2 dread nomig stage
> >>>>>oss.path /data3 dread nomig stage
> >>>>>
> >>>>>but in log file is this:
> >>>>>oss.path /data3 r/o  check dread mig nomkeep nomlock nommap norcreate
> >>>>>stage
> >>>>>oss.path /data2 r/o  check dread mig nomkeep nomlock nommap norcreate
> >>>>>stage
> >>>>>oss.path /data1 r/o  check dread mig nomkeep nomlock nommap norcreate
> >>>>>stage
> >>>>>oss.path /data0 r/o  check dread mig nomkeep nomlock nommap norcreate
> >>>>>stage
> >>>>>
> >>>>>as you can see with mig directive and in addation is here a line:
> >>>>>
> >>>>>oss.path / r/o  check dread mig nomkeep nomlock nommap norcreate stage
> >>>>>
> >>>>>Is this correct ? Becaouse I dont want to stage any files to path /. (Or
> >>>>>is needed due to that / is parent directory ?)
> >>>>>
> >>>>>Thank you
> >>>>>Pavel
> >>>>>
> >>>>>On Tue, 12 Jul 2005 20:46:20 -0700 (PDT)
> >>>>>Wilko Kroeger <[log in to unmask]> wrote:
> >>>>>
> >>>>>
> >>>>>
> >>>>>>Hello Pavel
> >>>>>>
> >>>>>>I suspect that this is a problem with the mss configuration. In the
> >>>>>>dev. version the mss command is ignored if the path is only stage-able
> >>>>>>and  nodread, nocheck, nomig are specified.
> >>>>>>Do you see in the xrdlog file the line
> >>>>>> mssgwcmd ignored; no MSS paths present.
> >>>>>
> >>>>>>from the xrootd startup ?
> >>>>>
> >>>>>>If this is the case you could add
> >>>>>>oss.check
> >>>>>>to your config which should cause xrootd to use the mssgwcmd command.
> >>>>>>(oss.dread ot oss.rcreate should also do the trick). But if you
> >>>>>>specify any of these options xrootd will behave a little bit different
> >>>>>
> >>>>>>from how it is configured now.
> >>>>>
> >>>>>>The problem has been fixed in CVS and will be in the next release.
> >>>>>>
> >>>>>>
> >>>>>>Cheers,
> >>>>>>  Wilko
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>On Tue, 12 Jul 2005, Pavel Jakl wrote:
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>Hi for some time,
> >>>>>>>
> >>>>>>>Firstly, we've installed the latest development version of xrootd on
> >>>>>>>100 nodes (1 redirector + 1 supervisor + 98 dataservers) with the
> >>>>>>>support of open load balancing and everything is working great and
> >>>>>>>super. I would like to say, brilliant work.
> >>>>>>>
> >>>>>>>To my problem, I want to enable the MSS interface. We've implemented
> >>>>>>>scripts for performing meta-data operations and staging files from
> >>>>>>>HPSS. (directives oss.mssgwcmd, oss.stagecmd). I 've inserted
> >>>>>>>everything in config file for dataserver and tried to obtain a file
> >>>>>>
> >>>>>>>from HPSS. In redirector log I found this error message:
> >>>>>>
> >>>>>>>050712 19:35:48 18366 odc_Locate: starlib.10447:13@rcas6230 given
> >>>>>>>error msg 'No servers are available to read the file.' by xrdstar
> >>>>>>>path=/home/starreco/reco/productionHigh/FullField/P04ik/2004/040/s
> >>>>>>>t_physics_5040131_raw_2010003.MuDst.root
> >>>>>>>
> >>>>>>>and found out that scripts was not even called once time. (this I
> >>>>>>>know from debug support of my script). My question is, if I have
> >>>>>>>something wrong in my configuration file or I forgot something to
> >>>>>>>add or I skiped something in reading of documentation.
> >>>>>>>
> >>>>>>>I am enclosing a configuration file for dataserver.
> >>>>>>>
> >>>>>>>Thank you for any advice
> >>>>>>>Pavel
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>
> >>>--
> >>>              ,,,,,
> >>>             ( o o )
> >>>          --m---U---m--
> >>>              Jerome
> >>
>
> --
>               ,,,,,
>              ( o o )
>           --m---U---m--
>               Jerome
>