Hi,

On 9/5/23 7:44 AM, Michael Paquier wrote:
On Mon, Sep 04, 2023 at 02:14:58PM +0200, Drouvot, Bertrand wrote:
     # Build the descriptions.  There are in camel-case.
     # LWLock and Lock classes do not need any modifications.

Nit: 2 whitespaces before "There are in camel"

The whitespaces are intentional,

Oh ok, out of curiosity, why are 2 whitespaces intentional?

Then, the only diff is:

< Client,WalSenderWaitWal,Waiting for WAL to be flushed in WAL sender process
---
Client,WalSenderWaitForWAL,Waiting for WAL to be flushed in WAL sender process

That said, it looks good to me.

Ah, good catch.  I did not think about cross-checking the data in the
new view before and after the patch set.  This rename needs to happen
in 0001.

Please find v5 attached.  How does that look?

Thanks!

That looks good. I just noticed that v5 did re-introduce the "issue" that
was fixed in 00e49233a9.

Also, v5 needs a rebase due to f691f5b80a.

Attaching v6 taking care of the 2 points mentioned above.

Regards,

--
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com
From 6a94fc1a00ae784b12e15f498a5afba4020377f9 Mon Sep 17 00:00:00 2001
From: Michael Paquier <mich...@paquier.xyz>
Date: Tue, 5 Sep 2023 14:32:37 +0900
Subject: [PATCH v6 1/2] Rename wait events with more consistent camelcase
 style

This will help in the introduction of more simplifications with the
generation of wait event data using wait_event_names.txt.  The event
names used the same case-insensitive characters, hence applying lower()
or upper() to the monitoring queries allows the detection of the same
events as before this change.
---
 src/backend/libpq/pqmq.c                      |  2 +-
 src/backend/replication/walsender.c           |  2 +-
 src/backend/storage/ipc/shm_mq.c              |  6 +-
 .../utils/activity/wait_event_names.txt       | 90 +++++++++----------
 4 files changed, 50 insertions(+), 50 deletions(-)
   3.2% src/backend/storage/ipc/
  93.3% src/backend/utils/activity/
   3.3% src/backend/

diff --git a/src/backend/libpq/pqmq.c b/src/backend/libpq/pqmq.c
index 253181f47a..38b042804c 100644
--- a/src/backend/libpq/pqmq.c
+++ b/src/backend/libpq/pqmq.c
@@ -182,7 +182,7 @@ mq_putmessage(char msgtype, const char *s, size_t len)
                        break;
 
                (void) WaitLatch(MyLatch, WL_LATCH_SET | WL_EXIT_ON_PM_DEATH, 0,
-                                                WAIT_EVENT_MQ_PUT_MESSAGE);
+                                                
WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE);
                ResetLatch(MyLatch);
                CHECK_FOR_INTERRUPTS();
        }
diff --git a/src/backend/replication/walsender.c 
b/src/backend/replication/walsender.c
index 46e48492ac..e250b0567e 100644
--- a/src/backend/replication/walsender.c
+++ b/src/backend/replication/walsender.c
@@ -1654,7 +1654,7 @@ WalSndWaitForWal(XLogRecPtr loc)
                if (pq_is_send_pending())
                        wakeEvents |= WL_SOCKET_WRITEABLE;
 
-               WalSndWait(wakeEvents, sleeptime, 
WAIT_EVENT_WAL_SENDER_WAIT_WAL);
+               WalSndWait(wakeEvents, sleeptime, 
WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL);
        }
 
        /* reactivate latch so WalSndLoop knows to continue */
diff --git a/src/backend/storage/ipc/shm_mq.c b/src/backend/storage/ipc/shm_mq.c
index d134a09a19..06d6b73527 100644
--- a/src/backend/storage/ipc/shm_mq.c
+++ b/src/backend/storage/ipc/shm_mq.c
@@ -1017,7 +1017,7 @@ shm_mq_send_bytes(shm_mq_handle *mqh, Size nbytes, const 
void *data,
                         * cheaper than setting one that has been reset.
                         */
                        (void) WaitLatch(MyLatch, WL_LATCH_SET | 
WL_EXIT_ON_PM_DEATH, 0,
-                                                        WAIT_EVENT_MQ_SEND);
+                                                        
WAIT_EVENT_MESSAGE_QUEUE_SEND);
 
                        /* Reset the latch so we don't spin. */
                        ResetLatch(MyLatch);
@@ -1163,7 +1163,7 @@ shm_mq_receive_bytes(shm_mq_handle *mqh, Size 
bytes_needed, bool nowait,
                 * setting one that has been reset.
                 */
                (void) WaitLatch(MyLatch, WL_LATCH_SET | WL_EXIT_ON_PM_DEATH, 0,
-                                                WAIT_EVENT_MQ_RECEIVE);
+                                                
WAIT_EVENT_MESSAGE_QUEUE_RECEIVE);
 
                /* Reset the latch so we don't spin. */
                ResetLatch(MyLatch);
@@ -1252,7 +1252,7 @@ shm_mq_wait_internal(shm_mq *mq, PGPROC **ptr, 
BackgroundWorkerHandle *handle)
 
                /* Wait to be signaled. */
                (void) WaitLatch(MyLatch, WL_LATCH_SET | WL_EXIT_ON_PM_DEATH, 0,
-                                                WAIT_EVENT_MQ_INTERNAL);
+                                                
WAIT_EVENT_MESSAGE_QUEUE_INTERNAL);
 
                /* Reset the latch so we don't spin. */
                ResetLatch(MyLatch);
diff --git a/src/backend/utils/activity/wait_event_names.txt 
b/src/backend/utils/activity/wait_event_names.txt
index 06a1a3df9b..ca28d9e764 100644
--- a/src/backend/utils/activity/wait_event_names.txt
+++ b/src/backend/utils/activity/wait_event_names.txt
@@ -45,15 +45,15 @@
 Section: ClassName - WaitEventActivity
 
 WAIT_EVENT_ARCHIVER_MAIN       ArchiverMain    "Waiting in main loop of 
archiver process."
-WAIT_EVENT_AUTOVACUUM_MAIN     AutoVacuumMain  "Waiting in main loop of 
autovacuum launcher process."
-WAIT_EVENT_BGWRITER_HIBERNATE  BgWriterHibernate       "Waiting in background 
writer process, hibernating."
-WAIT_EVENT_BGWRITER_MAIN       BgWriterMain    "Waiting in main loop of 
background writer process."
+WAIT_EVENT_AUTOVACUUM_MAIN     AutovacuumMain  "Waiting in main loop of 
autovacuum launcher process."
+WAIT_EVENT_BGWRITER_HIBERNATE  BgwriterHibernate       "Waiting in background 
writer process, hibernating."
+WAIT_EVENT_BGWRITER_MAIN       BgwriterMain    "Waiting in main loop of 
background writer process."
 WAIT_EVENT_CHECKPOINTER_MAIN   CheckpointerMain        "Waiting in main loop 
of checkpointer process."
 WAIT_EVENT_LOGICAL_APPLY_MAIN  LogicalApplyMain        "Waiting in main loop 
of logical replication apply process."
 WAIT_EVENT_LOGICAL_LAUNCHER_MAIN       LogicalLauncherMain     "Waiting in 
main loop of logical replication launcher process."
 WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN LogicalParallelApplyMain        
"Waiting in main loop of logical replication parallel apply process."
 WAIT_EVENT_RECOVERY_WAL_STREAM RecoveryWalStream       "Waiting in main loop 
of startup process for WAL to arrive, during streaming recovery."
-WAIT_EVENT_SYSLOGGER_MAIN      SysLoggerMain   "Waiting in main loop of 
syslogger process."
+WAIT_EVENT_SYSLOGGER_MAIN      SysloggerMain   "Waiting in main loop of 
syslogger process."
 WAIT_EVENT_WAL_RECEIVER_MAIN   WalReceiverMain "Waiting in main loop of WAL 
receiver process."
 WAIT_EVENT_WAL_SENDER_MAIN     WalSenderMain   "Waiting in main loop of WAL 
sender process."
 WAIT_EVENT_WAL_WRITER_MAIN     WalWriterMain   "Waiting in main loop of WAL 
writer process."
@@ -71,11 +71,11 @@ Section: ClassName - WaitEventClient
 
 WAIT_EVENT_CLIENT_READ ClientRead      "Waiting to read data from the client."
 WAIT_EVENT_CLIENT_WRITE        ClientWrite     "Waiting to write data to the 
client."
-WAIT_EVENT_GSS_OPEN_SERVER     GSSOpenServer   "Waiting to read data from the 
client while establishing a GSSAPI session."
-WAIT_EVENT_LIBPQWALRECEIVER_CONNECT    LibPQWalReceiverConnect "Waiting in WAL 
receiver to establish connection to remote server."
-WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE    LibPQWalReceiverReceive "Waiting in WAL 
receiver to receive data from remote server."
-WAIT_EVENT_SSL_OPEN_SERVER     SSLOpenServer   "Waiting for SSL while 
attempting connection."
-WAIT_EVENT_WAL_SENDER_WAIT_WAL WalSenderWaitForWAL     "Waiting for WAL to be 
flushed in WAL sender process."
+WAIT_EVENT_GSS_OPEN_SERVER     GssOpenServer   "Waiting to read data from the 
client while establishing a GSSAPI session."
+WAIT_EVENT_LIBPQWALRECEIVER_CONNECT    LibpqwalreceiverConnect "Waiting in WAL 
receiver to establish connection to remote server."
+WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE    LibpqwalreceiverReceive "Waiting in WAL 
receiver to receive data from remote server."
+WAIT_EVENT_SSL_OPEN_SERVER     SslOpenServer   "Waiting for SSL while 
attempting connection."
+WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL     WalSenderWaitForWal     "Waiting for 
WAL to be flushed in WAL sender process."
 WAIT_EVENT_WAL_SENDER_WRITE_DATA       WalSenderWriteData      "Waiting for 
any activity when processing replies from WAL receiver in WAL sender process."
 
 
@@ -93,10 +93,10 @@ WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND  ArchiveCleanupCommand   
"Waiting for <xref link
 WAIT_EVENT_ARCHIVE_COMMAND     ArchiveCommand  "Waiting for <xref 
linkend="guc-archive-command"/> to complete."
 WAIT_EVENT_BACKEND_TERMINATION BackendTermination      "Waiting for the 
termination of another backend."
 WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE     BackupWaitWalArchive    "Waiting for 
WAL files required for a backup to be successfully archived."
-WAIT_EVENT_BGWORKER_SHUTDOWN   BgWorkerShutdown        "Waiting for background 
worker to shut down."
-WAIT_EVENT_BGWORKER_STARTUP    BgWorkerStartup "Waiting for background worker 
to start up."
+WAIT_EVENT_BGWORKER_SHUTDOWN   BgworkerShutdown        "Waiting for background 
worker to shut down."
+WAIT_EVENT_BGWORKER_STARTUP    BgworkerStartup "Waiting for background worker 
to start up."
 WAIT_EVENT_BTREE_PAGE  BtreePage       "Waiting for the page number needed to 
continue a parallel B-tree scan to become available."
-WAIT_EVENT_BUFFER_IO   BufferIO        "Waiting for buffer I/O to complete."
+WAIT_EVENT_BUFFER_IO   BufferIo        "Waiting for buffer I/O to complete."
 WAIT_EVENT_CHECKPOINT_DONE     CheckpointDone  "Waiting for a checkpoint to 
complete."
 WAIT_EVENT_CHECKPOINT_START    CheckpointStart "Waiting for a checkpoint to 
start."
 WAIT_EVENT_EXECUTE_GATHER      ExecuteGather   "Waiting for activity from a 
child process while executing a <literal>Gather</literal> plan node."
@@ -119,14 +119,14 @@ WAIT_EVENT_LOGICAL_APPLY_SEND_DATA        
LogicalApplySendData    "Waiting for a logical r
 WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE LogicalParallelApplyStateChange 
"Waiting for a logical replication parallel apply process to change state."
 WAIT_EVENT_LOGICAL_SYNC_DATA   LogicalSyncData "Waiting for a logical 
replication remote server to send data for initial table synchronization."
 WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE   LogicalSyncStateChange  "Waiting for a 
logical replication remote server to change state."
-WAIT_EVENT_MQ_INTERNAL MessageQueueInternal    "Waiting for another process to 
be attached to a shared message queue."
-WAIT_EVENT_MQ_PUT_MESSAGE      MessageQueuePutMessage  "Waiting to write a 
protocol message to a shared message queue."
-WAIT_EVENT_MQ_RECEIVE  MessageQueueReceive     "Waiting to receive bytes from 
a shared message queue."
-WAIT_EVENT_MQ_SEND     MessageQueueSend        "Waiting to send bytes to a 
shared message queue."
+WAIT_EVENT_MESSAGE_QUEUE_INTERNAL      MessageQueueInternal    "Waiting for 
another process to be attached to a shared message queue."
+WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE   MessageQueuePutMessage  "Waiting to 
write a protocol message to a shared message queue."
+WAIT_EVENT_MESSAGE_QUEUE_RECEIVE       MessageQueueReceive     "Waiting to 
receive bytes from a shared message queue."
+WAIT_EVENT_MESSAGE_QUEUE_SEND  MessageQueueSend        "Waiting to send bytes 
to a shared message queue."
 WAIT_EVENT_PARALLEL_BITMAP_SCAN        ParallelBitmapScan      "Waiting for 
parallel bitmap scan to become initialized."
 WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN  ParallelCreateIndexScan "Waiting for 
parallel <command>CREATE INDEX</command> workers to finish heap scan."
 WAIT_EVENT_PARALLEL_FINISH     ParallelFinish  "Waiting for parallel workers 
to finish computing."
-WAIT_EVENT_PROCARRAY_GROUP_UPDATE      ProcArrayGroupUpdate    "Waiting for 
the group leader to clear the transaction ID at end of a parallel operation."
+WAIT_EVENT_PROCARRAY_GROUP_UPDATE      ProcarrayGroupUpdate    "Waiting for 
the group leader to clear the transaction ID at end of a parallel operation."
 WAIT_EVENT_PROC_SIGNAL_BARRIER ProcSignalBarrier       "Waiting for a barrier 
event to be processed by all backends."
 WAIT_EVENT_PROMOTE     Promote "Waiting for standby promotion."
 WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT  RecoveryConflictSnapshot        
"Waiting for recovery conflict resolution for a vacuum cleanup."
@@ -170,12 +170,12 @@ WAIT_EVENT_VACUUM_TRUNCATE        VacuumTruncate  
"Waiting to acquire an exclusive lock
 
 Section: ClassName - WaitEventIO
 
-WAIT_EVENT_BASEBACKUP_READ     BaseBackupRead  "Waiting for base backup to 
read from a file."
-WAIT_EVENT_BASEBACKUP_SYNC     BaseBackupSync  "Waiting for data written by a 
base backup to reach durable storage."
-WAIT_EVENT_BASEBACKUP_WRITE    BaseBackupWrite "Waiting for base backup to 
write to a file."
-WAIT_EVENT_BUFFILE_READ        BufFileRead     "Waiting for a read from a 
buffered file."
-WAIT_EVENT_BUFFILE_WRITE       BufFileWrite    "Waiting for a write to a 
buffered file."
-WAIT_EVENT_BUFFILE_TRUNCATE    BufFileTruncate "Waiting for a buffered file to 
be truncated."
+WAIT_EVENT_BASEBACKUP_READ     BasebackupRead  "Waiting for base backup to 
read from a file."
+WAIT_EVENT_BASEBACKUP_SYNC     BasebackupSync  "Waiting for data written by a 
base backup to reach durable storage."
+WAIT_EVENT_BASEBACKUP_WRITE    BasebackupWrite "Waiting for base backup to 
write to a file."
+WAIT_EVENT_BUFFILE_READ        BuffileRead     "Waiting for a read from a 
buffered file."
+WAIT_EVENT_BUFFILE_WRITE       BuffileWrite    "Waiting for a write to a 
buffered file."
+WAIT_EVENT_BUFFILE_TRUNCATE    BuffileTruncate "Waiting for a buffered file to 
be truncated."
 WAIT_EVENT_CONTROL_FILE_READ   ControlFileRead "Waiting for a read from the 
<filename>pg_control</filename> file."
 WAIT_EVENT_CONTROL_FILE_SYNC   ControlFileSync "Waiting for the 
<filename>pg_control</filename> file to reach durable storage."
 WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE    ControlFileSyncUpdate   "Waiting for an 
update to the <filename>pg_control</filename> file to reach durable storage."
@@ -191,15 +191,15 @@ WAIT_EVENT_DATA_FILE_READ DataFileRead    "Waiting for a 
read from a relation data
 WAIT_EVENT_DATA_FILE_SYNC      DataFileSync    "Waiting for changes to a 
relation data file to reach durable storage."
 WAIT_EVENT_DATA_FILE_TRUNCATE  DataFileTruncate        "Waiting for a relation 
data file to be truncated."
 WAIT_EVENT_DATA_FILE_WRITE     DataFileWrite   "Waiting for a write to a 
relation data file."
-WAIT_EVENT_DSM_ALLOCATE        DSMAllocate     "Waiting for a dynamic shared 
memory segment to be allocated."
-WAIT_EVENT_DSM_FILL_ZERO_WRITE DSMFillZeroWrite        "Waiting to fill a 
dynamic shared memory backing file with zeroes."
-WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ LockFileAddToDataDirRead        
"Waiting for a read while adding a line to the data directory lock file."
-WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC LockFileAddToDataDirSync        
"Waiting for data to reach durable storage while adding a line to the data 
directory lock file."
-WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE        LockFileAddToDataDirWrite       
"Waiting for a write while adding a line to the data directory lock file."
+WAIT_EVENT_DSM_ALLOCATE        DsmAllocate     "Waiting for a dynamic shared 
memory segment to be allocated."
+WAIT_EVENT_DSM_FILL_ZERO_WRITE DsmFillZeroWrite        "Waiting to fill a 
dynamic shared memory backing file with zeroes."
+WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ LockFileAddtodatadirRead        
"Waiting for a read while adding a line to the data directory lock file."
+WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC LockFileAddtodatadirSync        
"Waiting for data to reach durable storage while adding a line to the data 
directory lock file."
+WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE        LockFileAddtodatadirWrite       
"Waiting for a write while adding a line to the data directory lock file."
 WAIT_EVENT_LOCK_FILE_CREATE_READ       LockFileCreateRead      "Waiting to 
read while creating the data directory lock file."
 WAIT_EVENT_LOCK_FILE_CREATE_SYNC       LockFileCreateSync      "Waiting for 
data to reach durable storage while creating the data directory lock file."
 WAIT_EVENT_LOCK_FILE_CREATE_WRITE      LockFileCreateWrite     "Waiting for a 
write while creating the data directory lock file."
-WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ       LockFileReCheckDataDirRead      
"Waiting for a read during recheck of the data directory lock file."
+WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ       LockFileRecheckdatadirRead      
"Waiting for a read during recheck of the data directory lock file."
 WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC     LogicalRewriteCheckpointSync    
"Waiting for logical rewrite mappings to reach durable storage during a 
checkpoint."
 WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC        LogicalRewriteMappingSync       
"Waiting for mapping data to reach durable storage during a logical rewrite."
 WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE       LogicalRewriteMappingWrite      
"Waiting for a write of mapping data during a logical rewrite."
@@ -216,10 +216,10 @@ WAIT_EVENT_REPLICATION_SLOT_READ  ReplicationSlotRead     
"Waiting for a read from a
 WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC       ReplicationSlotRestoreSync      
"Waiting for a replication slot control file to reach durable storage while 
restoring it to memory."
 WAIT_EVENT_REPLICATION_SLOT_SYNC       ReplicationSlotSync     "Waiting for a 
replication slot control file to reach durable storage."
 WAIT_EVENT_REPLICATION_SLOT_WRITE      ReplicationSlotWrite    "Waiting for a 
write to a replication slot control file."
-WAIT_EVENT_SLRU_FLUSH_SYNC     SLRUFlushSync   "Waiting for SLRU data to reach 
durable storage during a checkpoint or database shutdown."
-WAIT_EVENT_SLRU_READ   SLRURead        "Waiting for a read of an SLRU page."
-WAIT_EVENT_SLRU_SYNC   SLRUSync        "Waiting for SLRU data to reach durable 
storage following a page write."
-WAIT_EVENT_SLRU_WRITE  SLRUWrite       "Waiting for a write of an SLRU page."
+WAIT_EVENT_SLRU_FLUSH_SYNC     SlruFlushSync   "Waiting for SLRU data to reach 
durable storage during a checkpoint or database shutdown."
+WAIT_EVENT_SLRU_READ   SlruRead        "Waiting for a read of an SLRU page."
+WAIT_EVENT_SLRU_SYNC   SlruSync        "Waiting for SLRU data to reach durable 
storage following a page write."
+WAIT_EVENT_SLRU_WRITE  SlruWrite       "Waiting for a write of an SLRU page."
 WAIT_EVENT_SNAPBUILD_READ      SnapbuildRead   "Waiting for a read of a 
serialized historical catalog snapshot."
 WAIT_EVENT_SNAPBUILD_SYNC      SnapbuildSync   "Waiting for a serialized 
historical catalog snapshot to reach durable storage."
 WAIT_EVENT_SNAPBUILD_WRITE     SnapbuildWrite  "Waiting for a write of a 
serialized historical catalog snapshot."
@@ -232,18 +232,18 @@ WAIT_EVENT_TWOPHASE_FILE_READ     TwophaseFileRead        
"Waiting for a read of a two phas
 WAIT_EVENT_TWOPHASE_FILE_SYNC  TwophaseFileSync        "Waiting for a two 
phase state file to reach durable storage."
 WAIT_EVENT_TWOPHASE_FILE_WRITE TwophaseFileWrite       "Waiting for a write of 
a two phase state file."
 WAIT_EVENT_VERSION_FILE_WRITE  VersionFileWrite        "Waiting for the 
version file to be written while creating a database."
-WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ     WALSenderTimelineHistoryRead    
"Waiting for a read from a timeline history file during a walsender timeline 
command."
-WAIT_EVENT_WAL_BOOTSTRAP_SYNC  WALBootstrapSync        "Waiting for WAL to 
reach durable storage during bootstrapping."
-WAIT_EVENT_WAL_BOOTSTRAP_WRITE WALBootstrapWrite       "Waiting for a write of 
a WAL page during bootstrapping."
-WAIT_EVENT_WAL_COPY_READ       WALCopyRead     "Waiting for a read when 
creating a new WAL segment by copying an existing one."
-WAIT_EVENT_WAL_COPY_SYNC       WALCopySync     "Waiting for a new WAL segment 
created by copying an existing one to reach durable storage."
-WAIT_EVENT_WAL_COPY_WRITE      WALCopyWrite    "Waiting for a write when 
creating a new WAL segment by copying an existing one."
-WAIT_EVENT_WAL_INIT_SYNC       WALInitSync     "Waiting for a newly 
initialized WAL file to reach durable storage."
-WAIT_EVENT_WAL_INIT_WRITE      WALInitWrite    "Waiting for a write while 
initializing a new WAL file."
-WAIT_EVENT_WAL_READ    WALRead "Waiting for a read from a WAL file."
-WAIT_EVENT_WAL_SYNC    WALSync "Waiting for a WAL file to reach durable 
storage."
-WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN      WALSyncMethodAssign     "Waiting for 
data to reach durable storage while assigning a new WAL sync method."
-WAIT_EVENT_WAL_WRITE   WALWrite        "Waiting for a write to a WAL file."
+WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ     WalsenderTimelineHistoryRead    
"Waiting for a read from a timeline history file during a walsender timeline 
command."
+WAIT_EVENT_WAL_BOOTSTRAP_SYNC  WalBootstrapSync        "Waiting for WAL to 
reach durable storage during bootstrapping."
+WAIT_EVENT_WAL_BOOTSTRAP_WRITE WalBootstrapWrite       "Waiting for a write of 
a WAL page during bootstrapping."
+WAIT_EVENT_WAL_COPY_READ       WalCopyRead     "Waiting for a read when 
creating a new WAL segment by copying an existing one."
+WAIT_EVENT_WAL_COPY_SYNC       WalCopySync     "Waiting for a new WAL segment 
created by copying an existing one to reach durable storage."
+WAIT_EVENT_WAL_COPY_WRITE      WalCopyWrite    "Waiting for a write when 
creating a new WAL segment by copying an existing one."
+WAIT_EVENT_WAL_INIT_SYNC       WalInitSync     "Waiting for a newly 
initialized WAL file to reach durable storage."
+WAIT_EVENT_WAL_INIT_WRITE      WalInitWrite    "Waiting for a write while 
initializing a new WAL file."
+WAIT_EVENT_WAL_READ    WalRead "Waiting for a read from a WAL file."
+WAIT_EVENT_WAL_SYNC    WalSync "Waiting for a WAL file to reach durable 
storage."
+WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN      WalSyncMethodAssign     "Waiting for 
data to reach durable storage while assigning a new WAL sync method."
+WAIT_EVENT_WAL_WRITE   WalWrite        "Waiting for a write to a WAL file."
 
 
 #
-- 
2.34.1

From 6e32a44cf27ddde43445a67a2b3f5e2adad6170c Mon Sep 17 00:00:00 2001
From: Michael Paquier <mich...@paquier.xyz>
Date: Tue, 5 Sep 2023 14:39:58 +0900
Subject: [PATCH v6 2/2] Remove column for wait event names in
 wait_event_names.txt

This file is now made of two columns, removing the column listing the
descriptions for each wait event class:
- Typedef enum definition, without the prefix "WAIT_EVENT_", for
simplicity.
- Description in the documentation.

The wait event names are generated from the enum objects in camelcase, with
the underscores removed.
---
 .../activity/generate-wait_event_types.pl     |  40 +-
 .../utils/activity/wait_event_names.txt       | 502 +++++++++---------
 2 files changed, 279 insertions(+), 263 deletions(-)
 100.0% src/backend/utils/activity/

diff --git a/src/backend/utils/activity/generate-wait_event_types.pl 
b/src/backend/utils/activity/generate-wait_event_types.pl
index 23eb3b1f57..046be2cb70 100644
--- a/src/backend/utils/activity/generate-wait_event_types.pl
+++ b/src/backend/utils/activity/generate-wait_event_types.pl
@@ -65,29 +65,45 @@ while (<$wait_event_names>)
        push(@lines, $section_name . "\t" . $_);
 }
 
-# Sort the lines based on the third column.
+# Sort the lines based on the second column.
 # uc() is being used to force the comparison to be case-insensitive.
 my @lines_sorted =
-  sort { uc((split(/\t/, $a))[2]) cmp uc((split(/\t/, $b))[2]) } @lines;
+  sort { uc((split(/\t/, $a))[1]) cmp uc((split(/\t/, $b))[1]) } @lines;
 
 # Read the sorted lines and populate the hash table
 foreach my $line (@lines_sorted)
 {
        die "unable to parse wait_event_names.txt for line $line\n"
-         unless $line =~ /^(\w+)\t+(\w+)\t+(\w+)\t+("\w.*\.")$/;
+         unless $line =~ /^(\w+)\t+(\w+)\t+("\w.*\.")$/;
 
-       (   my $waitclassname,
-               my $waiteventenumname,
-               my $waiteventdescription,
-               my $waitevendocsentence) = split(/\t/, $line);
+       (my $waitclassname, my $waiteventname, my $waitevendocsentence) =
+         split(/\t/, $line);
 
+       # Generate the element name for the enums based on the
+       # description.  The C symbols are prefixed with "WAIT_EVENT_".
+       my $waiteventenumname = "WAIT_EVENT_$waiteventname";
+
+       # Build the descriptions.  These are in camel-case.
+       # LWLock and Lock classes do not need any modifications.
+       my $waiteventdescription = '';
+       if (   $waitclassname eq 'WaitEventLWLock'
+               || $waitclassname eq 'WaitEventLock')
+       {
+               $waiteventdescription = $waiteventname;
+       }
+       else
+       {
+               my @waiteventparts = split("_", $waiteventname);
+               foreach my $waiteventpart (@waiteventparts)
+               {
+                       $waiteventdescription .= substr($waiteventpart, 0, 1)
+                         . lc(substr($waiteventpart, 1, 
length($waiteventpart)));
+               }
+       }
+
+       # Store the event into the list for each class.
        my @waiteventlist =
          [ $waiteventenumname, $waiteventdescription, $waitevendocsentence ];
-       my $trimmedwaiteventname = $waiteventenumname;
-       $trimmedwaiteventname =~ s/^WAIT_EVENT_//;
-
-       die "wait event names must start with 'WAIT_EVENT_'"
-         if ($trimmedwaiteventname eq $waiteventenumname);
        push(@{ $hashwe{$waitclassname} }, @waiteventlist);
 }
 
diff --git a/src/backend/utils/activity/wait_event_names.txt 
b/src/backend/utils/activity/wait_event_names.txt
index ca28d9e764..9c5fdeb3ca 100644
--- a/src/backend/utils/activity/wait_event_names.txt
+++ b/src/backend/utils/activity/wait_event_names.txt
@@ -7,6 +7,11 @@
 # This list serves as the basis for generating source and documentation files
 # related to wait events.
 #
+# This file defines one wait event per line, with the following
+# tab-separated fields:
+#
+#   "Typedef enum definitions" "description in the docs"
+#
 # The files generated from this one are:
 #
 #   src/backend/utils/activity/wait_event_types.h
@@ -18,11 +23,6 @@
 #   src/backend/utils/activity/wait_event_types.sgml
 #      SGML tables of wait events for inclusion in the documentation.
 #
-# This file defines one wait event per line, with the following
-# tab-separated fields:
-#
-#   "C symbol in enums" "format in the system views" "description in the docs"
-#
 # When adding a new wait event, make sure it is placed in the appropriate
 # ClassName section.
 #
@@ -44,19 +44,19 @@
 
 Section: ClassName - WaitEventActivity
 
-WAIT_EVENT_ARCHIVER_MAIN       ArchiverMain    "Waiting in main loop of 
archiver process."
-WAIT_EVENT_AUTOVACUUM_MAIN     AutovacuumMain  "Waiting in main loop of 
autovacuum launcher process."
-WAIT_EVENT_BGWRITER_HIBERNATE  BgwriterHibernate       "Waiting in background 
writer process, hibernating."
-WAIT_EVENT_BGWRITER_MAIN       BgwriterMain    "Waiting in main loop of 
background writer process."
-WAIT_EVENT_CHECKPOINTER_MAIN   CheckpointerMain        "Waiting in main loop 
of checkpointer process."
-WAIT_EVENT_LOGICAL_APPLY_MAIN  LogicalApplyMain        "Waiting in main loop 
of logical replication apply process."
-WAIT_EVENT_LOGICAL_LAUNCHER_MAIN       LogicalLauncherMain     "Waiting in 
main loop of logical replication launcher process."
-WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN LogicalParallelApplyMain        
"Waiting in main loop of logical replication parallel apply process."
-WAIT_EVENT_RECOVERY_WAL_STREAM RecoveryWalStream       "Waiting in main loop 
of startup process for WAL to arrive, during streaming recovery."
-WAIT_EVENT_SYSLOGGER_MAIN      SysloggerMain   "Waiting in main loop of 
syslogger process."
-WAIT_EVENT_WAL_RECEIVER_MAIN   WalReceiverMain "Waiting in main loop of WAL 
receiver process."
-WAIT_EVENT_WAL_SENDER_MAIN     WalSenderMain   "Waiting in main loop of WAL 
sender process."
-WAIT_EVENT_WAL_WRITER_MAIN     WalWriterMain   "Waiting in main loop of WAL 
writer process."
+ARCHIVER_MAIN  "Waiting in main loop of archiver process."
+AUTOVACUUM_MAIN        "Waiting in main loop of autovacuum launcher process."
+BGWRITER_HIBERNATE     "Waiting in background writer process, hibernating."
+BGWRITER_MAIN  "Waiting in main loop of background writer process."
+CHECKPOINTER_MAIN      "Waiting in main loop of checkpointer process."
+LOGICAL_APPLY_MAIN     "Waiting in main loop of logical replication apply 
process."
+LOGICAL_LAUNCHER_MAIN  "Waiting in main loop of logical replication launcher 
process."
+LOGICAL_PARALLEL_APPLY_MAIN    "Waiting in main loop of logical replication 
parallel apply process."
+RECOVERY_WAL_STREAM    "Waiting in main loop of startup process for WAL to 
arrive, during streaming recovery."
+SYSLOGGER_MAIN "Waiting in main loop of syslogger process."
+WAL_RECEIVER_MAIN      "Waiting in main loop of WAL receiver process."
+WAL_SENDER_MAIN        "Waiting in main loop of WAL sender process."
+WAL_WRITER_MAIN        "Waiting in main loop of WAL writer process."
 
 
 #
@@ -69,14 +69,14 @@ WAIT_EVENT_WAL_WRITER_MAIN  WalWriterMain   "Waiting in 
main loop of WAL writer pro
 
 Section: ClassName - WaitEventClient
 
-WAIT_EVENT_CLIENT_READ ClientRead      "Waiting to read data from the client."
-WAIT_EVENT_CLIENT_WRITE        ClientWrite     "Waiting to write data to the 
client."
-WAIT_EVENT_GSS_OPEN_SERVER     GssOpenServer   "Waiting to read data from the 
client while establishing a GSSAPI session."
-WAIT_EVENT_LIBPQWALRECEIVER_CONNECT    LibpqwalreceiverConnect "Waiting in WAL 
receiver to establish connection to remote server."
-WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE    LibpqwalreceiverReceive "Waiting in WAL 
receiver to receive data from remote server."
-WAIT_EVENT_SSL_OPEN_SERVER     SslOpenServer   "Waiting for SSL while 
attempting connection."
-WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL     WalSenderWaitForWal     "Waiting for 
WAL to be flushed in WAL sender process."
-WAIT_EVENT_WAL_SENDER_WRITE_DATA       WalSenderWriteData      "Waiting for 
any activity when processing replies from WAL receiver in WAL sender process."
+CLIENT_READ    "Waiting to read data from the client."
+CLIENT_WRITE   "Waiting to write data to the client."
+GSS_OPEN_SERVER        "Waiting to read data from the client while 
establishing a GSSAPI session."
+LIBPQWALRECEIVER_CONNECT       "Waiting in WAL receiver to establish 
connection to remote server."
+LIBPQWALRECEIVER_RECEIVE       "Waiting in WAL receiver to receive data from 
remote server."
+SSL_OPEN_SERVER        "Waiting for SSL while attempting connection."
+WAL_SENDER_WAIT_FOR_WAL        "Waiting for WAL to be flushed in WAL sender 
process."
+WAL_SENDER_WRITE_DATA  "Waiting for any activity when processing replies from 
WAL receiver in WAL sender process."
 
 
 #
@@ -88,59 +88,59 @@ WAIT_EVENT_WAL_SENDER_WRITE_DATA    WalSenderWriteData      
"Waiting for any activity wh
 
 Section: ClassName - WaitEventIPC
 
-WAIT_EVENT_APPEND_READY        AppendReady     "Waiting for subplan nodes of 
an <literal>Append</literal> plan node to be ready."
-WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND     ArchiveCleanupCommand   "Waiting for 
<xref linkend="guc-archive-cleanup-command"/> to complete."
-WAIT_EVENT_ARCHIVE_COMMAND     ArchiveCommand  "Waiting for <xref 
linkend="guc-archive-command"/> to complete."
-WAIT_EVENT_BACKEND_TERMINATION BackendTermination      "Waiting for the 
termination of another backend."
-WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE     BackupWaitWalArchive    "Waiting for 
WAL files required for a backup to be successfully archived."
-WAIT_EVENT_BGWORKER_SHUTDOWN   BgworkerShutdown        "Waiting for background 
worker to shut down."
-WAIT_EVENT_BGWORKER_STARTUP    BgworkerStartup "Waiting for background worker 
to start up."
-WAIT_EVENT_BTREE_PAGE  BtreePage       "Waiting for the page number needed to 
continue a parallel B-tree scan to become available."
-WAIT_EVENT_BUFFER_IO   BufferIo        "Waiting for buffer I/O to complete."
-WAIT_EVENT_CHECKPOINT_DONE     CheckpointDone  "Waiting for a checkpoint to 
complete."
-WAIT_EVENT_CHECKPOINT_START    CheckpointStart "Waiting for a checkpoint to 
start."
-WAIT_EVENT_EXECUTE_GATHER      ExecuteGather   "Waiting for activity from a 
child process while executing a <literal>Gather</literal> plan node."
-WAIT_EVENT_HASH_BATCH_ALLOCATE HashBatchAllocate       "Waiting for an elected 
Parallel Hash participant to allocate a hash table."
-WAIT_EVENT_HASH_BATCH_ELECT    HashBatchElect  "Waiting to elect a Parallel 
Hash participant to allocate a hash table."
-WAIT_EVENT_HASH_BATCH_LOAD     HashBatchLoad   "Waiting for other Parallel 
Hash participants to finish loading a hash table."
-WAIT_EVENT_HASH_BUILD_ALLOCATE HashBuildAllocate       "Waiting for an elected 
Parallel Hash participant to allocate the initial hash table."
-WAIT_EVENT_HASH_BUILD_ELECT    HashBuildElect  "Waiting to elect a Parallel 
Hash participant to allocate the initial hash table."
-WAIT_EVENT_HASH_BUILD_HASH_INNER       HashBuildHashInner      "Waiting for 
other Parallel Hash participants to finish hashing the inner relation."
-WAIT_EVENT_HASH_BUILD_HASH_OUTER       HashBuildHashOuter      "Waiting for 
other Parallel Hash participants to finish partitioning the outer relation."
-WAIT_EVENT_HASH_GROW_BATCHES_DECIDE    HashGrowBatchesDecide   "Waiting to 
elect a Parallel Hash participant to decide on future batch growth."
-WAIT_EVENT_HASH_GROW_BATCHES_ELECT     HashGrowBatchesElect    "Waiting to 
elect a Parallel Hash participant to allocate more batches."
-WAIT_EVENT_HASH_GROW_BATCHES_FINISH    HashGrowBatchesFinish   "Waiting for an 
elected Parallel Hash participant to decide on future batch growth."
-WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE        HashGrowBatchesReallocate       
"Waiting for an elected Parallel Hash participant to allocate more batches."
-WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION       HashGrowBatchesRepartition      
"Waiting for other Parallel Hash participants to finish repartitioning."
-WAIT_EVENT_HASH_GROW_BUCKETS_ELECT     HashGrowBucketsElect    "Waiting to 
elect a Parallel Hash participant to allocate more buckets."
-WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE        HashGrowBucketsReallocate       
"Waiting for an elected Parallel Hash participant to finish allocating more 
buckets."
-WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT  HashGrowBucketsReinsert "Waiting for 
other Parallel Hash participants to finish inserting tuples into new buckets."
-WAIT_EVENT_LOGICAL_APPLY_SEND_DATA     LogicalApplySendData    "Waiting for a 
logical replication leader apply process to send data to a parallel apply 
process."
-WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE LogicalParallelApplyStateChange 
"Waiting for a logical replication parallel apply process to change state."
-WAIT_EVENT_LOGICAL_SYNC_DATA   LogicalSyncData "Waiting for a logical 
replication remote server to send data for initial table synchronization."
-WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE   LogicalSyncStateChange  "Waiting for a 
logical replication remote server to change state."
-WAIT_EVENT_MESSAGE_QUEUE_INTERNAL      MessageQueueInternal    "Waiting for 
another process to be attached to a shared message queue."
-WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE   MessageQueuePutMessage  "Waiting to 
write a protocol message to a shared message queue."
-WAIT_EVENT_MESSAGE_QUEUE_RECEIVE       MessageQueueReceive     "Waiting to 
receive bytes from a shared message queue."
-WAIT_EVENT_MESSAGE_QUEUE_SEND  MessageQueueSend        "Waiting to send bytes 
to a shared message queue."
-WAIT_EVENT_PARALLEL_BITMAP_SCAN        ParallelBitmapScan      "Waiting for 
parallel bitmap scan to become initialized."
-WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN  ParallelCreateIndexScan "Waiting for 
parallel <command>CREATE INDEX</command> workers to finish heap scan."
-WAIT_EVENT_PARALLEL_FINISH     ParallelFinish  "Waiting for parallel workers 
to finish computing."
-WAIT_EVENT_PROCARRAY_GROUP_UPDATE      ProcarrayGroupUpdate    "Waiting for 
the group leader to clear the transaction ID at end of a parallel operation."
-WAIT_EVENT_PROC_SIGNAL_BARRIER ProcSignalBarrier       "Waiting for a barrier 
event to be processed by all backends."
-WAIT_EVENT_PROMOTE     Promote "Waiting for standby promotion."
-WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT  RecoveryConflictSnapshot        
"Waiting for recovery conflict resolution for a vacuum cleanup."
-WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE        RecoveryConflictTablespace      
"Waiting for recovery conflict resolution for dropping a tablespace."
-WAIT_EVENT_RECOVERY_END_COMMAND        RecoveryEndCommand      "Waiting for 
<xref linkend="guc-recovery-end-command"/> to complete."
-WAIT_EVENT_RECOVERY_PAUSE      RecoveryPause   "Waiting for recovery to be 
resumed."
-WAIT_EVENT_REPLICATION_ORIGIN_DROP     ReplicationOriginDrop   "Waiting for a 
replication origin to become inactive so it can be dropped."
-WAIT_EVENT_REPLICATION_SLOT_DROP       ReplicationSlotDrop     "Waiting for a 
replication slot to become inactive so it can be dropped."
-WAIT_EVENT_RESTORE_COMMAND     RestoreCommand  "Waiting for <xref 
linkend="guc-restore-command"/> to complete."
-WAIT_EVENT_SAFE_SNAPSHOT       SafeSnapshot    "Waiting to obtain a valid 
snapshot for a <literal>READ ONLY DEFERRABLE</literal> transaction."
-WAIT_EVENT_SYNC_REP    SyncRep "Waiting for confirmation from a remote server 
during synchronous replication."
-WAIT_EVENT_WAL_RECEIVER_EXIT   WalReceiverExit "Waiting for the WAL receiver 
to exit."
-WAIT_EVENT_WAL_RECEIVER_WAIT_START     WalReceiverWaitStart    "Waiting for 
startup process to send initial data for streaming replication."
-WAIT_EVENT_XACT_GROUP_UPDATE   XactGroupUpdate "Waiting for the group leader 
to update transaction status at end of a parallel operation."
+APPEND_READY   "Waiting for subplan nodes of an <literal>Append</literal> plan 
node to be ready."
+ARCHIVE_CLEANUP_COMMAND        "Waiting for <xref 
linkend="guc-archive-cleanup-command"/> to complete."
+ARCHIVE_COMMAND        "Waiting for <xref linkend="guc-archive-command"/> to 
complete."
+BACKEND_TERMINATION    "Waiting for the termination of another backend."
+BACKUP_WAIT_WAL_ARCHIVE        "Waiting for WAL files required for a backup to 
be successfully archived."
+BGWORKER_SHUTDOWN      "Waiting for background worker to shut down."
+BGWORKER_STARTUP       "Waiting for background worker to start up."
+BTREE_PAGE     "Waiting for the page number needed to continue a parallel 
B-tree scan to become available."
+BUFFER_IO      "Waiting for buffer I/O to complete."
+CHECKPOINT_DONE        "Waiting for a checkpoint to complete."
+CHECKPOINT_START       "Waiting for a checkpoint to start."
+EXECUTE_GATHER "Waiting for activity from a child process while executing a 
<literal>Gather</literal> plan node."
+HASH_BATCH_ALLOCATE    "Waiting for an elected Parallel Hash participant to 
allocate a hash table."
+HASH_BATCH_ELECT       "Waiting to elect a Parallel Hash participant to 
allocate a hash table."
+HASH_BATCH_LOAD        "Waiting for other Parallel Hash participants to finish 
loading a hash table."
+HASH_BUILD_ALLOCATE    "Waiting for an elected Parallel Hash participant to 
allocate the initial hash table."
+HASH_BUILD_ELECT       "Waiting to elect a Parallel Hash participant to 
allocate the initial hash table."
+HASH_BUILD_HASH_INNER  "Waiting for other Parallel Hash participants to finish 
hashing the inner relation."
+HASH_BUILD_HASH_OUTER  "Waiting for other Parallel Hash participants to finish 
partitioning the outer relation."
+HASH_GROW_BATCHES_DECIDE       "Waiting to elect a Parallel Hash participant 
to decide on future batch growth."
+HASH_GROW_BATCHES_ELECT        "Waiting to elect a Parallel Hash participant 
to allocate more batches."
+HASH_GROW_BATCHES_FINISH       "Waiting for an elected Parallel Hash 
participant to decide on future batch growth."
+HASH_GROW_BATCHES_REALLOCATE   "Waiting for an elected Parallel Hash 
participant to allocate more batches."
+HASH_GROW_BATCHES_REPARTITION  "Waiting for other Parallel Hash participants 
to finish repartitioning."
+HASH_GROW_BUCKETS_ELECT        "Waiting to elect a Parallel Hash participant 
to allocate more buckets."
+HASH_GROW_BUCKETS_REALLOCATE   "Waiting for an elected Parallel Hash 
participant to finish allocating more buckets."
+HASH_GROW_BUCKETS_REINSERT     "Waiting for other Parallel Hash participants 
to finish inserting tuples into new buckets."
+LOGICAL_APPLY_SEND_DATA        "Waiting for a logical replication leader apply 
process to send data to a parallel apply process."
+LOGICAL_PARALLEL_APPLY_STATE_CHANGE    "Waiting for a logical replication 
parallel apply process to change state."
+LOGICAL_SYNC_DATA      "Waiting for a logical replication remote server to 
send data for initial table synchronization."
+LOGICAL_SYNC_STATE_CHANGE      "Waiting for a logical replication remote 
server to change state."
+MESSAGE_QUEUE_INTERNAL "Waiting for another process to be attached to a shared 
message queue."
+MESSAGE_QUEUE_PUT_MESSAGE      "Waiting to write a protocol message to a 
shared message queue."
+MESSAGE_QUEUE_RECEIVE  "Waiting to receive bytes from a shared message queue."
+MESSAGE_QUEUE_SEND     "Waiting to send bytes to a shared message queue."
+PARALLEL_BITMAP_SCAN   "Waiting for parallel bitmap scan to become 
initialized."
+PARALLEL_CREATE_INDEX_SCAN     "Waiting for parallel <command>CREATE 
INDEX</command> workers to finish heap scan."
+PARALLEL_FINISH        "Waiting for parallel workers to finish computing."
+PROCARRAY_GROUP_UPDATE "Waiting for the group leader to clear the transaction 
ID at end of a parallel operation."
+PROC_SIGNAL_BARRIER    "Waiting for a barrier event to be processed by all 
backends."
+PROMOTE        "Waiting for standby promotion."
+RECOVERY_CONFLICT_SNAPSHOT     "Waiting for recovery conflict resolution for a 
vacuum cleanup."
+RECOVERY_CONFLICT_TABLESPACE   "Waiting for recovery conflict resolution for 
dropping a tablespace."
+RECOVERY_END_COMMAND   "Waiting for <xref linkend="guc-recovery-end-command"/> 
to complete."
+RECOVERY_PAUSE "Waiting for recovery to be resumed."
+REPLICATION_ORIGIN_DROP        "Waiting for a replication origin to become 
inactive so it can be dropped."
+REPLICATION_SLOT_DROP  "Waiting for a replication slot to become inactive so 
it can be dropped."
+RESTORE_COMMAND        "Waiting for <xref linkend="guc-restore-command"/> to 
complete."
+SAFE_SNAPSHOT  "Waiting to obtain a valid snapshot for a <literal>READ ONLY 
DEFERRABLE</literal> transaction."
+SYNC_REP       "Waiting for confirmation from a remote server during 
synchronous replication."
+WAL_RECEIVER_EXIT      "Waiting for the WAL receiver to exit."
+WAL_RECEIVER_WAIT_START        "Waiting for startup process to send initial 
data for streaming replication."
+XACT_GROUP_UPDATE      "Waiting for the group leader to update transaction 
status at end of a parallel operation."
 
 
 #
@@ -151,15 +151,15 @@ WAIT_EVENT_XACT_GROUP_UPDATE      XactGroupUpdate 
"Waiting for the group leader to up
 
 Section: ClassName - WaitEventTimeout
 
-WAIT_EVENT_BASE_BACKUP_THROTTLE        BaseBackupThrottle      "Waiting during 
base backup when throttling activity."
-WAIT_EVENT_CHECKPOINT_WRITE_DELAY      CheckpointWriteDelay    "Waiting 
between writes while performing a checkpoint."
-WAIT_EVENT_PG_SLEEP    PgSleep "Waiting due to a call to 
<function>pg_sleep</function> or a sibling function."
-WAIT_EVENT_RECOVERY_APPLY_DELAY        RecoveryApplyDelay      "Waiting to 
apply WAL during recovery because of a delay setting."
-WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL    RecoveryRetrieveRetryInterval   
"Waiting during recovery when WAL data is not available from any source 
(<filename>pg_wal</filename>, archive or stream)."
-WAIT_EVENT_REGISTER_SYNC_REQUEST       RegisterSyncRequest     "Waiting while 
sending synchronization requests to the checkpointer, because the request queue 
is full."
-WAIT_EVENT_SPIN_DELAY  SpinDelay       "Waiting while acquiring a contended 
spinlock."
-WAIT_EVENT_VACUUM_DELAY        VacuumDelay     "Waiting in a cost-based vacuum 
delay point."
-WAIT_EVENT_VACUUM_TRUNCATE     VacuumTruncate  "Waiting to acquire an 
exclusive lock to truncate off any empty pages at the end of a table vacuumed."
+BASE_BACKUP_THROTTLE   "Waiting during base backup when throttling activity."
+CHECKPOINT_WRITE_DELAY "Waiting between writes while performing a checkpoint."
+PG_SLEEP       "Waiting due to a call to <function>pg_sleep</function> or a 
sibling function."
+RECOVERY_APPLY_DELAY   "Waiting to apply WAL during recovery because of a 
delay setting."
+RECOVERY_RETRIEVE_RETRY_INTERVAL       "Waiting during recovery when WAL data 
is not available from any source (<filename>pg_wal</filename>, archive or 
stream)."
+REGISTER_SYNC_REQUEST  "Waiting while sending synchronization requests to the 
checkpointer, because the request queue is full."
+SPIN_DELAY     "Waiting while acquiring a contended spinlock."
+VACUUM_DELAY   "Waiting in a cost-based vacuum delay point."
+VACUUM_TRUNCATE        "Waiting to acquire an exclusive lock to truncate off 
any empty pages at the end of a table vacuumed."
 
 
 #
@@ -170,80 +170,80 @@ WAIT_EVENT_VACUUM_TRUNCATE        VacuumTruncate  
"Waiting to acquire an exclusive lock
 
 Section: ClassName - WaitEventIO
 
-WAIT_EVENT_BASEBACKUP_READ     BasebackupRead  "Waiting for base backup to 
read from a file."
-WAIT_EVENT_BASEBACKUP_SYNC     BasebackupSync  "Waiting for data written by a 
base backup to reach durable storage."
-WAIT_EVENT_BASEBACKUP_WRITE    BasebackupWrite "Waiting for base backup to 
write to a file."
-WAIT_EVENT_BUFFILE_READ        BuffileRead     "Waiting for a read from a 
buffered file."
-WAIT_EVENT_BUFFILE_WRITE       BuffileWrite    "Waiting for a write to a 
buffered file."
-WAIT_EVENT_BUFFILE_TRUNCATE    BuffileTruncate "Waiting for a buffered file to 
be truncated."
-WAIT_EVENT_CONTROL_FILE_READ   ControlFileRead "Waiting for a read from the 
<filename>pg_control</filename> file."
-WAIT_EVENT_CONTROL_FILE_SYNC   ControlFileSync "Waiting for the 
<filename>pg_control</filename> file to reach durable storage."
-WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE    ControlFileSyncUpdate   "Waiting for an 
update to the <filename>pg_control</filename> file to reach durable storage."
-WAIT_EVENT_CONTROL_FILE_WRITE  ControlFileWrite        "Waiting for a write to 
the <filename>pg_control</filename> file."
-WAIT_EVENT_CONTROL_FILE_WRITE_UPDATE   ControlFileWriteUpdate  "Waiting for a 
write to update the <filename>pg_control</filename> file."
-WAIT_EVENT_COPY_FILE_READ      CopyFileRead    "Waiting for a read during a 
file copy operation."
-WAIT_EVENT_COPY_FILE_WRITE     CopyFileWrite   "Waiting for a write during a 
file copy operation."
-WAIT_EVENT_DATA_FILE_EXTEND    DataFileExtend  "Waiting for a relation data 
file to be extended."
-WAIT_EVENT_DATA_FILE_FLUSH     DataFileFlush   "Waiting for a relation data 
file to reach durable storage."
-WAIT_EVENT_DATA_FILE_IMMEDIATE_SYNC    DataFileImmediateSync   "Waiting for an 
immediate synchronization of a relation data file to durable storage."
-WAIT_EVENT_DATA_FILE_PREFETCH  DataFilePrefetch        "Waiting for an 
asynchronous prefetch from a relation data file."
-WAIT_EVENT_DATA_FILE_READ      DataFileRead    "Waiting for a read from a 
relation data file."
-WAIT_EVENT_DATA_FILE_SYNC      DataFileSync    "Waiting for changes to a 
relation data file to reach durable storage."
-WAIT_EVENT_DATA_FILE_TRUNCATE  DataFileTruncate        "Waiting for a relation 
data file to be truncated."
-WAIT_EVENT_DATA_FILE_WRITE     DataFileWrite   "Waiting for a write to a 
relation data file."
-WAIT_EVENT_DSM_ALLOCATE        DsmAllocate     "Waiting for a dynamic shared 
memory segment to be allocated."
-WAIT_EVENT_DSM_FILL_ZERO_WRITE DsmFillZeroWrite        "Waiting to fill a 
dynamic shared memory backing file with zeroes."
-WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ LockFileAddtodatadirRead        
"Waiting for a read while adding a line to the data directory lock file."
-WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC LockFileAddtodatadirSync        
"Waiting for data to reach durable storage while adding a line to the data 
directory lock file."
-WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE        LockFileAddtodatadirWrite       
"Waiting for a write while adding a line to the data directory lock file."
-WAIT_EVENT_LOCK_FILE_CREATE_READ       LockFileCreateRead      "Waiting to 
read while creating the data directory lock file."
-WAIT_EVENT_LOCK_FILE_CREATE_SYNC       LockFileCreateSync      "Waiting for 
data to reach durable storage while creating the data directory lock file."
-WAIT_EVENT_LOCK_FILE_CREATE_WRITE      LockFileCreateWrite     "Waiting for a 
write while creating the data directory lock file."
-WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ       LockFileRecheckdatadirRead      
"Waiting for a read during recheck of the data directory lock file."
-WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC     LogicalRewriteCheckpointSync    
"Waiting for logical rewrite mappings to reach durable storage during a 
checkpoint."
-WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC        LogicalRewriteMappingSync       
"Waiting for mapping data to reach durable storage during a logical rewrite."
-WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE       LogicalRewriteMappingWrite      
"Waiting for a write of mapping data during a logical rewrite."
-WAIT_EVENT_LOGICAL_REWRITE_SYNC        LogicalRewriteSync      "Waiting for 
logical rewrite mappings to reach durable storage."
-WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE    LogicalRewriteTruncate  "Waiting for 
truncate of mapping data during a logical rewrite."
-WAIT_EVENT_LOGICAL_REWRITE_WRITE       LogicalRewriteWrite     "Waiting for a 
write of logical rewrite mappings."
-WAIT_EVENT_RELATION_MAP_READ   RelationMapRead "Waiting for a read of the 
relation map file."
-WAIT_EVENT_RELATION_MAP_REPLACE        RelationMapReplace      "Waiting for 
durable replacement of a relation map file."
-WAIT_EVENT_RELATION_MAP_WRITE  RelationMapWrite        "Waiting for a write to 
the relation map file."
-WAIT_EVENT_REORDER_BUFFER_READ ReorderBufferRead       "Waiting for a read 
during reorder buffer management."
-WAIT_EVENT_REORDER_BUFFER_WRITE        ReorderBufferWrite      "Waiting for a 
write during reorder buffer management."
-WAIT_EVENT_REORDER_LOGICAL_MAPPING_READ        ReorderLogicalMappingRead       
"Waiting for a read of a logical mapping during reorder buffer management."
-WAIT_EVENT_REPLICATION_SLOT_READ       ReplicationSlotRead     "Waiting for a 
read from a replication slot control file."
-WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC       ReplicationSlotRestoreSync      
"Waiting for a replication slot control file to reach durable storage while 
restoring it to memory."
-WAIT_EVENT_REPLICATION_SLOT_SYNC       ReplicationSlotSync     "Waiting for a 
replication slot control file to reach durable storage."
-WAIT_EVENT_REPLICATION_SLOT_WRITE      ReplicationSlotWrite    "Waiting for a 
write to a replication slot control file."
-WAIT_EVENT_SLRU_FLUSH_SYNC     SlruFlushSync   "Waiting for SLRU data to reach 
durable storage during a checkpoint or database shutdown."
-WAIT_EVENT_SLRU_READ   SlruRead        "Waiting for a read of an SLRU page."
-WAIT_EVENT_SLRU_SYNC   SlruSync        "Waiting for SLRU data to reach durable 
storage following a page write."
-WAIT_EVENT_SLRU_WRITE  SlruWrite       "Waiting for a write of an SLRU page."
-WAIT_EVENT_SNAPBUILD_READ      SnapbuildRead   "Waiting for a read of a 
serialized historical catalog snapshot."
-WAIT_EVENT_SNAPBUILD_SYNC      SnapbuildSync   "Waiting for a serialized 
historical catalog snapshot to reach durable storage."
-WAIT_EVENT_SNAPBUILD_WRITE     SnapbuildWrite  "Waiting for a write of a 
serialized historical catalog snapshot."
-WAIT_EVENT_TIMELINE_HISTORY_FILE_SYNC  TimelineHistoryFileSync "Waiting for a 
timeline history file received via streaming replication to reach durable 
storage."
-WAIT_EVENT_TIMELINE_HISTORY_FILE_WRITE TimelineHistoryFileWrite        
"Waiting for a write of a timeline history file received via streaming 
replication."
-WAIT_EVENT_TIMELINE_HISTORY_READ       TimelineHistoryRead     "Waiting for a 
read of a timeline history file."
-WAIT_EVENT_TIMELINE_HISTORY_SYNC       TimelineHistorySync     "Waiting for a 
newly created timeline history file to reach durable storage."
-WAIT_EVENT_TIMELINE_HISTORY_WRITE      TimelineHistoryWrite    "Waiting for a 
write of a newly created timeline history file."
-WAIT_EVENT_TWOPHASE_FILE_READ  TwophaseFileRead        "Waiting for a read of 
a two phase state file."
-WAIT_EVENT_TWOPHASE_FILE_SYNC  TwophaseFileSync        "Waiting for a two 
phase state file to reach durable storage."
-WAIT_EVENT_TWOPHASE_FILE_WRITE TwophaseFileWrite       "Waiting for a write of 
a two phase state file."
-WAIT_EVENT_VERSION_FILE_WRITE  VersionFileWrite        "Waiting for the 
version file to be written while creating a database."
-WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ     WalsenderTimelineHistoryRead    
"Waiting for a read from a timeline history file during a walsender timeline 
command."
-WAIT_EVENT_WAL_BOOTSTRAP_SYNC  WalBootstrapSync        "Waiting for WAL to 
reach durable storage during bootstrapping."
-WAIT_EVENT_WAL_BOOTSTRAP_WRITE WalBootstrapWrite       "Waiting for a write of 
a WAL page during bootstrapping."
-WAIT_EVENT_WAL_COPY_READ       WalCopyRead     "Waiting for a read when 
creating a new WAL segment by copying an existing one."
-WAIT_EVENT_WAL_COPY_SYNC       WalCopySync     "Waiting for a new WAL segment 
created by copying an existing one to reach durable storage."
-WAIT_EVENT_WAL_COPY_WRITE      WalCopyWrite    "Waiting for a write when 
creating a new WAL segment by copying an existing one."
-WAIT_EVENT_WAL_INIT_SYNC       WalInitSync     "Waiting for a newly 
initialized WAL file to reach durable storage."
-WAIT_EVENT_WAL_INIT_WRITE      WalInitWrite    "Waiting for a write while 
initializing a new WAL file."
-WAIT_EVENT_WAL_READ    WalRead "Waiting for a read from a WAL file."
-WAIT_EVENT_WAL_SYNC    WalSync "Waiting for a WAL file to reach durable 
storage."
-WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN      WalSyncMethodAssign     "Waiting for 
data to reach durable storage while assigning a new WAL sync method."
-WAIT_EVENT_WAL_WRITE   WalWrite        "Waiting for a write to a WAL file."
+BASEBACKUP_READ        "Waiting for base backup to read from a file."
+BASEBACKUP_SYNC        "Waiting for data written by a base backup to reach 
durable storage."
+BASEBACKUP_WRITE       "Waiting for base backup to write to a file."
+BUFFILE_READ   "Waiting for a read from a buffered file."
+BUFFILE_WRITE  "Waiting for a write to a buffered file."
+BUFFILE_TRUNCATE       "Waiting for a buffered file to be truncated."
+CONTROL_FILE_READ      "Waiting for a read from the 
<filename>pg_control</filename> file."
+CONTROL_FILE_SYNC      "Waiting for the <filename>pg_control</filename> file 
to reach durable storage."
+CONTROL_FILE_SYNC_UPDATE       "Waiting for an update to the 
<filename>pg_control</filename> file to reach durable storage."
+CONTROL_FILE_WRITE     "Waiting for a write to the 
<filename>pg_control</filename> file."
+CONTROL_FILE_WRITE_UPDATE      "Waiting for a write to update the 
<filename>pg_control</filename> file."
+COPY_FILE_READ "Waiting for a read during a file copy operation."
+COPY_FILE_WRITE        "Waiting for a write during a file copy operation."
+DATA_FILE_EXTEND       "Waiting for a relation data file to be extended."
+DATA_FILE_FLUSH        "Waiting for a relation data file to reach durable 
storage."
+DATA_FILE_IMMEDIATE_SYNC       "Waiting for an immediate synchronization of a 
relation data file to durable storage."
+DATA_FILE_PREFETCH     "Waiting for an asynchronous prefetch from a relation 
data file."
+DATA_FILE_READ "Waiting for a read from a relation data file."
+DATA_FILE_SYNC "Waiting for changes to a relation data file to reach durable 
storage."
+DATA_FILE_TRUNCATE     "Waiting for a relation data file to be truncated."
+DATA_FILE_WRITE        "Waiting for a write to a relation data file."
+DSM_ALLOCATE   "Waiting for a dynamic shared memory segment to be allocated."
+DSM_FILL_ZERO_WRITE    "Waiting to fill a dynamic shared memory backing file 
with zeroes."
+LOCK_FILE_ADDTODATADIR_READ    "Waiting for a read while adding a line to the 
data directory lock file."
+LOCK_FILE_ADDTODATADIR_SYNC    "Waiting for data to reach durable storage 
while adding a line to the data directory lock file."
+LOCK_FILE_ADDTODATADIR_WRITE   "Waiting for a write while adding a line to the 
data directory lock file."
+LOCK_FILE_CREATE_READ  "Waiting to read while creating the data directory lock 
file."
+LOCK_FILE_CREATE_SYNC  "Waiting for data to reach durable storage while 
creating the data directory lock file."
+LOCK_FILE_CREATE_WRITE "Waiting for a write while creating the data directory 
lock file."
+LOCK_FILE_RECHECKDATADIR_READ  "Waiting for a read during recheck of the data 
directory lock file."
+LOGICAL_REWRITE_CHECKPOINT_SYNC        "Waiting for logical rewrite mappings 
to reach durable storage during a checkpoint."
+LOGICAL_REWRITE_MAPPING_SYNC   "Waiting for mapping data to reach durable 
storage during a logical rewrite."
+LOGICAL_REWRITE_MAPPING_WRITE  "Waiting for a write of mapping data during a 
logical rewrite."
+LOGICAL_REWRITE_SYNC   "Waiting for logical rewrite mappings to reach durable 
storage."
+LOGICAL_REWRITE_TRUNCATE       "Waiting for truncate of mapping data during a 
logical rewrite."
+LOGICAL_REWRITE_WRITE  "Waiting for a write of logical rewrite mappings."
+RELATION_MAP_READ      "Waiting for a read of the relation map file."
+RELATION_MAP_REPLACE   "Waiting for durable replacement of a relation map 
file."
+RELATION_MAP_WRITE     "Waiting for a write to the relation map file."
+REORDER_BUFFER_READ    "Waiting for a read during reorder buffer management."
+REORDER_BUFFER_WRITE   "Waiting for a write during reorder buffer management."
+REORDER_LOGICAL_MAPPING_READ   "Waiting for a read of a logical mapping during 
reorder buffer management."
+REPLICATION_SLOT_READ  "Waiting for a read from a replication slot control 
file."
+REPLICATION_SLOT_RESTORE_SYNC  "Waiting for a replication slot control file to 
reach durable storage while restoring it to memory."
+REPLICATION_SLOT_SYNC  "Waiting for a replication slot control file to reach 
durable storage."
+REPLICATION_SLOT_WRITE "Waiting for a write to a replication slot control 
file."
+SLRU_FLUSH_SYNC        "Waiting for SLRU data to reach durable storage during 
a checkpoint or database shutdown."
+SLRU_READ      "Waiting for a read of an SLRU page."
+SLRU_SYNC      "Waiting for SLRU data to reach durable storage following a 
page write."
+SLRU_WRITE     "Waiting for a write of an SLRU page."
+SNAPBUILD_READ "Waiting for a read of a serialized historical catalog 
snapshot."
+SNAPBUILD_SYNC "Waiting for a serialized historical catalog snapshot to reach 
durable storage."
+SNAPBUILD_WRITE        "Waiting for a write of a serialized historical catalog 
snapshot."
+TIMELINE_HISTORY_FILE_SYNC     "Waiting for a timeline history file received 
via streaming replication to reach durable storage."
+TIMELINE_HISTORY_FILE_WRITE    "Waiting for a write of a timeline history file 
received via streaming replication."
+TIMELINE_HISTORY_READ  "Waiting for a read of a timeline history file."
+TIMELINE_HISTORY_SYNC  "Waiting for a newly created timeline history file to 
reach durable storage."
+TIMELINE_HISTORY_WRITE "Waiting for a write of a newly created timeline 
history file."
+TWOPHASE_FILE_READ     "Waiting for a read of a two phase state file."
+TWOPHASE_FILE_SYNC     "Waiting for a two phase state file to reach durable 
storage."
+TWOPHASE_FILE_WRITE    "Waiting for a write of a two phase state file."
+VERSION_FILE_WRITE     "Waiting for the version file to be written while 
creating a database."
+WALSENDER_TIMELINE_HISTORY_READ        "Waiting for a read from a timeline 
history file during a walsender timeline command."
+WAL_BOOTSTRAP_SYNC     "Waiting for WAL to reach durable storage during 
bootstrapping."
+WAL_BOOTSTRAP_WRITE    "Waiting for a write of a WAL page during 
bootstrapping."
+WAL_COPY_READ  "Waiting for a read when creating a new WAL segment by copying 
an existing one."
+WAL_COPY_SYNC  "Waiting for a new WAL segment created by copying an existing 
one to reach durable storage."
+WAL_COPY_WRITE "Waiting for a write when creating a new WAL segment by copying 
an existing one."
+WAL_INIT_SYNC  "Waiting for a newly initialized WAL file to reach durable 
storage."
+WAL_INIT_WRITE "Waiting for a write while initializing a new WAL file."
+WAL_READ       "Waiting for a read from a WAL file."
+WAL_SYNC       "Waiting for a WAL file to reach durable storage."
+WAL_SYNC_METHOD_ASSIGN "Waiting for data to reach durable storage while 
assigning a new WAL sync method."
+WAL_WRITE      "Waiting for a write to a WAL file."
 
 
 #
@@ -252,7 +252,7 @@ WAIT_EVENT_WAL_WRITE        WalWrite        "Waiting for a 
write to a WAL file."
 
 Section: ClassName - WaitEventBufferPin
 
-WAIT_EVENT_BUFFER_PIN  BufferPin       "Waiting to acquire an exclusive pin on 
a buffer."
+BUFFER_PIN     "Waiting to acquire an exclusive pin on a buffer."
 
 
 #
@@ -261,7 +261,7 @@ WAIT_EVENT_BUFFER_PIN       BufferPin       "Waiting to 
acquire an exclusive pin on a buffer
 
 Section: ClassName - WaitEventExtension
 
-WAIT_EVENT_DOCONLY     Extension       "Waiting in an extension."
+Extension      "Waiting in an extension."
 
 #
 # Wait Events - LWLock
@@ -272,81 +272,81 @@ WAIT_EVENT_DOCONLY        Extension       "Waiting in an 
extension."
 
 Section: ClassName - WaitEventLWLock
 
-WAIT_EVENT_DOCONLY     ShmemIndex      "Waiting to find or allocate space in 
shared memory."
-WAIT_EVENT_DOCONLY     OidGen  "Waiting to allocate a new OID."
-WAIT_EVENT_DOCONLY     XidGen  "Waiting to allocate a new transaction ID."
-WAIT_EVENT_DOCONLY     ProcArray       "Waiting to access the shared 
per-process data structures (typically, to get a snapshot or report a session's 
transaction ID)."
-WAIT_EVENT_DOCONLY     SInvalRead      "Waiting to retrieve messages from the 
shared catalog invalidation queue."
-WAIT_EVENT_DOCONLY     SInvalWrite     "Waiting to add a message to the shared 
catalog invalidation queue."
-WAIT_EVENT_DOCONLY     WALBufMapping   "Waiting to replace a page in WAL 
buffers."
-WAIT_EVENT_DOCONLY     WALWrite        "Waiting for WAL buffers to be written 
to disk."
-WAIT_EVENT_DOCONLY     ControlFile     "Waiting to read or update the 
<filename>pg_control</filename> file or create a new WAL file."
-WAIT_EVENT_DOCONLY     XactSLRU        "Waiting to access the transaction 
status SLRU cache."
-WAIT_EVENT_DOCONLY     SubtransSLRU    "Waiting to access the sub-transaction 
SLRU cache."
-WAIT_EVENT_DOCONLY     MultiXactGen    "Waiting to read or update shared 
multixact state."
-WAIT_EVENT_DOCONLY     MultiXactOffsetSLRU     "Waiting to access the 
multixact offset SLRU cache."
-WAIT_EVENT_DOCONLY     MultiXactMemberSLRU     "Waiting to access the 
multixact member SLRU cache."
-WAIT_EVENT_DOCONLY     RelCacheInit    "Waiting to read or update a 
<filename>pg_internal.init</filename> relation cache initialization file."
-WAIT_EVENT_DOCONLY     CheckpointerComm        "Waiting to manage fsync 
requests."
-WAIT_EVENT_DOCONLY     TwoPhaseState   "Waiting to read or update the state of 
prepared transactions."
-WAIT_EVENT_DOCONLY     TablespaceCreate        "Waiting to create or drop a 
tablespace."
-WAIT_EVENT_DOCONLY     BtreeVacuum     "Waiting to read or update 
vacuum-related information for a B-tree index."
-WAIT_EVENT_DOCONLY     AddinShmemInit  "Waiting to manage an extension's space 
allocation in shared memory."
-WAIT_EVENT_DOCONLY     Autovacuum      "Waiting to read or update the current 
state of autovacuum workers."
-WAIT_EVENT_DOCONLY     AutovacuumSchedule      "Waiting to ensure that a table 
selected for autovacuum still needs vacuuming."
-WAIT_EVENT_DOCONLY     SyncScan        "Waiting to select the starting 
location of a synchronized table scan."
-WAIT_EVENT_DOCONLY     RelationMapping "Waiting to read or update a 
<filename>pg_filenode.map</filename> file (used to track the filenode 
assignments of certain system catalogs)."
-WAIT_EVENT_DOCONLY     NotifySLRU      "Waiting to access the 
<command>NOTIFY</command> message SLRU cache."
-WAIT_EVENT_DOCONLY     NotifyQueue     "Waiting to read or update 
<command>NOTIFY</command> messages."
-WAIT_EVENT_DOCONLY     SerializableXactHash    "Waiting to read or update 
information about serializable transactions."
-WAIT_EVENT_DOCONLY     SerializableFinishedList        "Waiting to access the 
list of finished serializable transactions."
-WAIT_EVENT_DOCONLY     SerializablePredicateList       "Waiting to access the 
list of predicate locks held by serializable transactions."
-WAIT_EVENT_DOCONLY     SerialSLRU      "Waiting to access the serializable 
transaction conflict SLRU cache."
-WAIT_EVENT_DOCONLY     SyncRep "Waiting to read or update information about 
the state of synchronous replication."
-WAIT_EVENT_DOCONLY     BackgroundWorker        "Waiting to read or update 
background worker state."
-WAIT_EVENT_DOCONLY     DynamicSharedMemoryControl      "Waiting to read or 
update dynamic shared memory allocation information."
-WAIT_EVENT_DOCONLY     AutoFile        "Waiting to update the 
<filename>postgresql.auto.conf</filename> file."
-WAIT_EVENT_DOCONLY     ReplicationSlotAllocation       "Waiting to allocate or 
free a replication slot."
-WAIT_EVENT_DOCONLY     ReplicationSlotControl  "Waiting to read or update 
replication slot state."
-WAIT_EVENT_DOCONLY     CommitTsSLRU    "Waiting to access the commit timestamp 
SLRU cache."
-WAIT_EVENT_DOCONLY     CommitTs        "Waiting to read or update the last 
value set for a transaction commit timestamp."
-WAIT_EVENT_DOCONLY     ReplicationOrigin       "Waiting to create, drop or use 
a replication origin."
-WAIT_EVENT_DOCONLY     MultiXactTruncation     "Waiting to read or truncate 
multixact information."
-WAIT_EVENT_DOCONLY     LogicalRepWorker        "Waiting to read or update the 
state of logical replication workers."
-WAIT_EVENT_DOCONLY     XactTruncation  "Waiting to execute 
<function>pg_xact_status</function> or update the oldest transaction ID 
available to it."
-WAIT_EVENT_DOCONLY     WrapLimitsVacuum        "Waiting to update limits on 
transaction id and multixact consumption."
-WAIT_EVENT_DOCONLY     NotifyQueueTail "Waiting to update limit on 
<command>NOTIFY</command> message storage."
-WAIT_EVENT_DOCONLY     WaitEventExtension      "Waiting to read or update 
custom wait events information for extensions."
-
-WAIT_EVENT_DOCONLY     XactBuffer      "Waiting for I/O on a transaction 
status SLRU buffer."
-WAIT_EVENT_DOCONLY     CommitTsBuffer  "Waiting for I/O on a commit timestamp 
SLRU buffer."
-WAIT_EVENT_DOCONLY     SubtransBuffer  "Waiting for I/O on a sub-transaction 
SLRU buffer."
-WAIT_EVENT_DOCONLY     MultiXactOffsetBuffer   "Waiting for I/O on a multixact 
offset SLRU buffer."
-WAIT_EVENT_DOCONLY     MultiXactMemberBuffer   "Waiting for I/O on a multixact 
member SLRU buffer."
-WAIT_EVENT_DOCONLY     NotifyBuffer    "Waiting for I/O on a 
<command>NOTIFY</command> message SLRU buffer."
-WAIT_EVENT_DOCONLY     SerialBuffer    "Waiting for I/O on a serializable 
transaction conflict SLRU buffer."
-WAIT_EVENT_DOCONLY     WALInsert       "Waiting to insert WAL data into a 
memory buffer."
-WAIT_EVENT_DOCONLY     BufferContent   "Waiting to access a data page in 
memory."
-WAIT_EVENT_DOCONLY     ReplicationOriginState  "Waiting to read or update the 
progress of one replication origin."
-WAIT_EVENT_DOCONLY     ReplicationSlotIO       "Waiting for I/O on a 
replication slot."
-WAIT_EVENT_DOCONLY     LockFastPath    "Waiting to read or update a process' 
fast-path lock information."
-WAIT_EVENT_DOCONLY     BufferMapping   "Waiting to associate a data block with 
a buffer in the buffer pool."
-WAIT_EVENT_DOCONLY     LockManager     "Waiting to read or update information 
about <quote>heavyweight</quote> locks."
-WAIT_EVENT_DOCONLY     PredicateLockManager    "Waiting to access predicate 
lock information used by serializable transactions."
-WAIT_EVENT_DOCONLY     ParallelHashJoin        "Waiting to synchronize workers 
during Parallel Hash Join plan execution."
-WAIT_EVENT_DOCONLY     ParallelQueryDSA        "Waiting for parallel query 
dynamic shared memory allocation."
-WAIT_EVENT_DOCONLY     PerSessionDSA   "Waiting for parallel query dynamic 
shared memory allocation."
-WAIT_EVENT_DOCONLY     PerSessionRecordType    "Waiting to access a parallel 
query's information about composite types."
-WAIT_EVENT_DOCONLY     PerSessionRecordTypmod  "Waiting to access a parallel 
query's information about type modifiers that identify anonymous record types."
-WAIT_EVENT_DOCONLY     SharedTupleStore        "Waiting to access a shared 
tuple store during parallel query."
-WAIT_EVENT_DOCONLY     SharedTidBitmap "Waiting to access a shared TID bitmap 
during a parallel bitmap index scan."
-WAIT_EVENT_DOCONLY     ParallelAppend  "Waiting to choose the next subplan 
during Parallel Append plan execution."
-WAIT_EVENT_DOCONLY     PerXactPredicateList    "Waiting to access the list of 
predicate locks held by the current serializable transaction during a parallel 
query."
-WAIT_EVENT_DOCONLY     PgStatsDSA      "Waiting for stats dynamic shared 
memory allocator access."
-WAIT_EVENT_DOCONLY     PgStatsHash     "Waiting for stats shared memory hash 
table access."
-WAIT_EVENT_DOCONLY     PgStatsData     "Waiting for shared memory stats data 
access."
-WAIT_EVENT_DOCONLY     LogicalRepLauncherDSA   "Waiting to access logical 
replication launcher's dynamic shared memory allocator."
-WAIT_EVENT_DOCONLY     LogicalRepLauncherHash  "Waiting to access logical 
replication launcher's shared hash table."
+ShmemIndex     "Waiting to find or allocate space in shared memory."
+OidGen "Waiting to allocate a new OID."
+XidGen "Waiting to allocate a new transaction ID."
+ProcArray      "Waiting to access the shared per-process data structures 
(typically, to get a snapshot or report a session's transaction ID)."
+SInvalRead     "Waiting to retrieve messages from the shared catalog 
invalidation queue."
+SInvalWrite    "Waiting to add a message to the shared catalog invalidation 
queue."
+WALBufMapping  "Waiting to replace a page in WAL buffers."
+WALWrite       "Waiting for WAL buffers to be written to disk."
+ControlFile    "Waiting to read or update the <filename>pg_control</filename> 
file or create a new WAL file."
+XactSLRU       "Waiting to access the transaction status SLRU cache."
+SubtransSLRU   "Waiting to access the sub-transaction SLRU cache."
+MultiXactGen   "Waiting to read or update shared multixact state."
+MultiXactOffsetSLRU    "Waiting to access the multixact offset SLRU cache."
+MultiXactMemberSLRU    "Waiting to access the multixact member SLRU cache."
+RelCacheInit   "Waiting to read or update a 
<filename>pg_internal.init</filename> relation cache initialization file."
+CheckpointerComm       "Waiting to manage fsync requests."
+TwoPhaseState  "Waiting to read or update the state of prepared transactions."
+TablespaceCreate       "Waiting to create or drop a tablespace."
+BtreeVacuum    "Waiting to read or update vacuum-related information for a 
B-tree index."
+AddinShmemInit "Waiting to manage an extension's space allocation in shared 
memory."
+Autovacuum     "Waiting to read or update the current state of autovacuum 
workers."
+AutovacuumSchedule     "Waiting to ensure that a table selected for autovacuum 
still needs vacuuming."
+SyncScan       "Waiting to select the starting location of a synchronized 
table scan."
+RelationMapping        "Waiting to read or update a 
<filename>pg_filenode.map</filename> file (used to track the filenode 
assignments of certain system catalogs)."
+NotifySLRU     "Waiting to access the <command>NOTIFY</command> message SLRU 
cache."
+NotifyQueue    "Waiting to read or update <command>NOTIFY</command> messages."
+SerializableXactHash   "Waiting to read or update information about 
serializable transactions."
+SerializableFinishedList       "Waiting to access the list of finished 
serializable transactions."
+SerializablePredicateList      "Waiting to access the list of predicate locks 
held by serializable transactions."
+SerialSLRU     "Waiting to access the serializable transaction conflict SLRU 
cache."
+SyncRep        "Waiting to read or update information about the state of 
synchronous replication."
+BackgroundWorker       "Waiting to read or update background worker state."
+DynamicSharedMemoryControl     "Waiting to read or update dynamic shared 
memory allocation information."
+AutoFile       "Waiting to update the 
<filename>postgresql.auto.conf</filename> file."
+ReplicationSlotAllocation      "Waiting to allocate or free a replication 
slot."
+ReplicationSlotControl "Waiting to read or update replication slot state."
+CommitTsSLRU   "Waiting to access the commit timestamp SLRU cache."
+CommitTs       "Waiting to read or update the last value set for a transaction 
commit timestamp."
+ReplicationOrigin      "Waiting to create, drop or use a replication origin."
+MultiXactTruncation    "Waiting to read or truncate multixact information."
+LogicalRepWorker       "Waiting to read or update the state of logical 
replication workers."
+XactTruncation "Waiting to execute <function>pg_xact_status</function> or 
update the oldest transaction ID available to it."
+WrapLimitsVacuum       "Waiting to update limits on transaction id and 
multixact consumption."
+NotifyQueueTail        "Waiting to update limit on <command>NOTIFY</command> 
message storage."
+WaitEventExtension     "Waiting to read or update custom wait events 
information for extensions."
+
+XactBuffer     "Waiting for I/O on a transaction status SLRU buffer."
+CommitTsBuffer "Waiting for I/O on a commit timestamp SLRU buffer."
+SubtransBuffer "Waiting for I/O on a sub-transaction SLRU buffer."
+MultiXactOffsetBuffer  "Waiting for I/O on a multixact offset SLRU buffer."
+MultiXactMemberBuffer  "Waiting for I/O on a multixact member SLRU buffer."
+NotifyBuffer   "Waiting for I/O on a <command>NOTIFY</command> message SLRU 
buffer."
+SerialBuffer   "Waiting for I/O on a serializable transaction conflict SLRU 
buffer."
+WALInsert      "Waiting to insert WAL data into a memory buffer."
+BufferContent  "Waiting to access a data page in memory."
+ReplicationOriginState "Waiting to read or update the progress of one 
replication origin."
+ReplicationSlotIO      "Waiting for I/O on a replication slot."
+LockFastPath   "Waiting to read or update a process' fast-path lock 
information."
+BufferMapping  "Waiting to associate a data block with a buffer in the buffer 
pool."
+LockManager    "Waiting to read or update information about 
<quote>heavyweight</quote> locks."
+PredicateLockManager   "Waiting to access predicate lock information used by 
serializable transactions."
+ParallelHashJoin       "Waiting to synchronize workers during Parallel Hash 
Join plan execution."
+ParallelQueryDSA       "Waiting for parallel query dynamic shared memory 
allocation."
+PerSessionDSA  "Waiting for parallel query dynamic shared memory allocation."
+PerSessionRecordType   "Waiting to access a parallel query's information about 
composite types."
+PerSessionRecordTypmod "Waiting to access a parallel query's information about 
type modifiers that identify anonymous record types."
+SharedTupleStore       "Waiting to access a shared tuple store during parallel 
query."
+SharedTidBitmap        "Waiting to access a shared TID bitmap during a 
parallel bitmap index scan."
+ParallelAppend "Waiting to choose the next subplan during Parallel Append plan 
execution."
+PerXactPredicateList   "Waiting to access the list of predicate locks held by 
the current serializable transaction during a parallel query."
+PgStatsDSA     "Waiting for stats dynamic shared memory allocator access."
+PgStatsHash    "Waiting for stats shared memory hash table access."
+PgStatsData    "Waiting for shared memory stats data access."
+LogicalRepLauncherDSA  "Waiting to access logical replication launcher's 
dynamic shared memory allocator."
+LogicalRepLauncherHash "Waiting to access logical replication launcher's 
shared hash table."
 
 #
 # Wait Events - Lock
@@ -357,15 +357,15 @@ WAIT_EVENT_DOCONLY        LogicalRepLauncherHash  
"Waiting to access logical replication
 
 Section: ClassName - WaitEventLock
 
-WAIT_EVENT_DOCONLY     relation        "Waiting to acquire a lock on a 
relation."
-WAIT_EVENT_DOCONLY     extend  "Waiting to extend a relation."
-WAIT_EVENT_DOCONLY     frozenid        "Waiting to update 
<structname>pg_database</structname>.<structfield>datfrozenxid</structfield> 
and <structname>pg_database</structname>.<structfield>datminmxid</structfield>."
-WAIT_EVENT_DOCONLY     page    "Waiting to acquire a lock on a page of a 
relation."
-WAIT_EVENT_DOCONLY     tuple   "Waiting to acquire a lock on a tuple."
-WAIT_EVENT_DOCONLY     transactionid   "Waiting for a transaction to finish."
-WAIT_EVENT_DOCONLY     virtualxid      "Waiting to acquire a virtual 
transaction ID lock; see <xref linkend="transaction-id"/>."
-WAIT_EVENT_DOCONLY     spectoken       "Waiting to acquire a speculative 
insertion lock."
-WAIT_EVENT_DOCONLY     object  "Waiting to acquire a lock on a non-relation 
database object."
-WAIT_EVENT_DOCONLY     userlock        "Waiting to acquire a user lock."
-WAIT_EVENT_DOCONLY     advisory        "Waiting to acquire an advisory user 
lock."
-WAIT_EVENT_DOCONLY     applytransaction        "Waiting to acquire a lock on a 
remote transaction being applied by a logical replication subscriber."
+relation       "Waiting to acquire a lock on a relation."
+extend "Waiting to extend a relation."
+frozenid       "Waiting to update 
<structname>pg_database</structname>.<structfield>datfrozenxid</structfield> 
and <structname>pg_database</structname>.<structfield>datminmxid</structfield>."
+page   "Waiting to acquire a lock on a page of a relation."
+tuple  "Waiting to acquire a lock on a tuple."
+transactionid  "Waiting for a transaction to finish."
+virtualxid     "Waiting to acquire a virtual transaction ID lock; see <xref 
linkend="transaction-id"/>."
+spectoken      "Waiting to acquire a speculative insertion lock."
+object "Waiting to acquire a lock on a non-relation database object."
+userlock       "Waiting to acquire a user lock."
+advisory       "Waiting to acquire an advisory user lock."
+applytransaction       "Waiting to acquire a lock on a remote transaction 
being applied by a logical replication subscriber."
-- 
2.34.1

Reply via email to