>When a file is "_a completely new file_" it's visible on other clients and
>hence they can write to it as well. Creating a file and writing to it is not
>an atomic operation.
But this is not the normal mode of operations! The normal way you
do things is write the file completely from one client when it's
a new file. I understand that it's not atomic, but you're really
throwing the baby out with the bathwater here. And it's not like
the designers of AFS didn't realize this would be a problem; they
even put comments in the source code saying that the case of writing
a new file they wouldn't do the read RPCs.
In my original mail about this in December, I showed how more than
half of the wall clock time of writing a large file (anything more
than a couple hundred megabytes) is spent doing the read RPCs.
I really don't understand why cutting the write performance in
half is necessary to satisfy what is obviously a corner case.
--Ken