From 33dccad831a7b48f9b27cf4a45809d0af1b7fd6d Mon Sep 17 00:00:00 2001
From: "Marc G. Fournier" <scrappy@hub.org>
Date: Mon, 16 Sep 1996 05:52:51 +0000
Subject: [PATCH] enable PQ_NOTIFY_PATCH in config.h

---
 src/include/config.h | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/src/include/config.h b/src/include/config.h
index d75c21961ee..ede1a8184d6 100644
--- a/src/include/config.h
+++ b/src/include/config.h
@@ -77,5 +77,20 @@ query commands and causes a SIGSEGV trying to execute commands without plan.
 */
 #define FUNC_UTIL_PATCH
 
+/*
+
+Async notifies received while a backend is in the middle of a begin/end
+transaction block are lost by libpq when the final end command is issued.
+
+The bug is in the routine PQexec of libpq. The routine throws away any
+message from the backend when a message of type 'C' is received. This
+type of message is sent when the result of a portal query command with
+no tuples is returned. Unfortunately this is the case of the end command.
+As all async notification are sent only when the transaction is finished,
+if they are received in the middle of a transaction they are lost in the
+libpq library. I added some tracing code to PQexec and this is the output:
+
+*/
+#define PQ_NOTIFY_PATCH
 #endif /* CONFIG_H */
 
-- 
GitLab