NAME

Lustre::LFS::File - IO::File like module with lustre support

SYNOPSIS

use strict;
use Lustre::LFS::File;

my $fh = Lustre::LFS::File;
$fh->open("> some.file") or die;
print $fh "Hello World!\n";
my $stripes = $fh->get_stripe;
$fh->close;

DESCRIPTION

"Lustre::LFS::File" inherits from "IO::File" (which inherits from "IO::Handle"), so a Lustre::LFS::File reference can do everything that an "IO::File" ref could do.

CONSTRUCTOR

    See IO::File for details.

METHODS

get_stripe

Returns striping information about the opened file as reported by lfs getstripe --verbose. Returns undef on error.

lfs_create( [ARGS] )

Try to create a new file with non standard striping/pool settings. Valid key-value pairs are:

File     File that you would like to create
Size     Stripe size to use
Offset   OST Offset
Count    How many stripes the file shall use
Pool     Put file into a specific pool

Please note that you can not change the stripe settings of an existing file. This is a limitation/feature of lustre itself.

The function will return 1 if everything went well. In this case the file should also be opened on your current filehandle

join_objects(B_File)

Try to append B_File to your current filehandle. B_File can be a scalar (= path) or an IO::Handle object. Note that this function will always return 0 as it is not implemented yet. The reason for this is that lfs join simply does not work for me and i have no way to test this feature.

AUTHOR

Copyright (C) 2010, Adrian Ulrich <adrian.ulrich@id.ethz.ch>

SEE ALSO

Lustre::LFS, Lustre::LFS::Dir, IO::File, IO::Handle, Lustre::Info, http://www.lustre.org