Re: Notify system doesn't recover from "No space" error

Kevin Grittner <kevin.grittner@wicourts.gov>

From: "Kevin Grittner" <Kevin.Grittner@wicourts.gov>
To: "Tom Lane" <tgl@sss.pgh.pa.us>
Cc: <pgsql-hackers@postgresql.org>
Date: 2012-02-09T18:37:25Z
Lists: pgsql-hackers
Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "Kevin Grittner" <Kevin.Grittner@wicourts.gov> writes:
>> The application LISTENs on channel tcn and a trigger function is
>> attached to most permanent tables to NOTIFY for DML on that
>> channel.
>> ...
>> The report to us was that testers were unable to start the
>> application.  I believe that the above error on COMMIT kept the
>> application from getting past initial tests that the connection
>> was good.
> 
> OK, so it was issuing a LISTEN and the LISTEN was failing at
> commit?  (It's a bit hard to believe that you'd be triggering one
> of the NOTIFYs during "initial connection tests".)
 
In continued digging through logs I found something to indicate the
transaction on which COMMIT failed for 2528 of the failures.  In all
cases the transaction made a change which would have fired a NOTIFY
at commit (in a deferred trigger).
 
So that initial assumption about the cause doesn't hold up.  I'm not
sure at this point why the tester perception was that they couldn't
get in.
 
-Kevin