Re: PQconnectStart() and -EINTR
От | Doug McNaught |
---|---|
Тема | Re: PQconnectStart() and -EINTR |
Дата | |
Msg-id | m3hespatqe.fsf@belphigor.mcnaught.org обсуждение исходный текст |
Ответ на | PQconnectStart() and -EINTR (David Ford <david@blue-labs.org>) |
Список | pgsql-hackers |
David Ford <david@blue-labs.org> writes: > I've got a bit of a problem. I added a fast SIGALRM handler in my project to > do various maintenance and this broke PQconnectStart(). > > > Oct 23 21:56:36 james BlueList: connectDBStart() -- connect() failed: > Interrupted system call ^IIs the postmaster running (with -i) at > 'archives.blue-labs.org' ^Iand accepting connections on TCP/IP port 5432? > > > PQstatus() returns CONNECTION_BAD, how can I reenter the connection cycle or > delay, more like, how do I differentiate between an actual failure to connect > and an interruption by signal? My alarm timer happens much too frequently for > this code to make a connection and unfortunately I can't disable the alarm > because it's used for bean counting and other maintenance. Sounds like something in libpq needs to check for EINTR and reissue the connect() call (or select()/poll() if it's a nonblocking connect()). -Doug -- Let us cross over the river, and rest under the shade of the trees. --T. J. Jackson, 1863
В списке pgsql-hackers по дате отправления: