Print

Print


Hi,

I am from Vanderbilt University trying to hook up the Vanderbilt/UT- 
Knoxville  L-Store/IBP storage backend to xrootd.

basically IBP is a bit-torrent like distributed data-storage system,  
LORS adds some file-system functionality analogous to inodes,  and  
the new Vanderbilt L-Store is an SRM complient meta-data layer on top  
of IBP.

I have been playing with the latest development version of xrootd  
downloadable from the web:
xrootd-20060523-1741.src.tgz

I initially want to do a very simple file streaming test  of a root  
file on ibp.  I'm not an expert on posix i/o but I think I need only
use my posix-complient methods:
   int fd = xio_open(my_uri, O_RDONLY);
and
   xio_read(fd, buffer, bufsize)

I need then 2 things from xrootd:
1. location of the posix i/o calls I should modify
ie.  where is an xrootd posix open() call I can replace with xio_open()
ie.  and then and xrootd posix  read() call I can replace with  
xio_read()
2. how do I launch xrootd to use my modified xrootd module
3. how do I use root to call this xrootd/ibp streamed file.

I've tested my lors/ibp libs with a simple c++ Hello IBP-world program.
And I can compile IBP libs into xrootd and get things like an xrootd  
init() call
to call xio_open() xio_read() and print out a hello-ibp message.

Now I just need the correct place in xrootd to put in my ibp io  
commands.

Eventually I'd like to make xrootd recognize a couple of protocols  
named:
lors://  and lstore://  but for now I can masquerade as some other  
protocol
and just set up an xrootd service that is hard-coded to only look  
into its IBP setup.

thanks for any suggestions on how to get the latest code and trying  
some things out,
Dan