1
0
mirror of https://github.com/postgres/postgres.git synced 2025-09-02 04:21:28 +03:00

Fix inadequacies in recently added wait events

In commit 9915de6c1c, we introduced a new wait point for replication
slots and incorrectly labelled it as wait event PG_WAIT_LOCK.  That's
wrong, so invent an appropriate new wait event instead, and document it
properly.

While at it, fix numerous other problems in the vicinity:
- two different walreceiver wait events were being mixed up in a single
  wait event (which wasn't documented either); split it out so that they
  can be distinguished, and document the new events properly.

- ParallelBitmapPopulate was documented but didn't exist.

- ParallelBitmapScan was not documented (I think this should be called
  "ParallelBitmapScanInit" instead.)

- Logical replication wait events weren't documented

- various symbols had been added in dartboard order in various places.
  Put them in alphabetical order instead, as was originally intended.

Discussion: https://postgr.es/m/20170808181131.mu4fjepuh5m75cyq@alvherre.pgsql
This commit is contained in:
Alvaro Herrera
2017-08-08 15:37:44 -04:00
parent b4a2eea030
commit 030273b7ea
5 changed files with 64 additions and 27 deletions

View File

@@ -1175,6 +1175,14 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<entry><literal>CheckpointerMain</></entry>
<entry>Waiting in main loop of checkpointer process.</entry>
</row>
<row>
<entry><literal>LogicalLauncherMain</></entry>
<entry>Waiting in main loop of logical launcher process.</entry>
</row>
<row>
<entry><literal>LogicalApplyMain</></entry>
<entry>Waiting in main loop of logical apply process.</entry>
</row>
<row>
<entry><literal>PgStatMain</></entry>
<entry>Waiting in main loop of the statistics collector process.</entry>
@@ -1212,6 +1220,14 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<entry><literal>ClientWrite</></entry>
<entry>Waiting to write data from the client.</entry>
</row>
<row>
<entry><literal>LibPQWalReceiverConnect</></entry>
<entry>Waiting in WAL receiver to establish connection to remote server.<entry>
</row>
<row>
<entry><literal>LibPQWalReceiverReceive</></entry>
<entry>Waiting in WAL receiver to receive data from remote server.<entry>
</row>
<row>
<entry><literal>SSLOpenServer</></entry>
<entry>Waiting for SSL while attempting connection.</entry>
@@ -1250,6 +1266,14 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<entry><literal>ExecuteGather</></entry>
<entry>Waiting for activity from child process when executing <literal>Gather</> node.</entry>
</row>
<row>
<entry><literal>LogicalSyncData</></entry>
<entry>Waiting for logical replication remote server to send data for initial table synchronization.</entry>
</row>
<row>
<entry><literal>LogicalSyncStateChange</></entry>
<entry>Waiting for logical replication remote server to change state.</entry>
</row>
<row>
<entry><literal>MessageQueueInternal</></entry>
<entry>Waiting for other process to be attached in shared message queue.</entry>
@@ -1271,13 +1295,17 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<entry>Waiting for parallel workers to finish computing.</entry>
</row>
<row>
<entry><literal>ParallelBitmapPopulate</></entry>
<entry>Waiting for the leader to populate the TidBitmap.</entry>
<entry><literal>ParallelBitmapScan</></entry>
<entry>Waiting for parallel bitmap scan to become initialized.</entry>
</row>
<row>
<entry><literal>ProcArrayGroupUpdate</></entry>
<entry>Waiting for group leader to clear transaction id at transaction end.</entry>
</row>
<row>
<entry><literal>ReplicationSlotDrop</></entry>
<entry>Waiting for a replication slot to become inactive to be dropped.</entry>
</row>
<row>
<entry><literal>SafeSnapshot</></entry>
<entry>Waiting for a snapshot for a <literal>READ ONLY DEFERRABLE</> transaction.</entry>