Re: request-route

John Macdonald (jmm@ELEGANT.COM)
Thu, 31 Jul 1997 14:59:18 -0400

Kragen Sitaker wrote :
|| On Tue, 29 Jul 1997, John Macdonald wrote:
|| > Eric Bennett wrote :
|| > || On Tue, 29 Jul 1997, Zoltan Hidvegi wrote:
|| > || > lock files in a world-writable directory from a bourne-shell script.
|| > ||
|| > || I have done this by creating directories instead of files: only one mkdir
|| > || will complete.
|| >
|| > Nope, you;ve got it backwards. To begin, the same basic problem
|| > applies to both. If an operation succeeds, but the
|| > acknowledgement gets lost on the network, then the time-out
|| > cause a retry which will fail because the target item exists.
||
|| I believe that most implementations of NFS maintain a cache of the most
|| recent few non-idempotent operations (mkdir, rm, rmdir, etc.) and their
|| results; if the request is retried, the result is resent. Can someone who
|| has read the code confirm or deny this?

That could be, it's been over a decade since *I* last looked at
it.

The point remains that "ln" is no worse than "mkdir" - either
they both can be used directly or else "ln" can be made to work
in the face of false NAKs while "mkdir" cannot be so made.
There is no reason to prefer using "mkdir". If you are going to
have to deal many NFS implementations, some of which might be
old or buggy, then there is a reason to prefer "ln".

--
Perl's grammar can not be reduced to BNF. The work of | John Macdonald
parsing perl is distributed between yacc, the lexer,  |   jmm@elegant.com
smoke and mirrors.   - Chaim Frenkel                  |