*BSD News Article 41482


Return to BSD News archive

Newsgroups: comp.unix.bsd
Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!msunews!uwm.edu!vixen.cso.uiuc.edu!news.uoregon.edu!psgrain!library.ucla.edu!csulb.edu!csus.edu!netcom.com!bakul
From: bakul@netcom.com (Bakul Shah)
Subject: Re: Why select() returns ``exceptional'' for files?
Message-ID: <bakulD2wLz4.5Gn@netcom.com>
Organization: NETCOM On-line Communication Services (408 261-4700 guest)
References: <3fois1$5d5@shore.shore.net> <bakulD2ss6p.7M4@netcom.com> <3fuupi$ji8@nova.netapp.com> <bakulD2un2v.JDI@netcom.com> <3g15jb$rs2@nova.netapp.com>
Date: Tue, 24 Jan 1995 09:49:52 GMT
Lines: 38

guy@netapp.com (Guy Harris) writes:

>Bakul Shah <bakul@netcom.com> wrote:
>>Polling would not scale too well.  The `right' thing to do (IMHO
>>and ideally speaking) is to extend NFS.  On systems running
>>earlier versions one would not get the new benefits but so what.

>Which benefits?

>If you mean the benefits of being able to run applications using selects
>on exceptional conditions on files to block until the file changes, I

Yes, these benefits.

>suspect the effect of that would be that applications wouldn't use
>selects on exceptional conditions on files to block until the file
>changes, meaning that you wouldn't get those benefits even on *local*
>files.  I don't think that counts as a "so what" - i.e., I think you'd
>have to implement block-until-change on top of Boring Old NFS V2 Without
>The Extra Protocol and Boring Old NFS V3 Without The Extra Protocol,
>even if you don't want to do so.

Well, this is a problem any time new functionality is added to
an established protocol.  [It is a bit ironic that we see
newer/faster modem protocols every few months or so but the
`software' is getting harder and harder to change].

If you can implement this with an extra protocol for NFS V2 & NFS
V3, (using polling or whatever) that'd be great.  But even if you
can't make it interoperate with NFS V2/V3, I think this is worth
adding to NFS V4 or at least an experimental version (said he,
blissfully ignoring reality!).  I can sort of see a way to do
this with a wart-on-the-side protocol that'd work with NFS2/3 and
that does not use polling (if block-until-change is implemented
on both client and server) and with polling if exception on
change is not implemented on the server side.

Bakul Shah <bakul@netcom.com>