Path: utzoo!attcan!uunet!tut.cis.ohio-state.edu!pt.cs.cmu.edu!o.gp.cs.cmu.edu!andrew.cmu.edu!ddp+ From: ddp+@andrew.cmu.edu (Drew Daniel Perkins) Newsgroups: comp.protocols.nfs Subject: Re: NFS writes and fsync(). Message-ID: Date: 25 Oct 90 04:17:43 GMT References: <1990Oct9.152612@objy.objy.com> <1990Oct16.004225.22754@wrl.dec.com>, <143972@sun.Eng.Sun.COM> Organization: Information Technology Center, Carnegie Mellon, Pittsburgh, PA Lines: 36 In-Reply-To: <143972@sun.Eng.Sun.COM> > Excerpts from netnews.comp.protocols.nfs: 20-Oct-90 Re: NFS writes and > fsync(). Brian Pawlowski@ennoyab. (11773) > > One of the problems with NFS is that it manages to tangle up several > > different issues, which makes it hard to solve one without breaking > > something else. > Perhaps because the issues are related. Sprite cache strategies > consider data consistency issues, as does AFS 4.0, because > aggressive cache coherency strategies must make concessions > to data consistency (cooperation amongst clients). One area it definitely tangled up was transport vs. session protocol layering. I'm particularly referring to mixing "I acknowledge receipt of your data" (a transport function) with "here are the results of your request" (arguably a session function). Retransmissions shouldn't occur because a request simply hasn't finished yet. If these issues weren't tangled, then one function of the Chet cache (tossing out requests which are already in progress) wouldn't have been necessary. > In the normal case, I/O is handled asynchronously subject to > the normal update syncs. I would not consider this synchronous to the > application! There are cases in NFS when I/O is synchronous (to the > application), however: > - Any time an fsync is done by the application > - For the remaining life of the file descriptor once a lock > has been applied to it (even if all locks are then cleared) You do mention it later, but I believe that "Any time a close is done by the application" is an important enough case of synchronous application behaviour that it should be elevated in importance and mentioned here. Drew