Kevan, It took a while to reproduce this bug. This happens once in a while and is not consistantly reproducible in our setup. We are working on fixing this. It does not seem to be happening on every listing while writing to a locked file. thanks for reporting! avati On 9/25/07, Kevan Benson <kbenson@xxxxxxxxxxxxxxx> wrote: > > > 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 > > . > > > > > > _______________________________________________ > Gluster-devel mailing list > Gluster-devel@xxxxxxxxxx > http://lists.nongnu.org/mailman/listinfo/gluster-devel > -- It always takes longer than you expect, even when you take into account Hofstadter's Law. -- Hofstadter's Law