From c8966a925e139df2176958667b4a19c068d617aa Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 29 Jul 2016 12:52:57 -0400 Subject: [PATCH] Fix pq_putmessage_noblock() to not block. An evident copy-and-pasteo in commit 2bd9e412f broke the non-blocking aspect of pq_putmessage_noblock(), causing it to behave identically to pq_putmessage(). That function is nowadays used only in walsender.c, so that the net effect was to cause walsenders to hang up waiting for the receiver in situations where they should not. Kyotaro Horiguchi Patch: <20160728.185228.58375982.horiguchi.kyotaro@lab.ntt.co.jp> --- src/include/libpq/libpq.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/include/libpq/libpq.h b/src/include/libpq/libpq.h index efb2dacbba3..42ab915712c 100644 --- a/src/include/libpq/libpq.h +++ b/src/include/libpq/libpq.h @@ -42,7 +42,7 @@ extern PGDLLIMPORT PQcommMethods *PqCommMethods; #define pq_putmessage(msgtype, s, len) \ (PqCommMethods->putmessage(msgtype, s, len)) #define pq_putmessage_noblock(msgtype, s, len) \ - (PqCommMethods->putmessage(msgtype, s, len)) + (PqCommMethods->putmessage_noblock(msgtype, s, len)) #define pq_startcopyout() (PqCommMethods->startcopyout()) #define pq_endcopyout(errorAbort) (PqCommMethods->endcopyout(errorAbort))