From owner-freebsd-hackers Sun Aug 20 21:29:30 1995 Return-Path: hackers-owner Received: (from majordom@localhost) by freefall.FreeBSD.org (8.6.11/8.6.6) id VAA13144 for hackers-outgoing; Sun, 20 Aug 1995 21:29:30 -0700 Received: from simon.chi.il.us (simon.chi.il.us [199.245.227.17]) by freefall.FreeBSD.org (8.6.11/8.6.6) with SMTP id VAA13124 for ; Sun, 20 Aug 1995 21:29:23 -0700 Received: by simon.chi.il.us (Smail3.1.29.1 #3) id m0skOUl-0006IIC; Sun, 20 Aug 95 23:29 CDT Message-Id: Date: Sun, 20 Aug 95 23:29 CDT From: steve@simon.chi.il.us (Steven E. Piette) To: nate@rocky.sri.MT.net Subject: Re: Making a FreeBSD NFS server Cc: terry@cs.weber.edu, freebsd-hackers@freebsd.org Sender: hackers-owner@freebsd.org Precedence: bulk > From rocky.sri.MT.net!nate Sun Aug 20 14:58:22 1995 > Date: Sun, 20 Aug 1995 12:02:14 -0600 > From: Nate Williams > To: steve@simon.chi.il.us (Steven E. Piette) > Cc: terry@cs.weber.edu, freebsd-hackers@freebsd.org > Subject: Re: Making a FreeBSD NFS server > Content-Length: 2228 > > Steven E. Piette writes: > [ Speeding up NFS writes ] > Terry > You can turn on async writes in the BSD NFS server. > > Terry> Be warned that, though Sun and SVR4 do this too, this is a cache > Terry> coherency violation and can result in Bad Things Happening in case > Terry> of a server power failure or other failure that results in the > Terry> server going down, then coming back up while the app on a client > Terry> is still running. This is because the client will think the data > Terry> was written and may depend on being able to retrieve it later > Terry> (ie: a database index). > > > Steve> Terry, Do you bother checking your references before you make blanket > Steve> statements or do you like to just wing it? Do you bother checking them > Steve> after someone points out your errors? > > Huh? What Terry said above is correct. With async writes, the server > effectively tells the client is that the data has been written (when in > fact it really hasn't been). In the case of a power failure that occurs > after the server has informed the client, but *before* the data has > actually been written you have big problems. > > > Nate > Thanks Nate, First, my message slipped out be accident. I was sending a bunch of messages and I sent it instead of deleting my initial thoughts about his mail. My apologies to Terry, for letting my initial reactions become public. I usually start a reply and continue reading mail for additional responses before sending it out. In this case I sent out something I was going to let slide. I know all about Async writes, prestoserve, and UPS's. I have to explain them to customers on almost regular basis. My issue was with Terry's assertion that Async writes was part of the SVID and that Sun's and SVR4 machines do this this by default. Or at least that's what I thought he was saying, because he's said that before, and it's plainly wrong. In all fairness to Terry, what he said was: TL > The SGI, being SVR4 based, is doing async writes on the server by TL > default. The BSD box is waiting for the write to be comitted to TL > the server disk before continuing. TL > TL > You can turn on async writes in the BSD NFS server. TL > TL > Be warned that, though Sun and SVR4 do this too, this is a cache TL > coherency violation and can result in Bad Things Happening in case TL > of a server power failure or other failure that results in the TL > server going down, then coming back up while the app on a client TL > is still running. This is because the client will think the data TL > was written and may depend on being able to retrieve it later TL > (ie: a database index). He's correct about the behaviour and the problems it creates. I might have misinterpreting his comment to "Be warned that, though Sun and SVR4 do this too" as meaning that they also use Async by default as opposed to meaning that You can turn on async writes in the BSD NFS server and Sun's and SVR4 machines as well. The former is incorrect, the latter is accurate. Since I'm not sure what he was tring to say, I again apologise for biting Terry's head off.... Steve