Re: EINTR error in SunOS

From: Qingqing Zhou <zhouqq(at)cs(dot)toronto(dot)edu>
To: Greg Stark <gsstark(at)mit(dot)edu>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: EINTR error in SunOS
Date: 2006-01-01 07:52:48
Message-ID: Pine.LNX.4.58.0601010241430.11196@eon.cs
Views: Raw Message | Whole Thread | Download mbox
Thread:
Lists: pgsql-hackers

On Sun, 1 Jan 2006, Greg Stark wrote:
>
> "Qingqing Zhou" <zhouqq(at)cs(dot)toronto(dot)edu> writes:
>
> > The problem of above is if a signal sneaks in, these syscalls will fail.
> > With a retry, we can fix it.
>
> It's a bit stickier than that but only a bit. If you just retry then you're
> saying users have to use kill -9 to get away from the situation. For some
> filesystem operations that may be the best we can do. But for most it ought to
> be possible to CHECK_FOR_INTERRUPTS() and handle the regular signals like C-c
> or kill -1 normally. Even having the single backend exit (to avoid file
> resource leaks) is nicer than having to restart the entire instance.
>

I understand put a CHECK_FOR_INTERRUPTS() in the retry-loop may make more
graceful stop, but it won't work in some cases -- notice that the io
routines we will patch can be used before the signal mechanism is setup.

Regards,
Qingqing

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Martijn van Oosterhout 2006-01-01 11:01:42 Re: Removing SORTFUNC_LT/REVLT
Previous Message Andrew - Supernews 2006-01-01 07:48:56 Re: Removing SORTFUNC_LT/REVLT