File tree Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Expand file tree Collapse file tree 1 file changed +15
-0
lines changed Original file line number Diff line number Diff line change @@ -77,5 +77,20 @@ query commands and causes a SIGSEGV trying to execute commands without plan.
77
77
*/
78
78
#define FUNC_UTIL_PATCH
79
79
80
+ /*
81
+
82
+ Async notifies received while a backend is in the middle of a begin/end
83
+ transaction block are lost by libpq when the final end command is issued.
84
+
85
+ The bug is in the routine PQexec of libpq. The routine throws away any
86
+ message from the backend when a message of type 'C' is received. This
87
+ type of message is sent when the result of a portal query command with
88
+ no tuples is returned. Unfortunately this is the case of the end command.
89
+ As all async notification are sent only when the transaction is finished,
90
+ if they are received in the middle of a transaction they are lost in the
91
+ libpq library. I added some tracing code to PQexec and this is the output:
92
+
93
+ */
94
+ #define PQ_NOTIFY_PATCH
80
95
#endif /* CONFIG_H */
81
96
You can’t perform that action at this time.
0 commit comments