diff options
author | Robert Haas <rhaas@postgresql.org> | 2019-12-19 14:56:20 -0500 |
---|---|---|
committer | Robert Haas <rhaas@postgresql.org> | 2019-12-19 14:56:20 -0500 |
commit | 16a4e4aecd47da7a6c4e1ebc20f6dd1a13f9133b (patch) | |
tree | 598ee1c089f080fde4bcb2e0707bb342fb934aa6 /doc/src | |
parent | 9f83468b3536caf6fb7fe8f9dcdbb108a98d1257 (diff) | |
download | postgresql-16a4e4aecd47da7a6c4e1ebc20f6dd1a13f9133b.tar.gz postgresql-16a4e4aecd47da7a6c4e1ebc20f6dd1a13f9133b.zip |
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
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/monitoring.sgml | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml index a3c5f86b7e8..dcb58115af7 100644 --- a/doc/src/sgml/monitoring.sgml +++ b/doc/src/sgml/monitoring.sgml @@ -1473,7 +1473,7 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser <entry>Waiting to apply WAL at recovery because it is delayed.</entry> </row> <row> - <entry morerows="66"><literal>IO</literal></entry> + <entry morerows="67"><literal>IO</literal></entry> <entry><literal>BufFileRead</literal></entry> <entry>Waiting for a read from a buffered file.</entry> </row> @@ -1594,6 +1594,10 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser <entry>Waiting for a write of logical rewrite mappings.</entry> </row> <row> + <entry><literal>ProcSignalBarrier</literal></entry> + <entry>Waiting for a barrier event to be processed by all backends.</entry> + </row> + <row> <entry><literal>RelationMapRead</literal></entry> <entry>Waiting for a read of the relation map file.</entry> </row> |