9.4 HEAD: select() failed in postmaster - Mailing list pgsql-hackers

From Jeff Janes
Subject 9.4 HEAD: select() failed in postmaster
Date
Msg-id CAMkU=1xd3=wFqZwwuXPWe4BQs3h1seYo8LV9JtSjW5RodoPxMg@mail.gmail.com
Whole thread Raw
Responses Re: 9.4 HEAD: select() failed in postmaster
List pgsql-hackers

I've been getting some failures after an immediate shutdown or crash, during severe IO stress, with the message:

LOG:  XX000: select() failed in postmaster: Invalid argument
LOCATION:  ServerLoop, postmaster.c:1560

It is trying to sleep for -1 seconds.

I think the problem is here, where there should be a Max rather than a Min:

commit 82233ce7ea42d6ba519aaec63008aff49da6c7af
Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
Date:   Fri Jun 28 17:20:53 2013 -0400

    Send SIGKILL to children if they don't die quickly in immediate shutdown

...

+           /* remaining time, but at least 1 second */
+           timeout->tv_sec = Min(SIGKILL_CHILDREN_AFTER_SECS -
+                                 (time(NULL) - AbortStartTime), 1);


But I don't understand the logic behind this anyway.  Why sleep at least 1 second?  If time is up, it is up, why not use zero as the minimum?

Cheers,

Jeff

pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: unaccent module - two params function should be immutable
Next
From: Bruce Momjian
Date:
Subject: Re: One-line comment to improve understanding of VARSIZE_ANY_EXHDR macro