Can anyone corroborate or refute? It seems like a fairly major bug, I'd
be interested in whether anyone else can reproduce it or if it seems to
be limited to my testing.
It should be fairly easy to test. If you are using posix locks, try
listing a file as it's being written.
Kevan Benson wrote:
glusterfs 1.3.1 TLA 489 / Fuse 2.7.0 GLFS3
When writing a file from a client, an operation that does a listing on
that file from another client while the file is being written causes
the write operation to fail when the posix-locks feature is used.
I can replicate this with multiple config types, with AFR and Unify on
the server, or on the client, or in the simplest case, with absolutely
no special xlators besides posix-locks and a single server. Here's
the configs for that case:
Here's what it looks like:
# dd if=/dev/zero of=/mnt/glusterfs/testfile.10MB bs=1k count=10k
dd: writing `/mnt/glusterfs/testfile.10MB': Bad file descriptor
4006+0 records in
4005+0 records out
dd: closing output file `/mnt/glusterfs/testfile.10MB': Bad file
descriptor
On the other client I'm simply running this to cause the error:
# ls /mnt/glusterfs/
Here's the configs for the simplest case:
# server.vol
volume share
type storage/posix
option directory /exports/test
end-volume
volume brick
type features/posix-locks
subvolumes share
end-volume
volume server
type protocol/server
option transport-type tcp/server
option listen-port 6996
subvolumes brick
option auth.ip.brick.allow *
end-volume
volume trace
type debug/trace
subvolumes server
option debug on
end-volume
# client.vol
volume brick
type protocol/client
option transport-type tcp/client
option remote-host 172.16.1.81
option remote-port 6996
option remote-subvolume brick
end-volume
_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxx
http://lists.nongnu.org/mailman/listinfo/gluster-devel
.