Commit a959c67c authored by Tom Lane's avatar Tom Lane

ProcessIncomingNotify *must* reset notifyInterruptOccurred when called.

This was broken in 9.0 by careless addition of an early-exit path.
Bug report and diagnosis by Jeff Davis.
parent 660fbec5
...@@ -2090,7 +2090,10 @@ ProcessIncomingNotify(void) ...@@ -2090,7 +2090,10 @@ ProcessIncomingNotify(void)
{ {
bool catchup_enabled; bool catchup_enabled;
/* Do nothing if we aren't actively listening */ /* We *must* reset the flag */
notifyInterruptOccurred = 0;
/* Do nothing else if we aren't actively listening */
if (listenChannels == NIL) if (listenChannels == NIL)
return; return;
...@@ -2102,8 +2105,6 @@ ProcessIncomingNotify(void) ...@@ -2102,8 +2105,6 @@ ProcessIncomingNotify(void)
set_ps_display("notify interrupt", false); set_ps_display("notify interrupt", false);
notifyInterruptOccurred = 0;
/* /*
* We must run asyncQueueReadAllNotifications inside a transaction, else * We must run asyncQueueReadAllNotifications inside a transaction, else
* bad things happen if it gets an error. * bad things happen if it gets an error.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment