From: | Doug McNaught <doug(at)mcnaught(dot)org> |
---|---|
To: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: EINTR error in SunOS |
Date: | 2006-01-02 01:10:23 |
Message-ID: | 878xtzcu4g.fsf@asmodeus.mcnaught.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Doug Royer <Doug(at)Royer(dot)com> writes:
> From the Linux 'nfs' man page:
>
> intr If an NFS file operation has a major timeout and it is
> hard mounted, then allow signals to interupt the file
> operation and cause it to return EINTR to the calling
> program. The default is to not allow file operations to
> be interrupted.
>
> Solaris 'mount_nfs' man page
>
> intr | nointr
> Allow (do not allow) keyboard interrupts to kill
> a process that is hung while waiting for a
> response on a hard-mounted file system. The
> default is intr, which makes it possible for
> clients to interrupt applications that may be
> waiting for a remote mount.
>
> The Solaris and Linux defaults seem to be the opposite of each other.
Actually they're the same, though differently worded. "Major timeout"
means the server has not responded for N milliseconds, not that the
client has decided to time out the request. If 'hard' is set, the
client will keep trying indefinitely, though you can interrupt it if
you've specified 'intr'.
> So I think we are saying the same thing.
>
> You can get EINTR with hard+intr mounts.
Yes, *only* if the user specifically decides to send a signal, or if
it uses SIGALRM or whatever. I agree that if you expect 'intr' to be
used, your code needs to handle EINTR.
> I am not sure what you get with soft mounts on a timeout.
The Linux manpage implies you get EIO.
-Doug
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2006-01-02 01:11:27 | Re: Checks for command string |
Previous Message | Tom Lane | 2006-01-02 01:05:11 | Re: [PATCHES] default resource limits |