Print

Print


Hi Andy, 

> -----Original Message-----
> From: abh [mailto:[log in to unmask]] 
> Sent: 21 March 2005 21:02
> To: Brew, CAJ (Chris); [log in to unmask]
> Subject: Re: PreStaging with mps
> 
> Hi Chris,
> > --basedir/mps.basedir option is completely ignored in the 
> mps_PreStage
> > code and fixed it) but I cannot work out how one is suppose 
> to integrate
> > it with the xrootd/olbd system.
> Just send me the updated file and I'll integrate the changes.

Pretty basic just change line 279 from:

   $cmd = "$pstgcmd $rflag $Lflag $file $file 2>&1";

to:

   $cmd = "$pstgcmd $rflag $Lflag $file $basedir/$file 2>&1";


> > mps_prep seems to take completely different arguments to 
> mps_stage so we
> > cannot just drop that in as a replacement, more seriously 
> it returns as
> > soon as the file is placed in the stage queue not when the 
> file is on
> > disk. Do we need to write yet another wrapper script to 
> translate the
> > options and hold on until the file has appeared.
> Yes, you will since xrootd relies on the behaviour that 
> mps_prep will return 
> as soon as the request is in the queue. The actual queing for file 
> appearance is handled internally in xrootd. If mps_prep were 
> to wait, xrootd 
> would be seriously impacted. So, don't do that!

Ok I'm confused now. I need a wrapper script that translated the options
given by xrootd to those needed by mps_prep but I don't need to make it
wait until the file appears, right? How does xrootd then find out if the
stage fails for some reason? Does it just leave the client hanging on
for ever?
 
> > The MPS documentation suggest that the olbd interacts 
> directly with the
> > stage queue but doesn't give any details.
> The olbd uses the staging system to handle the "prepare" 
> request which 
> allows one to pre-stage file before they actually get used. See the 
> "olb.prep" directive.

Is this used by the normal babar access or is it an extra part of the
protocol that we currently don't use.

What I want to do is limit each data server to one or two concurrent
mass storage accesses. I've got the PreStage part of that set up so will
swapping a wrapper to mps_prep for mps_stage in the "oss.stagecmd"
directive just work?

Thanks,
Chris.