In summary: to make ccache work safely on an NFS filesystem, the
filesystem must be exported with no_subtree_check.  Otherwise data can
be lost when it renames recently-written files. :-(



----------------------
Begin forwarded message:

Date: 27 Aug 2003 21:37:38 -0400
From: Trond Myklebust <trond.mykleb...@fys.uio.no>
To: Martin Pool <m...@sourcefrog.net>
Cc: n...@lists.sourceforge.net
Subject: Re: [NFS] nfs/mmap/rename file corruption


>>>>> " " == Martin Pool <m...@sourcefrog.net> writes:

     > - ccache runs distcc with output to a temporary file
     >  - distcc opens, mmaps, writes to, munmaps, and closes the
temporary     >    file
     > - distcc exits
     >  - ccache renames the temporary file to its proper location in
the     >    ccache
     > - ccache opens the file read only, and reads from it

Is this a rename from one directory to the other? If so, are you using
the 'no_subtree_check' option on the server? Without the latter option
enabled, I would indeed expect the behaviour that you describe.

Cheers,
  Trond


-- 
Martin 

Reply via email to