Qingqing Zhou <[EMAIL PROTECTED]> 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 ---------------------------(end of broadcast)--------------------------- TIP 4: Have you searched our list archives? http://archives.postgresql.org