Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit a959c67

Browse files
committed
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.
1 parent 660fbec commit a959c67

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/backend/commands/async.c

+4-3
Original file line numberDiff line numberDiff line change
@@ -2090,7 +2090,10 @@ ProcessIncomingNotify(void)
20902090
{
20912091
bool catchup_enabled;
20922092

2093-
/* Do nothing if we aren't actively listening */
2093+
/* We *must* reset the flag */
2094+
notifyInterruptOccurred = 0;
2095+
2096+
/* Do nothing else if we aren't actively listening */
20942097
if (listenChannels == NIL)
20952098
return;
20962099

@@ -2102,8 +2105,6 @@ ProcessIncomingNotify(void)
21022105

21032106
set_ps_display("notify interrupt", false);
21042107

2105-
notifyInterruptOccurred = 0;
2106-
21072108
/*
21082109
* We must run asyncQueueReadAllNotifications inside a transaction, else
21092110
* bad things happen if it gets an error.

0 commit comments

Comments
 (0)