Re: EINTR error in SunOS

From: Doug Royer <Doug(at)Royer(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: EINTR error in SunOS
Date: 2006-01-02 01:59:08
Message-ID: 43B888EC.3040909@Royer.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


Yes - if you assume that EINTR only happens on NFS mounts.
My point is that independent of NFS, the error checking
that I have found in the code is not complete even for
non-NFS file systems.

The read() and write() LINUX man pages do NOT specify that EINTR
is an NFS-only error.

EINTR The call was interrupted by a signal before any data was
read.

The read() and write() SOLARIS man pages say:

EINTR A signal was caught during the read operation and no
data was transferred.

There are other SVR read() and write() errors:

EOVERFLOW (read)
The file is a regular file, nbyte is greater than 0,
the starting position is before the end-of-file, and
the starting position is greater than or equal to the
offset maximum established in the open file descrip-
tion associated with fildes.

EDEADLK
The write was going to go to sleep and cause a
deadlock situation to occur.

EDQUOT
The user's quota of disk blocks on the file system
containing the file has been exhausted.

EFBIG (write)
An attempt is made to write a file that exceeds the
process's file size limit or the maximum file size
(see getrlimit(2) and ulimit(2)).

EFBIG The file is a regular file, nbyte is greater than 0,
and the starting position is greater than or equal to
the offset maximum established in the file description
associated with fildes.

ENOSPC
During a write to an ordinary file, there is no free
space left on the device.

Bruce Momjian wrote:
> Let me give you a sky-high view of this. Database reliability requires
> that the disk drive be 100% reliable. If any part of the disk storage
> fails (I/O write failure, NFS failure) we have to assume that the disk
> storage is corrupt and the database needs to be restored from backup.
> The NFS failure modes seem to suggest that any kind of NFS failure makes
> our storage suspect, meaning we want NFS to be as non-failure mode as
> possible. Making PostgreSQL work on NFS system itself is risky, and
> allowing it to work on systems that will soft-failure on writes seems
> even worse.
>
--

Doug Royer | http://INET-Consulting.com
-------------------------------|-----------------------------

We Do Standards - You Need Standards

Attachment Content-Type Size
Doug.vcf text/x-vcard 332 bytes

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Doug McNaught 2006-01-02 02:02:25 Re: EINTR error in SunOS
Previous Message Doug Royer 2006-01-02 01:46:48 Re: EINTR error in SunOS