diff options
-rw-r--r-- | doc/src/sgml/monitoring.sgml | 128 | ||||
-rw-r--r-- | src/backend/access/transam/clog.c | 2 | ||||
-rw-r--r-- | src/backend/executor/nodeHash.c | 22 | ||||
-rw-r--r-- | src/backend/executor/nodeHashjoin.c | 8 | ||||
-rw-r--r-- | src/backend/postmaster/pgstat.c | 72 | ||||
-rw-r--r-- | src/include/pgstat.h | 36 |
6 files changed, 142 insertions, 126 deletions
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml index cd526128983..acc6e2bc316 100644 --- a/doc/src/sgml/monitoring.sgml +++ b/doc/src/sgml/monitoring.sgml @@ -1178,24 +1178,28 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser </row> <row> <entry><literal>ControlFileRead</literal></entry> - <entry>Waiting for a read from the control file.</entry> + <entry>Waiting for a read from the <filename>pg_control</filename> + file.</entry> </row> <row> <entry><literal>ControlFileSync</literal></entry> - <entry>Waiting for the control file to reach stable storage.</entry> + <entry>Waiting for the <filename>pg_control</filename> file to reach + stable storage.</entry> </row> <row> <entry><literal>ControlFileSyncUpdate</literal></entry> - <entry>Waiting for an update to the control file to reach stable - storage.</entry> + <entry>Waiting for an update to the <filename>pg_control</filename> file + to reach stable storage.</entry> </row> <row> <entry><literal>ControlFileWrite</literal></entry> - <entry>Waiting for a write to the control file.</entry> + <entry>Waiting for a write to the <filename>pg_control</filename> + file.</entry> </row> <row> <entry><literal>ControlFileWriteUpdate</literal></entry> - <entry>Waiting for a write to update the control file.</entry> + <entry>Waiting for a write to update the <filename>pg_control</filename> + file.</entry> </row> <row> <entry><literal>CopyFileRead</literal></entry> @@ -1207,8 +1211,8 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser </row> <row> <entry><literal>DSMFillZeroWrite</literal></entry> - <entry>Waiting to write zero bytes to a dynamic shared memory backing - file.</entry> + <entry>Waiting to fill a dynamic shared memory backing file with + zeroes.</entry> </row> <row> <entry><literal>DataFileExtend</literal></entry> @@ -1309,11 +1313,6 @@ 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> @@ -1464,7 +1463,7 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser </row> <row> <entry><literal>WALSenderTimelineHistoryRead</literal></entry> - <entry>Waiting for a read from a timeline history file during walsender + <entry>Waiting for a read from a timeline history file during a walsender timeline command.</entry> </row> <row> @@ -1473,8 +1472,8 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser </row> <row> <entry><literal>WALSyncMethodAssign</literal></entry> - <entry>Waiting for data to reach stable storage while assigning WAL sync - method.</entry> + <entry>Waiting for data to reach stable storage while assigning a new + WAL sync method.</entry> </row> <row> <entry><literal>WALWrite</literal></entry> @@ -1497,7 +1496,7 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser <tbody> <row> <entry><literal>BackupWaitWalArchive</literal></entry> - <entry>Waiting for WAL files required for the backup to be successfully + <entry>Waiting for WAL files required for a backup to be successfully archived.</entry> </row> <row> @@ -1522,97 +1521,99 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser <entry>Waiting for a checkpoint to start.</entry> </row> <row> - <entry><literal>ClogGroupUpdate</literal></entry> - <entry>Waiting for group leader to update transaction status at - transaction end.</entry> - </row> - <row> <entry><literal>ExecuteGather</literal></entry> - <entry>Waiting for activity from child process while - executing <literal>Gather</literal> node.</entry> + <entry>Waiting for activity from a child process while + executing a <literal>Gather</literal> plan node.</entry> </row> <row> - <entry><literal>Hash/Batch/Allocating</literal></entry> + <entry><literal>HashBatchAllocate</literal></entry> <entry>Waiting for an elected Parallel Hash participant to allocate a hash table.</entry> </row> <row> - <entry><literal>Hash/Batch/Electing</literal></entry> - <entry>Electing a Parallel Hash participant to allocate a hash table.</entry> + <entry><literal>HashBatchElect</literal></entry> + <entry>Waiting to elect a Parallel Hash participant to allocate a hash + table.</entry> </row> <row> - <entry><literal>Hash/Batch/Loading</literal></entry> + <entry><literal>HashBatchLoad</literal></entry> <entry>Waiting for other Parallel Hash participants to finish loading a hash table.</entry> </row> <row> - <entry><literal>Hash/Build/Allocating</literal></entry> + <entry><literal>HashBuildAllocate</literal></entry> <entry>Waiting for an elected Parallel Hash participant to allocate the initial hash table.</entry> </row> <row> - <entry><literal>Hash/Build/Electing</literal></entry> - <entry>Electing a Parallel Hash participant to allocate the initial hash table.</entry> + <entry><literal>HashBuildElect</literal></entry> + <entry>Waiting to elect a Parallel Hash participant to allocate the + initial hash table.</entry> </row> <row> - <entry><literal>Hash/Build/HashingInner</literal></entry> + <entry><literal>HashBuildHashInner</literal></entry> <entry>Waiting for other Parallel Hash participants to finish hashing the inner relation.</entry> </row> <row> - <entry><literal>Hash/Build/HashingOuter</literal></entry> + <entry><literal>HashBuildHashOuter</literal></entry> <entry>Waiting for other Parallel Hash participants to finish partitioning the outer relation.</entry> </row> <row> - <entry><literal>Hash/GrowBatches/Allocating</literal></entry> + <entry><literal>HashGrowBatchesAllocate</literal></entry> <entry>Waiting for an elected Parallel Hash participant to allocate more batches.</entry> </row> <row> - <entry><literal>Hash/GrowBatches/Deciding</literal></entry> - <entry>Electing a Parallel Hash participant to decide on future batch growth.</entry> + <entry><literal>HashGrowBatchesDecide</literal></entry> + <entry>Waiting to elect a Parallel Hash participant to decide on future + batch growth.</entry> </row> <row> - <entry><literal>Hash/GrowBatches/Electing</literal></entry> - <entry>Electing a Parallel Hash participant to allocate more batches.</entry> + <entry><literal>HashGrowBatchesElect</literal></entry> + <entry>Waiting to elect a Parallel Hash participant to allocate more + batches.</entry> </row> <row> - <entry><literal>Hash/GrowBatches/Finishing</literal></entry> + <entry><literal>HashGrowBatchesFinish</literal></entry> <entry>Waiting for an elected Parallel Hash participant to decide on future batch growth.</entry> </row> <row> - <entry><literal>Hash/GrowBatches/Repartitioning</literal></entry> - <entry>Waiting for other Parallel Hash participants to finishing + <entry><literal>HashGrowBatchesRepartition</literal></entry> + <entry>Waiting for other Parallel Hash participants to finish repartitioning.</entry> </row> <row> - <entry><literal>Hash/GrowBuckets/Allocating</literal></entry> + <entry><literal>HashGrowBucketsAllocate</literal></entry> <entry>Waiting for an elected Parallel Hash participant to finish allocating more buckets.</entry> </row> <row> - <entry><literal>Hash/GrowBuckets/Electing</literal></entry> - <entry>Electing a Parallel Hash participant to allocate more buckets.</entry> + <entry><literal>HashGrowBucketsElect</literal></entry> + <entry>Waiting to elect a Parallel Hash participant to allocate more + buckets.</entry> </row> <row> - <entry><literal>Hash/GrowBuckets/Reinserting</literal></entry> + <entry><literal>HashGrowBucketsReinsert</literal></entry> <entry>Waiting for other Parallel Hash participants to finish inserting tuples into new buckets.</entry> </row> <row> <entry><literal>LogicalSyncData</literal></entry> - <entry>Waiting for logical replication remote server to send data for + <entry>Waiting for a logical replication remote server to send data for initial table synchronization.</entry> </row> <row> <entry><literal>LogicalSyncStateChange</literal></entry> - <entry>Waiting for logical replication remote server to change state.</entry> + <entry>Waiting for a logical replication remote server to change + state.</entry> </row> <row> <entry><literal>MessageQueueInternal</literal></entry> - <entry>Waiting for other process to be attached in shared message queue.</entry> + <entry>Waiting for another process to be attached to a shared message + queue.</entry> </row> <row> <entry><literal>MessageQueuePutMessage</literal></entry> @@ -1641,7 +1642,13 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser </row> <row> <entry><literal>ProcArrayGroupUpdate</literal></entry> - <entry>Waiting for group leader to clear transaction id at transaction end.</entry> + <entry>Waiting for the group leader to clear the transaction ID at + end of a parallel operation.</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>Promote</literal></entry> @@ -1649,11 +1656,13 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser </row> <row> <entry><literal>RecoveryConflictSnapshot</literal></entry> - <entry>Waiting for recovery conflict resolution on a vacuum cleanup.</entry> + <entry>Waiting for recovery conflict resolution for a vacuum + cleanup.</entry> </row> <row> <entry><literal>RecoveryConflictTablespace</literal></entry> - <entry>Waiting for recovery conflict resolution on dropping tablespace.</entry> + <entry>Waiting for recovery conflict resolution for dropping a + tablespace.</entry> </row> <row> <entry><literal>RecoveryPause</literal></entry> @@ -1661,22 +1670,29 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser </row> <row> <entry><literal>ReplicationOriginDrop</literal></entry> - <entry>Waiting for a replication origin to become inactive to be dropped.</entry> + <entry>Waiting for a replication origin to become inactive so it can be + dropped.</entry> </row> <row> <entry><literal>ReplicationSlotDrop</literal></entry> - <entry>Waiting for a replication slot to become inactive to be dropped.</entry> + <entry>Waiting for a replication slot to become inactive so it can be + dropped.</entry> </row> <row> <entry><literal>SafeSnapshot</literal></entry> - <entry>Waiting for a snapshot for a <literal>READ ONLY DEFERRABLE</literal> - transaction.</entry> + <entry>Waiting to obtain a valid snapshot for a <literal>READ ONLY + DEFERRABLE</literal> transaction.</entry> </row> <row> <entry><literal>SyncRep</literal></entry> - <entry>Waiting for confirmation from remote server during synchronous + <entry>Waiting for confirmation from a remote server during synchronous replication.</entry> </row> + <row> + <entry><literal>XactGroupUpdate</literal></entry> + <entry>Waiting for the group leader to update transaction status at + end of a parallel operation.</entry> + </row> </tbody> </tgroup> </table> diff --git a/src/backend/access/transam/clog.c b/src/backend/access/transam/clog.c index 23bc1f8d4c1..f3da40ae017 100644 --- a/src/backend/access/transam/clog.c +++ b/src/backend/access/transam/clog.c @@ -473,7 +473,7 @@ TransactionGroupUpdateXidStatus(TransactionId xid, XidStatus status, int extraWaits = 0; /* Sleep until the leader updates our XID status. */ - pgstat_report_wait_start(WAIT_EVENT_CLOG_GROUP_UPDATE); + pgstat_report_wait_start(WAIT_EVENT_XACT_GROUP_UPDATE); for (;;) { /* acts as a read barrier */ diff --git a/src/backend/executor/nodeHash.c b/src/backend/executor/nodeHash.c index 5da13ada726..45b342011fe 100644 --- a/src/backend/executor/nodeHash.c +++ b/src/backend/executor/nodeHash.c @@ -255,7 +255,7 @@ MultiExecParallelHash(HashState *node) * ExecHashTableCreate(), or someone else is doing that. Either * way, wait for everyone to arrive here so we can proceed. */ - BarrierArriveAndWait(build_barrier, WAIT_EVENT_HASH_BUILD_ALLOCATING); + BarrierArriveAndWait(build_barrier, WAIT_EVENT_HASH_BUILD_ALLOCATE); /* Fall through. */ case PHJ_BUILD_HASHING_INNER: @@ -311,7 +311,7 @@ MultiExecParallelHash(HashState *node) * counters. */ if (BarrierArriveAndWait(build_barrier, - WAIT_EVENT_HASH_BUILD_HASHING_INNER)) + WAIT_EVENT_HASH_BUILD_HASH_INNER)) { /* * Elect one backend to disable any further growth. Batches @@ -603,7 +603,7 @@ ExecHashTableCreate(HashState *state, List *hashOperators, List *hashCollations, * backend will be elected to do that now if necessary. */ if (BarrierPhase(build_barrier) == PHJ_BUILD_ELECTING && - BarrierArriveAndWait(build_barrier, WAIT_EVENT_HASH_BUILD_ELECTING)) + BarrierArriveAndWait(build_barrier, WAIT_EVENT_HASH_BUILD_ELECT)) { pstate->nbatch = nbatch; pstate->space_allowed = space_allowed; @@ -1076,7 +1076,7 @@ ExecParallelHashIncreaseNumBatches(HashJoinTable hashtable) * tuples. */ if (BarrierArriveAndWait(&pstate->grow_batches_barrier, - WAIT_EVENT_HASH_GROW_BATCHES_ELECTING)) + WAIT_EVENT_HASH_GROW_BATCHES_ELECT)) { dsa_pointer_atomic *buckets; ParallelHashJoinBatch *old_batch0; @@ -1186,7 +1186,7 @@ ExecParallelHashIncreaseNumBatches(HashJoinTable hashtable) case PHJ_GROW_BATCHES_ALLOCATING: /* Wait for the above to be finished. */ BarrierArriveAndWait(&pstate->grow_batches_barrier, - WAIT_EVENT_HASH_GROW_BATCHES_ALLOCATING); + WAIT_EVENT_HASH_GROW_BATCHES_ALLOCATE); /* Fall through. */ case PHJ_GROW_BATCHES_REPARTITIONING: @@ -1199,7 +1199,7 @@ ExecParallelHashIncreaseNumBatches(HashJoinTable hashtable) ExecParallelHashMergeCounters(hashtable); /* Wait for the above to be finished. */ BarrierArriveAndWait(&pstate->grow_batches_barrier, - WAIT_EVENT_HASH_GROW_BATCHES_REPARTITIONING); + WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION); /* Fall through. */ case PHJ_GROW_BATCHES_DECIDING: @@ -1210,7 +1210,7 @@ ExecParallelHashIncreaseNumBatches(HashJoinTable hashtable) * not helping. */ if (BarrierArriveAndWait(&pstate->grow_batches_barrier, - WAIT_EVENT_HASH_GROW_BATCHES_DECIDING)) + WAIT_EVENT_HASH_GROW_BATCHES_DECIDE)) { bool space_exhausted = false; bool extreme_skew_detected = false; @@ -1260,7 +1260,7 @@ ExecParallelHashIncreaseNumBatches(HashJoinTable hashtable) case PHJ_GROW_BATCHES_FINISHING: /* Wait for the above to complete. */ BarrierArriveAndWait(&pstate->grow_batches_barrier, - WAIT_EVENT_HASH_GROW_BATCHES_FINISHING); + WAIT_EVENT_HASH_GROW_BATCHES_FINISH); } } @@ -1509,7 +1509,7 @@ ExecParallelHashIncreaseNumBuckets(HashJoinTable hashtable) case PHJ_GROW_BUCKETS_ELECTING: /* Elect one participant to prepare to increase nbuckets. */ if (BarrierArriveAndWait(&pstate->grow_buckets_barrier, - WAIT_EVENT_HASH_GROW_BUCKETS_ELECTING)) + WAIT_EVENT_HASH_GROW_BUCKETS_ELECT)) { size_t size; dsa_pointer_atomic *buckets; @@ -1538,7 +1538,7 @@ ExecParallelHashIncreaseNumBuckets(HashJoinTable hashtable) case PHJ_GROW_BUCKETS_ALLOCATING: /* Wait for the above to complete. */ BarrierArriveAndWait(&pstate->grow_buckets_barrier, - WAIT_EVENT_HASH_GROW_BUCKETS_ALLOCATING); + WAIT_EVENT_HASH_GROW_BUCKETS_ALLOCATE); /* Fall through. */ case PHJ_GROW_BUCKETS_REINSERTING: @@ -1573,7 +1573,7 @@ ExecParallelHashIncreaseNumBuckets(HashJoinTable hashtable) CHECK_FOR_INTERRUPTS(); } BarrierArriveAndWait(&pstate->grow_buckets_barrier, - WAIT_EVENT_HASH_GROW_BUCKETS_REINSERTING); + WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT); } } diff --git a/src/backend/executor/nodeHashjoin.c b/src/backend/executor/nodeHashjoin.c index cc8edacdd01..2cdc38a6014 100644 --- a/src/backend/executor/nodeHashjoin.c +++ b/src/backend/executor/nodeHashjoin.c @@ -327,7 +327,7 @@ ExecHashJoinImpl(PlanState *pstate, bool parallel) if (hashtable->nbatch > 1) ExecParallelHashJoinPartitionOuter(node); BarrierArriveAndWait(build_barrier, - WAIT_EVENT_HASH_BUILD_HASHING_OUTER); + WAIT_EVENT_HASH_BUILD_HASH_OUTER); } Assert(BarrierPhase(build_barrier) == PHJ_BUILD_DONE); @@ -1135,14 +1135,14 @@ ExecParallelHashJoinNewBatch(HashJoinState *hjstate) /* One backend allocates the hash table. */ if (BarrierArriveAndWait(batch_barrier, - WAIT_EVENT_HASH_BATCH_ELECTING)) + WAIT_EVENT_HASH_BATCH_ELECT)) ExecParallelHashTableAlloc(hashtable, batchno); /* Fall through. */ case PHJ_BATCH_ALLOCATING: /* Wait for allocation to complete. */ BarrierArriveAndWait(batch_barrier, - WAIT_EVENT_HASH_BATCH_ALLOCATING); + WAIT_EVENT_HASH_BATCH_ALLOCATE); /* Fall through. */ case PHJ_BATCH_LOADING: @@ -1162,7 +1162,7 @@ ExecParallelHashJoinNewBatch(HashJoinState *hjstate) } sts_end_parallel_scan(inner_tuples); BarrierArriveAndWait(batch_barrier, - WAIT_EVENT_HASH_BATCH_LOADING); + WAIT_EVENT_HASH_BATCH_LOAD); /* Fall through. */ case PHJ_BATCH_PROBING: diff --git a/src/backend/postmaster/pgstat.c b/src/backend/postmaster/pgstat.c index 5fc35ded192..d7f99d9944c 100644 --- a/src/backend/postmaster/pgstat.c +++ b/src/backend/postmaster/pgstat.c @@ -3774,56 +3774,53 @@ pgstat_get_wait_ipc(WaitEventIPC w) case WAIT_EVENT_CHECKPOINT_START: event_name = "CheckpointStart"; break; - case WAIT_EVENT_CLOG_GROUP_UPDATE: - event_name = "ClogGroupUpdate"; - break; case WAIT_EVENT_EXECUTE_GATHER: event_name = "ExecuteGather"; break; - case WAIT_EVENT_HASH_BATCH_ALLOCATING: - event_name = "Hash/Batch/Allocating"; + case WAIT_EVENT_HASH_BATCH_ALLOCATE: + event_name = "HashBatchAllocate"; break; - case WAIT_EVENT_HASH_BATCH_ELECTING: - event_name = "Hash/Batch/Electing"; + case WAIT_EVENT_HASH_BATCH_ELECT: + event_name = "HashBatchElect"; break; - case WAIT_EVENT_HASH_BATCH_LOADING: - event_name = "Hash/Batch/Loading"; + case WAIT_EVENT_HASH_BATCH_LOAD: + event_name = "HashBatchLoad"; break; - case WAIT_EVENT_HASH_BUILD_ALLOCATING: - event_name = "Hash/Build/Allocating"; + case WAIT_EVENT_HASH_BUILD_ALLOCATE: + event_name = "HashBuildAllocate"; break; - case WAIT_EVENT_HASH_BUILD_ELECTING: - event_name = "Hash/Build/Electing"; + case WAIT_EVENT_HASH_BUILD_ELECT: + event_name = "HashBuildElect"; break; - case WAIT_EVENT_HASH_BUILD_HASHING_INNER: - event_name = "Hash/Build/HashingInner"; + case WAIT_EVENT_HASH_BUILD_HASH_INNER: + event_name = "HashBuildHashInner"; break; - case WAIT_EVENT_HASH_BUILD_HASHING_OUTER: - event_name = "Hash/Build/HashingOuter"; + case WAIT_EVENT_HASH_BUILD_HASH_OUTER: + event_name = "HashBuildHashOuter"; break; - case WAIT_EVENT_HASH_GROW_BATCHES_ALLOCATING: - event_name = "Hash/GrowBatches/Allocating"; + case WAIT_EVENT_HASH_GROW_BATCHES_ALLOCATE: + event_name = "HashGrowBatchesAllocate"; break; - case WAIT_EVENT_HASH_GROW_BATCHES_DECIDING: - event_name = "Hash/GrowBatches/Deciding"; + case WAIT_EVENT_HASH_GROW_BATCHES_DECIDE: + event_name = "HashGrowBatchesDecide"; break; - case WAIT_EVENT_HASH_GROW_BATCHES_ELECTING: - event_name = "Hash/GrowBatches/Electing"; + case WAIT_EVENT_HASH_GROW_BATCHES_ELECT: + event_name = "HashGrowBatchesElect"; break; - case WAIT_EVENT_HASH_GROW_BATCHES_FINISHING: - event_name = "Hash/GrowBatches/Finishing"; + case WAIT_EVENT_HASH_GROW_BATCHES_FINISH: + event_name = "HashGrowBatchesFinish"; break; - case WAIT_EVENT_HASH_GROW_BATCHES_REPARTITIONING: - event_name = "Hash/GrowBatches/Repartitioning"; + case WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION: + event_name = "HashGrowBatchesRepartition"; break; - case WAIT_EVENT_HASH_GROW_BUCKETS_ALLOCATING: - event_name = "Hash/GrowBuckets/Allocating"; + case WAIT_EVENT_HASH_GROW_BUCKETS_ALLOCATE: + event_name = "HashGrowBucketsAllocate"; break; - case WAIT_EVENT_HASH_GROW_BUCKETS_ELECTING: - event_name = "Hash/GrowBuckets/Electing"; + case WAIT_EVENT_HASH_GROW_BUCKETS_ELECT: + event_name = "HashGrowBucketsElect"; break; - case WAIT_EVENT_HASH_GROW_BUCKETS_REINSERTING: - event_name = "Hash/GrowBuckets/Reinserting"; + case WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT: + event_name = "HashGrowBucketsReinsert"; break; case WAIT_EVENT_LOGICAL_SYNC_DATA: event_name = "LogicalSyncData"; @@ -3855,6 +3852,9 @@ pgstat_get_wait_ipc(WaitEventIPC w) case WAIT_EVENT_PROCARRAY_GROUP_UPDATE: event_name = "ProcArrayGroupUpdate"; break; + case WAIT_EVENT_PROC_SIGNAL_BARRIER: + event_name = "ProcSignalBarrier"; + break; case WAIT_EVENT_PROMOTE: event_name = "Promote"; break; @@ -3879,6 +3879,9 @@ pgstat_get_wait_ipc(WaitEventIPC w) case WAIT_EVENT_SYNC_REP: event_name = "SyncRep"; break; + case WAIT_EVENT_XACT_GROUP_UPDATE: + event_name = "XactGroupUpdate"; + break; /* no default case, so that compiler will warn */ } @@ -4025,9 +4028,6 @@ pgstat_get_wait_io(WaitEventIO w) case WAIT_EVENT_LOGICAL_REWRITE_WRITE: event_name = "LogicalRewriteWrite"; break; - case WAIT_EVENT_PROC_SIGNAL_BARRIER: - event_name = "ProcSignalBarrier"; - break; case WAIT_EVENT_RELATION_MAP_READ: event_name = "RelationMapRead"; break; diff --git a/src/include/pgstat.h b/src/include/pgstat.h index ae9a39573c7..c55dc1481ca 100644 --- a/src/include/pgstat.h +++ b/src/include/pgstat.h @@ -850,25 +850,24 @@ typedef enum WAIT_EVENT_BGWORKER_SHUTDOWN, WAIT_EVENT_BGWORKER_STARTUP, WAIT_EVENT_BTREE_PAGE, - WAIT_EVENT_CLOG_GROUP_UPDATE, WAIT_EVENT_CHECKPOINT_DONE, WAIT_EVENT_CHECKPOINT_START, WAIT_EVENT_EXECUTE_GATHER, - WAIT_EVENT_HASH_BATCH_ALLOCATING, - WAIT_EVENT_HASH_BATCH_ELECTING, - WAIT_EVENT_HASH_BATCH_LOADING, - WAIT_EVENT_HASH_BUILD_ALLOCATING, - WAIT_EVENT_HASH_BUILD_ELECTING, - WAIT_EVENT_HASH_BUILD_HASHING_INNER, - WAIT_EVENT_HASH_BUILD_HASHING_OUTER, - WAIT_EVENT_HASH_GROW_BATCHES_ALLOCATING, - WAIT_EVENT_HASH_GROW_BATCHES_DECIDING, - WAIT_EVENT_HASH_GROW_BATCHES_ELECTING, - WAIT_EVENT_HASH_GROW_BATCHES_FINISHING, - WAIT_EVENT_HASH_GROW_BATCHES_REPARTITIONING, - WAIT_EVENT_HASH_GROW_BUCKETS_ALLOCATING, - WAIT_EVENT_HASH_GROW_BUCKETS_ELECTING, - WAIT_EVENT_HASH_GROW_BUCKETS_REINSERTING, + WAIT_EVENT_HASH_BATCH_ALLOCATE, + WAIT_EVENT_HASH_BATCH_ELECT, + WAIT_EVENT_HASH_BATCH_LOAD, + WAIT_EVENT_HASH_BUILD_ALLOCATE, + WAIT_EVENT_HASH_BUILD_ELECT, + WAIT_EVENT_HASH_BUILD_HASH_INNER, + WAIT_EVENT_HASH_BUILD_HASH_OUTER, + WAIT_EVENT_HASH_GROW_BATCHES_ALLOCATE, + WAIT_EVENT_HASH_GROW_BATCHES_DECIDE, + WAIT_EVENT_HASH_GROW_BATCHES_ELECT, + WAIT_EVENT_HASH_GROW_BATCHES_FINISH, + WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION, + WAIT_EVENT_HASH_GROW_BUCKETS_ALLOCATE, + WAIT_EVENT_HASH_GROW_BUCKETS_ELECT, + WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT, WAIT_EVENT_LOGICAL_SYNC_DATA, WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE, WAIT_EVENT_MQ_INTERNAL, @@ -879,6 +878,7 @@ typedef enum WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN, WAIT_EVENT_PARALLEL_FINISH, WAIT_EVENT_PROCARRAY_GROUP_UPDATE, + WAIT_EVENT_PROC_SIGNAL_BARRIER, WAIT_EVENT_PROMOTE, WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT, WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE, @@ -886,7 +886,8 @@ typedef enum WAIT_EVENT_REPLICATION_ORIGIN_DROP, WAIT_EVENT_REPLICATION_SLOT_DROP, WAIT_EVENT_SAFE_SNAPSHOT, - WAIT_EVENT_SYNC_REP + WAIT_EVENT_SYNC_REP, + WAIT_EVENT_XACT_GROUP_UPDATE } WaitEventIPC; /* ---------- @@ -943,7 +944,6 @@ typedef enum WAIT_EVENT_LOGICAL_REWRITE_SYNC, WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE, WAIT_EVENT_LOGICAL_REWRITE_WRITE, - WAIT_EVENT_PROC_SIGNAL_BARRIER, WAIT_EVENT_RELATION_MAP_READ, WAIT_EVENT_RELATION_MAP_SYNC, WAIT_EVENT_RELATION_MAP_WRITE, |