gluster-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gluster-devel] Problems with flock functionality with fuse-2.7.0-gl


From: Harris Landgarten
Subject: Re: [Gluster-devel] Problems with flock functionality with fuse-2.7.0-gls3 and tls 450
Date: Fri, 10 Aug 2007 16:11:59 -0400 (EDT)

Kevan,

There is a typo in my email it should read

$ ruby ./testlock.rb /mnt/glusterfs/test/testfile 60

When another instance was started:

$ ruby ./testlock.rb /mnt/glusterfs/test/testfile
opening /mnt/glusterfs/test/testfile and locking
./testlock.rb:6:in `initialize': No such file or directory - 
/mnt/glusterfs/test/testfile (Errno::ENOENT)
        from ./testlock.rb:6:in `open'
        from ./testlock.rb:6:in `open_locked'
        from ./testlock.rb:24

The script attempts to open a file in "w" mode and get a LOCK_EX on it before 
writing. Therefore it either creates or recreates the file. The second instance 
should block until the LOCK_UN is requested by the first instance. It instead 
reports ENOENT. Rerunning the second instance once the first instance releases 
the lock succeeds with another LOCK_EX being granted. BTW, you must be running 
fuse-2.7.0-gls3 and recompile glusterfs with the libfuse.so from that for this 
the work because flock support was just added by the Gluster team. Stock fuse 
does not support flock yet.

Harris

----- Original Message -----
From: "Kevan Benson" <address@hidden>
To: address@hidden
Cc: "Harris Landgarten" <address@hidden>
Sent: Friday, August 10, 2007 2:30:37 PM (GMT-0500) America/New_York
Subject: Re: [Gluster-devel] Problems with flock functionality with 
fuse-2.7.0-gls3 and tls 450

On Thursday 09 August 2007 19:13, Harris Landgarten wrote:
> $ ruby ./testlock.rb /mnt/glusterfs/testfile 60
>
> When another instance was started:
>
> $ ruby ./testlock.rb /mnt/glusterfs/test/testfile
> opening /mnt/glusterfs/test/testfile and locking
> ./testlock.rb:6:in `initialize': No such file or directory -
> /mnt/glusterfs/test/testfile (Errno::ENOENT) from ./testlock.rb:6:in `open'
>         from ./testlock.rb:6:in `open_locked'
>         from ./testlock.rb:24
>
> Glusterfs is reporting the LOCK_EX file as ENOENT when another LOCK_EX is
> requested instead of blocking.

Actually, I think you had a typo in the path.  Instance 1 was 
on /mnt/glusterfs/testfile and instance 2 was 
on /mnt/glusterfs/test/testfile, which if it didn't exuist would result in 
the error "No such file or directory" which you got.

-- 
- Kevan Benson
- A-1 Networks





reply via email to

[Prev in Thread] Current Thread [Next in Thread]