On Mon, Sep 12, 2011 at 04:46:53PM +1000, George Barnett wrote:
> On 12/09/2011, at 3:59 PM, Florian Pflug wrote:
> 
> > If you really meant to say "intr" there (and not "nointr") then that 
> > probably explains the partial writes.
> > 
> > Still, I agree with Noah and Kevin that we ought to deal more gracefully 
> > with this, i.e. resubmit after a partial read() or write(). AFAICS there's 
> > nothing to be gained by not doing that, and the increase in code complexity 
> > should be negligible. If we do that, however, I believe we might as well 
> > handle EINTR correctly, even if SA_RESTART should prevent us from ever 
> > seeing that.
> 
> 
> Hi Florian,
> 
> You are indeed correct.  Setting nointr also resolves my issue.  I could 
> swear I checked this, but obviously not.
> 
> It does still concern me that pgsql did not deal with this as gracefully as 
> other software.  I hope the list will consider a patch to resolve that.
> 
> Thanks in advance,
> 
> George

Hi George,

Many, many, many other software packages expect I/O usage to be the same on
an NFS volume and a local disk volume, including Oracle. Coding every 
application,
or more likely mis-coding, to handle this gives every application another chance
to get it wrong. If the OS does this, when it gets it right, all of the apps get
it right. I think you should be surprised when other software actually deals 
with
broken I/O semantics gracefully rather than concerned when one of a pantheon of
programs does not. My two cents.

Regards,
Ken

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to