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 по дате отправления:

Предыдущее
От: "Hiroshi Inoue"
Дата:
Сообщение: Re: [GENERAL] Using an SMP machine to make multiple indices on the same
Следующее
От: "Kiran Kumar Gahlot"
Дата:
Сообщение: check for disk space