Re: Listen / Notify - what to do when the queue is full

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Joachim Wieland <joe(at)mcknight(dot)de>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Listen / Notify - what to do when the queue is full
Date: 2009-11-19 02:49:21
Message-ID: 3160.1258598961@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Joachim Wieland <joe(at)mcknight(dot)de> writes:
> The sequence in CommitTransaction() is like that:

> 1) add notifications to queue
> 2) commit to clog
> 3) signal backends

> Only those backends are signalled that listen to at least one channel,
> if the notify system isn't in use, then nobody will ever be signalled
> anyway.

> If a backend is reading a transaction id that has not yet committed,
> it will not deliver the notification.

But you were saying that this patch would enable sending more data than
would fit in the queue. How will that happen if the other backends
don't look at the queue until you signal them?

regards, tom lane

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2009-11-19 02:52:09 Re: "Not safe to send CSV data" message
Previous Message gabrielle 2009-11-19 02:36:44 Review: psql-wrap-formatting/Unicode UTF-8 table formatting for psql text output