On Mon, Apr 25, 2005 at 03:42:35PM -0400, pgsql-bugs(at)counterstorm(dot)com wrote:
> The way the notify gets called is a bit convoluted. Our C program
> performs an insert in table T. Some triggers run doing all sorts of
> stuff in the background involving changes to other tables. Under some
> circumstances, a row is inserted by the trigger into table W (a
> trigger off of that is executed) and the parent trigger performs a
> notify. This, while expensive, normally all works. However, at a
> customer site we saw the postgres process hang out in async_notify and
> refuse to allow more inserts.
What do you mean by "in the background"? Do you fork() the backend
IIRC there have been bugs in listen/notify by which a backend could hang
forever. Some were fixed, but others main remain. Can you post more
details of the involved functions and triggers?
Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)
One man's impedance mismatch is another man's layer of abstraction.
In response to
pgsql-bugs by date
|Next:||From: pgsql-bugs||Date: 2005-04-25 21:43:31|
|Subject: Re: Postgres 7.4.6 hang in async_notify |
|Previous:||From: Juan Villa||Date: 2005-04-25 20:08:16|
|Subject: BUG #1625: INTALL PROBLEM|