postgresql/src
Tom Lane b6a97b91ff Block interrupts during HandleParallelMessages().
As noted by Alvaro, there are CHECK_FOR_INTERRUPTS() calls in the shm_mq.c
functions called by HandleParallelMessages().  I believe they're all
unreachable since we always pass nowait = true, but it doesn't seem like
a great idea to assume that no such call will ever be reachable from
HandleParallelMessages().  If that did happen, there would be a risk of a
recursive call to HandleParallelMessages(), which it does not appear to be
designed for --- for example, there's nothing that would prevent
out-of-order processing of received messages.  And certainly such cases
cannot easily be tested.  So let's prevent it by holding off interrupts for
the duration of the function.  Back-patch to 9.5 which contains identical
code.

Discussion: <14869.1470083848@sss.pgh.pa.us>
2016-08-02 16:39:16 -04:00
..
backend Block interrupts during HandleParallelMessages(). 2016-08-02 16:39:16 -04:00
bin Fix pg_dump's handling of public schema with both -c and -C options. 2016-08-02 12:49:40 -04:00
common pgindent run for 9.6 2016-06-09 18:02:36 -04:00
fe_utils Fix comment. 2016-05-15 17:04:01 -04:00
include Minor cleanup for access/transam/parallel.c. 2016-08-01 16:12:01 -04:00
interfaces Fixed array checking code for "unsigned long long" datatypes in libecpg. 2016-08-01 15:08:12 +02:00
makefiles Fix typos in comments and doc 2016-01-28 16:47:36 +09:00
pl Make pltcl regression tests safe for Danish locale. 2016-07-21 14:24:07 -04:00
port pgindent run for 9.6 2016-06-09 18:02:36 -04:00
template Remove some remains from Alpha support removal 2015-10-29 16:40:14 -04:00
test Consistently capitalize names of recovery tests 2016-08-02 10:47:03 -04:00
timezone Reduce stack space consumption in tzload(). 2016-07-07 11:28:17 -04:00
tools Establish conventions about global object names used in regression tests. 2016-07-17 18:42:43 -04:00
tutorial Update copyright for 2016 2016-01-02 13:33:40 -05:00
.gitignore
DEVELOPERS
Makefile Create src/fe_utils/, and move stuff into there from pg_dump's dumputils. 2016-03-24 15:55:57 -04:00
Makefile.global.in Provide and use a makefile target to build all generated headers. 2016-07-01 15:09:02 -04:00
Makefile.shlib Make the AIX case of Makefile.shlib safe for parallel make. 2016-07-23 20:30:03 -04:00
bcc32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
nls-global.mk nls-global.mk: search build dir for source files, too 2016-06-07 18:55:18 -04:00
win32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00