in reply to Re^2: Fcntl() and multiple filehandles
in thread Fcntl() and multiple filehandles
So in this case I need several differnt scripts to all adhere to the same locks.The behavior you complained about was that when the same process read-locked a file multiple times then unlocked it, all it was unlocked instead of decrementing a lock counter. Solving that problem doesn't require that the different scripts use the same lock discipline.
So does the whole file locking over NFS problem boil down to NFS being poorly designed (or at least being poorly designed for use by more than one client at a time) then?I don't think it's fair to say it's a problem; you just have to use fcntl-locking, which is a POSIX standard. AFAIK, that's always been the case for portable programs, although flock over NFS may have worked on previous versions of RedHat. It's straightforward to implement your own lock-counting code if you want that behavior, and if you think it's useful clean it up and put it on CPAN.
I don't see any documentation of the lock-counting behavior you describe in the flock(2) manpage. Are you sure you weren't relying on undefined behavior all along?
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: Fcntl() and multiple filehandles
by Anonymous Monk on Sep 21, 2004 at 11:26 UTC | |
by Anonymous Monk on Sep 21, 2004 at 12:52 UTC | |
by sgifford (Prior) on Sep 21, 2004 at 20:46 UTC |