Re: pg_listener entries deleted under heavy NOTIFY load only on Windows
| От | Tom Lane |
|---|---|
| Тема | Re: pg_listener entries deleted under heavy NOTIFY load only on Windows |
| Дата | |
| Msg-id | 6346.1232119227@sss.pgh.pa.us обсуждение |
| Ответ на | Re: pg_listener entries deleted under heavy NOTIFY load only on Windows (Alvaro Herrera <alvherre@commandprompt.com>) |
| Ответы |
Re: pg_listener entries deleted under heavy NOTIFY load only on Windows
|
| Список | pgsql-bugs |
Alvaro Herrera <alvherre@commandprompt.com> writes:
> Marshall, Steve wrote:
>> Any thoughts on how to confirm or deny Theory A?
> Try changing the 1000 to NMPWAIT_WAIT_FOREVER
As long as you're changing the source code, it'd be a good idea to
verify the supposition that kill() is failing, eg
in src/backend/commands/async.c
if (kill(listenerPID, SIGUSR2) < 0)
{
+ elog(LOG, "kill(%d) failed: %m", listenerPID);
/*
* Get rid of pg_listener entry if it refers to a PID that no
* longer exists. Presumably, that backend crashed without
* deleting its pg_listener entries. This code used to only
If that's right, sprinkling a few debug printouts into src/port/kill.c
would be the next step.
regards, tom lane
В списке pgsql-bugs по дате отправления: