Dear Phil,

I applied the patch, but it doesn't work for me when testing with a single
node (if this is a valid thing to do with a 2D stripe...)
Could you check that I got the fsetattr syntax correct, I'd hate for the
problem to be that! (...user error...)

Would it be possible for the fsetattr call to fail if the parameters are invalid?
e.g. setting
    $ setfattr -n "user.pvfs2.dist_params" -v "num_groups:3" _some_dir
would fail if you only have 2 or less server nodes, strip_size should always
be greater than zero etc...


$ mkdir twod_stripe/
$ setfattr -n "user.pvfs2.dist_name" -v "twod_stripe" twod_stripe
$ setfattr -n "user.pvfs2.dist_params" \
>  -v "strip_size:16384;num_groups:1;group_strip_factor:512" twod_stripe
$ cd twod_stripe/
$ dd if=/dev/urandom of=testfile bs=16k count=16
16+0 records in
16+0 records out
262144 bytes (262 kB) copied, 0.148667 seconds, 1.8 MB/s
$ ls -l testfile
-rw-r--r-- 1 tonykew ccrstaff 262144 Jul  1 12:48 testfile
$ pvfs2-viewdist -f testfile
dist_name = twod_stripe
dist_params:
num_groups:2,strip_size:65536,factor:256

Number of datafiles/servers = 1
Server 0 - tcp://ramones:3334, handle: 9223372036854775801 (7ffffffffffffff9.bstream)
$

  The server logfile contains (as before)

[...]
[E 07/01 12:45] logical_to_physical_offset: Invalid num_groups/server_ct options: gr:2 server:1 [E 07/01 12:45] next_mapped_offset: Invalid num_groups/server_ct options: gr:2 server:1 [E 07/01 12:45] logical_to_physical_offset: Invalid num_groups/server_ct options: gr:2 server:1 [E 07/01 12:45] next_mapped_offset: Invalid num_groups/server_ct options: gr:2 server:1
[...]

   If I set num_groups to 3 (just to test):

$ rm testfile
$ cd ..
$ setfattr -n "user.pvfs2.dist_params" -v "strip_size:16384;num_groups:3;group_strip_factor:512" twod_stripe
$ echo $?
0
$ cd twod_stripe/
$ dd if=/dev/urandom of=testfile bs=16k count=16
16+0 records in
16+0 records out
262144 bytes (262 kB) copied, 0.144843 seconds, 1.8 MB/s
$ ls -l testfile
-rw-r--r-- 1 tonykew ccrstaff 262144 Jul  1 12:48 testfile
$ pvfs2-viewdist -f testfile
dist_name = twod_stripe
dist_params:
num_groups:2,strip_size:65536,factor:256

Number of datafiles/servers = 1
Server 0 - tcp://ramones:3334, handle: 9223372036854775800 (7ffffffffffffff8.bstream)
$

server log file also (still) shows 2 groups:
[E 07/01 12:48] logical_to_physical_offset: Invalid num_groups/server_ct options: gr:2 server:1 [E 07/01 12:48] next_mapped_offset: Invalid num_groups/server_ct options: gr:2 server:1 [E 07/01 12:48] logical_to_physical_offset: Invalid num_groups/server_ct options: gr:2 server:1 [E 07/01 12:48] next_mapped_offset: Invalid num_groups/server_ct options: gr:2 server:1

Thanks,
Tony

Tony Kew
SAN Administrator
The Center for Computational Research
New York State Center of Excellence
in Bioinformatics & Life Sciences
701 Ellicott Street, Buffalo, NY 14203

CoE Office: (716) 881-8930           Fax: (716) 849-6656
CSE Office: (716) 645-3797 x2174
     Cell: (716) 560-0910          Home: (716) 874-2126

"I love deadlines, I love the whooshing noise they make as they go by."
                                                         Douglas Adams



Phil Carns wrote:
The twod_stripe problem that you describe sounds like the one that Kyle Schochenmaier found and fixed in this mailing list thread:

http://www.beowulf-underground.org/pipermail/pvfs2-developers/2008-June/004069.html

You can check by running pvfs2-viewdist -f <filename> on the file that you create with these parameters. If the num_groups shows up as 2 then you are hitting a bug that prevents the distribution from honoring that setting.

The attached patch should fix it if that's the case.

-Phil

[...]
_______________________________________________
Pvfs2-users mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-users

Reply via email to