postgresql/src
Robert Haas 16a4e4aecd Extend the ProcSignal mechanism to support barriers.
A new function EmitProcSignalBarrier() can be used to emit a global
barrier which all backends that participate in the ProcSignal
mechanism must absorb, and a new function WaitForProcSignalBarrier()
can be used to wait until all relevant backends have in fact
absorbed the barrier.

This can be used to coordinate global state changes, such as turning
checksums on while the system is running.

There's no real client of this mechanism yet, although two are
proposed, but an enum has to have at least one element, so this
includes a placeholder type (PROCSIGNAL_BARRIER_PLACEHOLDER) which
should be replaced by the first real client of this mechanism to
get committed.

Andres Freund and Robert Haas, reviewed by Daniel Gustafsson and,
in earlier versions, by Magnus Hagander.

Discussion: http://postgr.es/m/CA+TgmoZwDk=BguVDVa+qdA6SBKef=PKbaKDQALTC_9qoz1mJqg@mail.gmail.com
2019-12-19 14:56:20 -05:00
..
backend Extend the ProcSignal mechanism to support barriers. 2019-12-19 14:56:20 -05:00
bin Fix query cancellation handling in psql 2019-12-17 10:44:25 +09:00
common Fix output of Unicode normalization test 2019-12-11 08:42:17 +01:00
fe_utils Fix query cancellation handling in psql 2019-12-17 10:44:25 +09:00
include Extend the ProcSignal mechanism to support barriers. 2019-12-19 14:56:20 -05:00
interfaces Sort out getpeereid() and peer auth handling on Windows 2019-12-16 09:36:08 +01:00
makefiles Select CFLAGS_SL at configure time, not in platform-specific Makefiles. 2019-10-21 12:32:35 -04:00
pl Fix some OBJS lists in two Makefiles to be ordered alphabetically 2019-12-18 10:42:40 +09:00
port On Windows, wait a little to see if ERROR_ACCESS_DENIED goes away. 2019-12-16 15:10:55 -05:00
template Select CFLAGS_SL at configure time, not in platform-specific Makefiles. 2019-10-21 12:32:35 -04:00
test Fix error reporting for index expressions of prohibited types. 2019-12-17 17:44:27 -05:00
timezone Split all OBJS style lines in makefiles into one-line-per-entry style. 2019-11-05 14:41:07 -08:00
tools Refactor attribute mappings used in logical tuple conversion 2019-12-18 16:23:02 +09:00
tutorial Add .gitignore to src/tutorial/ 2019-11-22 21:14:54 +09:00
.gitignore Convert cvsignore to gitignore, and add .gitignore for build targets. 2010-09-22 12:57:04 +02:00
DEVELOPERS Replace a couple of references to files that no longer exist in the source 2009-05-04 08:08:47 +00:00
Makefile Fix partial-build problems introduced by having more generated headers. 2018-04-09 16:42:10 -04:00
Makefile.global.in Select CFLAGS_SL at configure time, not in platform-specific Makefiles. 2019-10-21 12:32:35 -04:00
Makefile.shlib Clean up MinGW def file generation 2019-10-20 10:19:13 +02:00
nls-global.mk NLS: Fix backend gettext triggers 2019-09-23 09:04:20 +02:00