Re: EINTR error in SunOS - Mailing list pgsql-hackers

From Tom Lane
Subject Re: EINTR error in SunOS
Date
Msg-id 26678.1136137731@sss.pgh.pa.us
Whole thread Raw
In response to Re: EINTR error in SunOS  (Qingqing Zhou <zhouqq@cs.toronto.edu>)
Responses Re: EINTR error in SunOS
List pgsql-hackers
Qingqing Zhou <zhouqq@cs.toronto.edu> writes:
> 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.

I don't think it will help much at all: too many of the operations in
question are invoked in places where CHECK_FOR_INTERRUPTS is a no-op.
Examples:
* disk writes are mostly done by the bgwriter and not backends at all
* unlinks are generally done during xact commit/rollback

Qingqing's point about failures in system()-invoked commands (think
archive_command for PITR) is a mighty good one too.  That puts a
serious crimp into any illusion that we can really fix this in any
reliable way.
        regards, tom lane


pgsql-hackers by date:

Previous
From: "Magnus Hagander"
Date:
Subject: psql & readline & win32
Next
From: Tom Lane
Date:
Subject: Re: Removing SORTFUNC_LT/REVLT