Line data Source code
1 : /*------------------------------------------------------------------------- 2 : * 3 : * pgstat_wait_event.c 4 : * Generated wait events infrastructure code 5 : * 6 : * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group 7 : * Portions Copyright (c) 1994, Regents of the University of California 8 : * 9 : * NOTES 10 : * ****************************** 11 : * *** DO NOT EDIT THIS FILE! *** 12 : * ****************************** 13 : * 14 : * It has been GENERATED by src/backend/utils/activity/generate-wait_event_types.pl 15 : * 16 : *------------------------------------------------------------------------- 17 : */ 18 : 19 : static const char * 20 18730 : pgstat_get_wait_activity(WaitEventActivity w) 21 : { 22 18730 : const char *event_name = "unknown wait event"; 23 : 24 18730 : switch (w) 25 : { 26 78 : case WAIT_EVENT_ARCHIVER_MAIN: 27 78 : event_name = "ArchiverMain"; 28 78 : break; 29 1858 : case WAIT_EVENT_AUTOVACUUM_MAIN: 30 1858 : event_name = "AutovacuumMain"; 31 1858 : break; 32 348 : case WAIT_EVENT_BGWRITER_HIBERNATE: 33 348 : event_name = "BgwriterHibernate"; 34 348 : break; 35 1772 : case WAIT_EVENT_BGWRITER_MAIN: 36 1772 : event_name = "BgwriterMain"; 37 1772 : break; 38 2066 : case WAIT_EVENT_CHECKPOINTER_MAIN: 39 2066 : event_name = "CheckpointerMain"; 40 2066 : break; 41 0 : case WAIT_EVENT_CHECKPOINTER_SHUTDOWN: 42 0 : event_name = "CheckpointerShutdown"; 43 0 : break; 44 7306 : case WAIT_EVENT_IO_WORKER_MAIN: 45 7306 : event_name = "IoWorkerMain"; 46 7306 : break; 47 92 : case WAIT_EVENT_LOGICAL_APPLY_MAIN: 48 92 : event_name = "LogicalApplyMain"; 49 92 : break; 50 2076 : case WAIT_EVENT_LOGICAL_LAUNCHER_MAIN: 51 2076 : event_name = "LogicalLauncherMain"; 52 2076 : break; 53 0 : case WAIT_EVENT_LOGICAL_PARALLEL_APPLY_MAIN: 54 0 : event_name = "LogicalParallelApplyMain"; 55 0 : break; 56 44 : case WAIT_EVENT_RECOVERY_WAL_STREAM: 57 44 : event_name = "RecoveryWalStream"; 58 44 : break; 59 0 : case WAIT_EVENT_REPLICATION_SLOTSYNC_MAIN: 60 0 : event_name = "ReplicationSlotsyncMain"; 61 0 : break; 62 0 : case WAIT_EVENT_REPLICATION_SLOTSYNC_SHUTDOWN: 63 0 : event_name = "ReplicationSlotsyncShutdown"; 64 0 : break; 65 0 : case WAIT_EVENT_SYSLOGGER_MAIN: 66 0 : event_name = "SysloggerMain"; 67 0 : break; 68 44 : case WAIT_EVENT_WAL_RECEIVER_MAIN: 69 44 : event_name = "WalReceiverMain"; 70 44 : break; 71 994 : case WAIT_EVENT_WAL_SENDER_MAIN: 72 994 : event_name = "WalSenderMain"; 73 994 : break; 74 0 : case WAIT_EVENT_WAL_SUMMARIZER_WAL: 75 0 : event_name = "WalSummarizerWal"; 76 0 : break; 77 2052 : case WAIT_EVENT_WAL_WRITER_MAIN: 78 2052 : event_name = "WalWriterMain"; 79 2052 : break; 80 : /* no default case, so that compiler will warn */ 81 : } 82 : 83 18730 : return event_name; 84 : } 85 : 86 : static const char * 87 4 : pgstat_get_wait_bufferpin(WaitEventBufferPin w) 88 : { 89 4 : const char *event_name = "unknown wait event"; 90 : 91 4 : switch (w) 92 : { 93 4 : case WAIT_EVENT_BUFFER_PIN: 94 4 : event_name = "BufferPin"; 95 4 : break; 96 : /* no default case, so that compiler will warn */ 97 : } 98 : 99 4 : return event_name; 100 : } 101 : 102 : static const char * 103 1372 : pgstat_get_wait_client(WaitEventClient w) 104 : { 105 1372 : const char *event_name = "unknown wait event"; 106 : 107 1372 : switch (w) 108 : { 109 218 : case WAIT_EVENT_CLIENT_READ: 110 218 : event_name = "ClientRead"; 111 218 : break; 112 0 : case WAIT_EVENT_CLIENT_WRITE: 113 0 : event_name = "ClientWrite"; 114 0 : break; 115 0 : case WAIT_EVENT_GSS_OPEN_SERVER: 116 0 : event_name = "GssOpenServer"; 117 0 : break; 118 2 : case WAIT_EVENT_LIBPQWALRECEIVER_CONNECT: 119 2 : event_name = "LibpqwalreceiverConnect"; 120 2 : break; 121 0 : case WAIT_EVENT_LIBPQWALRECEIVER_RECEIVE: 122 0 : event_name = "LibpqwalreceiverReceive"; 123 0 : break; 124 0 : case WAIT_EVENT_SSL_OPEN_SERVER: 125 0 : event_name = "SslOpenServer"; 126 0 : break; 127 4 : case WAIT_EVENT_WAIT_FOR_STANDBY_CONFIRMATION: 128 4 : event_name = "WaitForStandbyConfirmation"; 129 4 : break; 130 0 : case WAIT_EVENT_WAIT_FOR_WAL_FLUSH: 131 0 : event_name = "WaitForWalFlush"; 132 0 : break; 133 0 : case WAIT_EVENT_WAIT_FOR_WAL_REPLAY: 134 0 : event_name = "WaitForWalReplay"; 135 0 : break; 136 1144 : case WAIT_EVENT_WAL_SENDER_WAIT_FOR_WAL: 137 1144 : event_name = "WalSenderWaitForWal"; 138 1144 : break; 139 4 : case WAIT_EVENT_WAL_SENDER_WRITE_DATA: 140 4 : event_name = "WalSenderWriteData"; 141 4 : break; 142 : /* no default case, so that compiler will warn */ 143 : } 144 : 145 1372 : return event_name; 146 : } 147 : 148 : static const char * 149 36 : pgstat_get_wait_io(WaitEventIO w) 150 : { 151 36 : const char *event_name = "unknown wait event"; 152 : 153 36 : switch (w) 154 : { 155 0 : case WAIT_EVENT_AIO_IO_COMPLETION: 156 0 : event_name = "AioIoCompletion"; 157 0 : break; 158 0 : case WAIT_EVENT_AIO_IO_URING_EXECUTION: 159 0 : event_name = "AioIoUringExecution"; 160 0 : break; 161 0 : case WAIT_EVENT_AIO_IO_URING_SUBMIT: 162 0 : event_name = "AioIoUringSubmit"; 163 0 : break; 164 0 : case WAIT_EVENT_BASEBACKUP_READ: 165 0 : event_name = "BasebackupRead"; 166 0 : break; 167 0 : case WAIT_EVENT_BASEBACKUP_SYNC: 168 0 : event_name = "BasebackupSync"; 169 0 : break; 170 0 : case WAIT_EVENT_BASEBACKUP_WRITE: 171 0 : event_name = "BasebackupWrite"; 172 0 : break; 173 0 : case WAIT_EVENT_BUFFILE_READ: 174 0 : event_name = "BuffileRead"; 175 0 : break; 176 0 : case WAIT_EVENT_BUFFILE_TRUNCATE: 177 0 : event_name = "BuffileTruncate"; 178 0 : break; 179 0 : case WAIT_EVENT_BUFFILE_WRITE: 180 0 : event_name = "BuffileWrite"; 181 0 : break; 182 0 : case WAIT_EVENT_CONTROL_FILE_READ: 183 0 : event_name = "ControlFileRead"; 184 0 : break; 185 0 : case WAIT_EVENT_CONTROL_FILE_SYNC: 186 0 : event_name = "ControlFileSync"; 187 0 : break; 188 0 : case WAIT_EVENT_CONTROL_FILE_SYNC_UPDATE: 189 0 : event_name = "ControlFileSyncUpdate"; 190 0 : break; 191 0 : case WAIT_EVENT_CONTROL_FILE_WRITE: 192 0 : event_name = "ControlFileWrite"; 193 0 : break; 194 0 : case WAIT_EVENT_CONTROL_FILE_WRITE_UPDATE: 195 0 : event_name = "ControlFileWriteUpdate"; 196 0 : break; 197 0 : case WAIT_EVENT_COPY_FILE_COPY: 198 0 : event_name = "CopyFileCopy"; 199 0 : break; 200 0 : case WAIT_EVENT_COPY_FILE_READ: 201 0 : event_name = "CopyFileRead"; 202 0 : break; 203 0 : case WAIT_EVENT_COPY_FILE_WRITE: 204 0 : event_name = "CopyFileWrite"; 205 0 : break; 206 0 : case WAIT_EVENT_DATA_FILE_EXTEND: 207 0 : event_name = "DataFileExtend"; 208 0 : break; 209 0 : case WAIT_EVENT_DATA_FILE_FLUSH: 210 0 : event_name = "DataFileFlush"; 211 0 : break; 212 0 : case WAIT_EVENT_DATA_FILE_IMMEDIATE_SYNC: 213 0 : event_name = "DataFileImmediateSync"; 214 0 : break; 215 0 : case WAIT_EVENT_DATA_FILE_PREFETCH: 216 0 : event_name = "DataFilePrefetch"; 217 0 : break; 218 0 : case WAIT_EVENT_DATA_FILE_READ: 219 0 : event_name = "DataFileRead"; 220 0 : break; 221 0 : case WAIT_EVENT_DATA_FILE_SYNC: 222 0 : event_name = "DataFileSync"; 223 0 : break; 224 0 : case WAIT_EVENT_DATA_FILE_TRUNCATE: 225 0 : event_name = "DataFileTruncate"; 226 0 : break; 227 2 : case WAIT_EVENT_DATA_FILE_WRITE: 228 2 : event_name = "DataFileWrite"; 229 2 : break; 230 0 : case WAIT_EVENT_DSM_ALLOCATE: 231 0 : event_name = "DsmAllocate"; 232 0 : break; 233 0 : case WAIT_EVENT_DSM_FILL_ZERO_WRITE: 234 0 : event_name = "DsmFillZeroWrite"; 235 0 : break; 236 0 : case WAIT_EVENT_LOCK_FILE_ADDTODATADIR_READ: 237 0 : event_name = "LockFileAddtodatadirRead"; 238 0 : break; 239 0 : case WAIT_EVENT_LOCK_FILE_ADDTODATADIR_SYNC: 240 0 : event_name = "LockFileAddtodatadirSync"; 241 0 : break; 242 0 : case WAIT_EVENT_LOCK_FILE_ADDTODATADIR_WRITE: 243 0 : event_name = "LockFileAddtodatadirWrite"; 244 0 : break; 245 0 : case WAIT_EVENT_LOCK_FILE_CREATE_READ: 246 0 : event_name = "LockFileCreateRead"; 247 0 : break; 248 0 : case WAIT_EVENT_LOCK_FILE_CREATE_SYNC: 249 0 : event_name = "LockFileCreateSync"; 250 0 : break; 251 0 : case WAIT_EVENT_LOCK_FILE_CREATE_WRITE: 252 0 : event_name = "LockFileCreateWrite"; 253 0 : break; 254 0 : case WAIT_EVENT_LOCK_FILE_RECHECKDATADIR_READ: 255 0 : event_name = "LockFileRecheckdatadirRead"; 256 0 : break; 257 0 : case WAIT_EVENT_LOGICAL_REWRITE_CHECKPOINT_SYNC: 258 0 : event_name = "LogicalRewriteCheckpointSync"; 259 0 : break; 260 0 : case WAIT_EVENT_LOGICAL_REWRITE_MAPPING_SYNC: 261 0 : event_name = "LogicalRewriteMappingSync"; 262 0 : break; 263 0 : case WAIT_EVENT_LOGICAL_REWRITE_MAPPING_WRITE: 264 0 : event_name = "LogicalRewriteMappingWrite"; 265 0 : break; 266 0 : case WAIT_EVENT_LOGICAL_REWRITE_SYNC: 267 0 : event_name = "LogicalRewriteSync"; 268 0 : break; 269 0 : case WAIT_EVENT_LOGICAL_REWRITE_TRUNCATE: 270 0 : event_name = "LogicalRewriteTruncate"; 271 0 : break; 272 0 : case WAIT_EVENT_LOGICAL_REWRITE_WRITE: 273 0 : event_name = "LogicalRewriteWrite"; 274 0 : break; 275 0 : case WAIT_EVENT_RELATION_MAP_READ: 276 0 : event_name = "RelationMapRead"; 277 0 : break; 278 0 : case WAIT_EVENT_RELATION_MAP_REPLACE: 279 0 : event_name = "RelationMapReplace"; 280 0 : break; 281 0 : case WAIT_EVENT_RELATION_MAP_WRITE: 282 0 : event_name = "RelationMapWrite"; 283 0 : break; 284 0 : case WAIT_EVENT_REORDER_BUFFER_READ: 285 0 : event_name = "ReorderBufferRead"; 286 0 : break; 287 6 : case WAIT_EVENT_REORDER_BUFFER_WRITE: 288 6 : event_name = "ReorderBufferWrite"; 289 6 : break; 290 0 : case WAIT_EVENT_REORDER_LOGICAL_MAPPING_READ: 291 0 : event_name = "ReorderLogicalMappingRead"; 292 0 : break; 293 0 : case WAIT_EVENT_REPLICATION_SLOT_READ: 294 0 : event_name = "ReplicationSlotRead"; 295 0 : break; 296 0 : case WAIT_EVENT_REPLICATION_SLOT_RESTORE_SYNC: 297 0 : event_name = "ReplicationSlotRestoreSync"; 298 0 : break; 299 0 : case WAIT_EVENT_REPLICATION_SLOT_SYNC: 300 0 : event_name = "ReplicationSlotSync"; 301 0 : break; 302 0 : case WAIT_EVENT_REPLICATION_SLOT_WRITE: 303 0 : event_name = "ReplicationSlotWrite"; 304 0 : break; 305 0 : case WAIT_EVENT_SLRU_FLUSH_SYNC: 306 0 : event_name = "SlruFlushSync"; 307 0 : break; 308 0 : case WAIT_EVENT_SLRU_READ: 309 0 : event_name = "SlruRead"; 310 0 : break; 311 0 : case WAIT_EVENT_SLRU_SYNC: 312 0 : event_name = "SlruSync"; 313 0 : break; 314 0 : case WAIT_EVENT_SLRU_WRITE: 315 0 : event_name = "SlruWrite"; 316 0 : break; 317 0 : case WAIT_EVENT_SNAPBUILD_READ: 318 0 : event_name = "SnapbuildRead"; 319 0 : break; 320 0 : case WAIT_EVENT_SNAPBUILD_SYNC: 321 0 : event_name = "SnapbuildSync"; 322 0 : break; 323 0 : case WAIT_EVENT_SNAPBUILD_WRITE: 324 0 : event_name = "SnapbuildWrite"; 325 0 : break; 326 0 : case WAIT_EVENT_TIMELINE_HISTORY_FILE_SYNC: 327 0 : event_name = "TimelineHistoryFileSync"; 328 0 : break; 329 0 : case WAIT_EVENT_TIMELINE_HISTORY_FILE_WRITE: 330 0 : event_name = "TimelineHistoryFileWrite"; 331 0 : break; 332 0 : case WAIT_EVENT_TIMELINE_HISTORY_READ: 333 0 : event_name = "TimelineHistoryRead"; 334 0 : break; 335 0 : case WAIT_EVENT_TIMELINE_HISTORY_SYNC: 336 0 : event_name = "TimelineHistorySync"; 337 0 : break; 338 0 : case WAIT_EVENT_TIMELINE_HISTORY_WRITE: 339 0 : event_name = "TimelineHistoryWrite"; 340 0 : break; 341 0 : case WAIT_EVENT_TWOPHASE_FILE_READ: 342 0 : event_name = "TwophaseFileRead"; 343 0 : break; 344 0 : case WAIT_EVENT_TWOPHASE_FILE_SYNC: 345 0 : event_name = "TwophaseFileSync"; 346 0 : break; 347 0 : case WAIT_EVENT_TWOPHASE_FILE_WRITE: 348 0 : event_name = "TwophaseFileWrite"; 349 0 : break; 350 0 : case WAIT_EVENT_VERSION_FILE_SYNC: 351 0 : event_name = "VersionFileSync"; 352 0 : break; 353 0 : case WAIT_EVENT_VERSION_FILE_WRITE: 354 0 : event_name = "VersionFileWrite"; 355 0 : break; 356 0 : case WAIT_EVENT_WALSENDER_TIMELINE_HISTORY_READ: 357 0 : event_name = "WalsenderTimelineHistoryRead"; 358 0 : break; 359 0 : case WAIT_EVENT_WAL_BOOTSTRAP_SYNC: 360 0 : event_name = "WalBootstrapSync"; 361 0 : break; 362 0 : case WAIT_EVENT_WAL_BOOTSTRAP_WRITE: 363 0 : event_name = "WalBootstrapWrite"; 364 0 : break; 365 0 : case WAIT_EVENT_WAL_COPY_READ: 366 0 : event_name = "WalCopyRead"; 367 0 : break; 368 0 : case WAIT_EVENT_WAL_COPY_SYNC: 369 0 : event_name = "WalCopySync"; 370 0 : break; 371 0 : case WAIT_EVENT_WAL_COPY_WRITE: 372 0 : event_name = "WalCopyWrite"; 373 0 : break; 374 0 : case WAIT_EVENT_WAL_INIT_SYNC: 375 0 : event_name = "WalInitSync"; 376 0 : break; 377 26 : case WAIT_EVENT_WAL_INIT_WRITE: 378 26 : event_name = "WalInitWrite"; 379 26 : break; 380 0 : case WAIT_EVENT_WAL_READ: 381 0 : event_name = "WalRead"; 382 0 : break; 383 0 : case WAIT_EVENT_WAL_SUMMARY_READ: 384 0 : event_name = "WalSummaryRead"; 385 0 : break; 386 0 : case WAIT_EVENT_WAL_SUMMARY_WRITE: 387 0 : event_name = "WalSummaryWrite"; 388 0 : break; 389 0 : case WAIT_EVENT_WAL_SYNC: 390 0 : event_name = "WalSync"; 391 0 : break; 392 0 : case WAIT_EVENT_WAL_SYNC_METHOD_ASSIGN: 393 0 : event_name = "WalSyncMethodAssign"; 394 0 : break; 395 2 : case WAIT_EVENT_WAL_WRITE: 396 2 : event_name = "WalWrite"; 397 2 : break; 398 : /* no default case, so that compiler will warn */ 399 : } 400 : 401 36 : return event_name; 402 : } 403 : 404 : static const char * 405 56 : pgstat_get_wait_ipc(WaitEventIPC w) 406 : { 407 56 : const char *event_name = "unknown wait event"; 408 : 409 56 : switch (w) 410 : { 411 0 : case WAIT_EVENT_APPEND_READY: 412 0 : event_name = "AppendReady"; 413 0 : break; 414 0 : case WAIT_EVENT_ARCHIVE_CLEANUP_COMMAND: 415 0 : event_name = "ArchiveCleanupCommand"; 416 0 : break; 417 10 : case WAIT_EVENT_ARCHIVE_COMMAND: 418 10 : event_name = "ArchiveCommand"; 419 10 : break; 420 0 : case WAIT_EVENT_BACKEND_TERMINATION: 421 0 : event_name = "BackendTermination"; 422 0 : break; 423 0 : case WAIT_EVENT_BACKUP_WAIT_WAL_ARCHIVE: 424 0 : event_name = "BackupWaitWalArchive"; 425 0 : break; 426 2 : case WAIT_EVENT_BGWORKER_SHUTDOWN: 427 2 : event_name = "BgworkerShutdown"; 428 2 : break; 429 0 : case WAIT_EVENT_BGWORKER_STARTUP: 430 0 : event_name = "BgworkerStartup"; 431 0 : break; 432 0 : case WAIT_EVENT_BTREE_PAGE: 433 0 : event_name = "BtreePage"; 434 0 : break; 435 8 : case WAIT_EVENT_BUFFER_IO: 436 8 : event_name = "BufferIo"; 437 8 : break; 438 0 : case WAIT_EVENT_CHECKPOINT_DELAY_COMPLETE: 439 0 : event_name = "CheckpointDelayComplete"; 440 0 : break; 441 0 : case WAIT_EVENT_CHECKPOINT_DELAY_START: 442 0 : event_name = "CheckpointDelayStart"; 443 0 : break; 444 34 : case WAIT_EVENT_CHECKPOINT_DONE: 445 34 : event_name = "CheckpointDone"; 446 34 : break; 447 0 : case WAIT_EVENT_CHECKPOINT_START: 448 0 : event_name = "CheckpointStart"; 449 0 : break; 450 2 : case WAIT_EVENT_EXECUTE_GATHER: 451 2 : event_name = "ExecuteGather"; 452 2 : break; 453 0 : case WAIT_EVENT_HASH_BATCH_ALLOCATE: 454 0 : event_name = "HashBatchAllocate"; 455 0 : break; 456 0 : case WAIT_EVENT_HASH_BATCH_ELECT: 457 0 : event_name = "HashBatchElect"; 458 0 : break; 459 0 : case WAIT_EVENT_HASH_BATCH_LOAD: 460 0 : event_name = "HashBatchLoad"; 461 0 : break; 462 0 : case WAIT_EVENT_HASH_BUILD_ALLOCATE: 463 0 : event_name = "HashBuildAllocate"; 464 0 : break; 465 0 : case WAIT_EVENT_HASH_BUILD_ELECT: 466 0 : event_name = "HashBuildElect"; 467 0 : break; 468 0 : case WAIT_EVENT_HASH_BUILD_HASH_INNER: 469 0 : event_name = "HashBuildHashInner"; 470 0 : break; 471 0 : case WAIT_EVENT_HASH_BUILD_HASH_OUTER: 472 0 : event_name = "HashBuildHashOuter"; 473 0 : break; 474 0 : case WAIT_EVENT_HASH_GROW_BATCHES_DECIDE: 475 0 : event_name = "HashGrowBatchesDecide"; 476 0 : break; 477 0 : case WAIT_EVENT_HASH_GROW_BATCHES_ELECT: 478 0 : event_name = "HashGrowBatchesElect"; 479 0 : break; 480 0 : case WAIT_EVENT_HASH_GROW_BATCHES_FINISH: 481 0 : event_name = "HashGrowBatchesFinish"; 482 0 : break; 483 0 : case WAIT_EVENT_HASH_GROW_BATCHES_REALLOCATE: 484 0 : event_name = "HashGrowBatchesReallocate"; 485 0 : break; 486 0 : case WAIT_EVENT_HASH_GROW_BATCHES_REPARTITION: 487 0 : event_name = "HashGrowBatchesRepartition"; 488 0 : break; 489 0 : case WAIT_EVENT_HASH_GROW_BUCKETS_ELECT: 490 0 : event_name = "HashGrowBucketsElect"; 491 0 : break; 492 0 : case WAIT_EVENT_HASH_GROW_BUCKETS_REALLOCATE: 493 0 : event_name = "HashGrowBucketsReallocate"; 494 0 : break; 495 0 : case WAIT_EVENT_HASH_GROW_BUCKETS_REINSERT: 496 0 : event_name = "HashGrowBucketsReinsert"; 497 0 : break; 498 0 : case WAIT_EVENT_LOGICAL_APPLY_SEND_DATA: 499 0 : event_name = "LogicalApplySendData"; 500 0 : break; 501 0 : case WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE: 502 0 : event_name = "LogicalParallelApplyStateChange"; 503 0 : break; 504 0 : case WAIT_EVENT_LOGICAL_SYNC_DATA: 505 0 : event_name = "LogicalSyncData"; 506 0 : break; 507 0 : case WAIT_EVENT_LOGICAL_SYNC_STATE_CHANGE: 508 0 : event_name = "LogicalSyncStateChange"; 509 0 : break; 510 0 : case WAIT_EVENT_MESSAGE_QUEUE_INTERNAL: 511 0 : event_name = "MessageQueueInternal"; 512 0 : break; 513 0 : case WAIT_EVENT_MESSAGE_QUEUE_PUT_MESSAGE: 514 0 : event_name = "MessageQueuePutMessage"; 515 0 : break; 516 0 : case WAIT_EVENT_MESSAGE_QUEUE_RECEIVE: 517 0 : event_name = "MessageQueueReceive"; 518 0 : break; 519 0 : case WAIT_EVENT_MESSAGE_QUEUE_SEND: 520 0 : event_name = "MessageQueueSend"; 521 0 : break; 522 0 : case WAIT_EVENT_MULTIXACT_CREATION: 523 0 : event_name = "MultixactCreation"; 524 0 : break; 525 0 : case WAIT_EVENT_PARALLEL_BITMAP_SCAN: 526 0 : event_name = "ParallelBitmapScan"; 527 0 : break; 528 0 : case WAIT_EVENT_PARALLEL_CREATE_INDEX_SCAN: 529 0 : event_name = "ParallelCreateIndexScan"; 530 0 : break; 531 0 : case WAIT_EVENT_PARALLEL_FINISH: 532 0 : event_name = "ParallelFinish"; 533 0 : break; 534 0 : case WAIT_EVENT_PROCARRAY_GROUP_UPDATE: 535 0 : event_name = "ProcarrayGroupUpdate"; 536 0 : break; 537 0 : case WAIT_EVENT_PROC_SIGNAL_BARRIER: 538 0 : event_name = "ProcSignalBarrier"; 539 0 : break; 540 0 : case WAIT_EVENT_PROMOTE: 541 0 : event_name = "Promote"; 542 0 : break; 543 0 : case WAIT_EVENT_RECOVERY_CONFLICT_SNAPSHOT: 544 0 : event_name = "RecoveryConflictSnapshot"; 545 0 : break; 546 0 : case WAIT_EVENT_RECOVERY_CONFLICT_TABLESPACE: 547 0 : event_name = "RecoveryConflictTablespace"; 548 0 : break; 549 0 : case WAIT_EVENT_RECOVERY_END_COMMAND: 550 0 : event_name = "RecoveryEndCommand"; 551 0 : break; 552 0 : case WAIT_EVENT_RECOVERY_PAUSE: 553 0 : event_name = "RecoveryPause"; 554 0 : break; 555 0 : case WAIT_EVENT_REPLICATION_ORIGIN_DROP: 556 0 : event_name = "ReplicationOriginDrop"; 557 0 : break; 558 0 : case WAIT_EVENT_REPLICATION_SLOT_DROP: 559 0 : event_name = "ReplicationSlotDrop"; 560 0 : break; 561 0 : case WAIT_EVENT_RESTORE_COMMAND: 562 0 : event_name = "RestoreCommand"; 563 0 : break; 564 0 : case WAIT_EVENT_SAFE_SNAPSHOT: 565 0 : event_name = "SafeSnapshot"; 566 0 : break; 567 0 : case WAIT_EVENT_SYNC_REP: 568 0 : event_name = "SyncRep"; 569 0 : break; 570 0 : case WAIT_EVENT_WAL_RECEIVER_EXIT: 571 0 : event_name = "WalReceiverExit"; 572 0 : break; 573 0 : case WAIT_EVENT_WAL_RECEIVER_WAIT_START: 574 0 : event_name = "WalReceiverWaitStart"; 575 0 : break; 576 0 : case WAIT_EVENT_WAL_SUMMARY_READY: 577 0 : event_name = "WalSummaryReady"; 578 0 : break; 579 0 : case WAIT_EVENT_XACT_GROUP_UPDATE: 580 0 : event_name = "XactGroupUpdate"; 581 0 : break; 582 : /* no default case, so that compiler will warn */ 583 : } 584 : 585 56 : return event_name; 586 : } 587 : 588 : static const char * 589 52 : pgstat_get_wait_timeout(WaitEventTimeout w) 590 : { 591 52 : const char *event_name = "unknown wait event"; 592 : 593 52 : switch (w) 594 : { 595 8 : case WAIT_EVENT_BASE_BACKUP_THROTTLE: 596 8 : event_name = "BaseBackupThrottle"; 597 8 : break; 598 18 : case WAIT_EVENT_CHECKPOINT_WRITE_DELAY: 599 18 : event_name = "CheckpointWriteDelay"; 600 18 : break; 601 26 : case WAIT_EVENT_PG_SLEEP: 602 26 : event_name = "PgSleep"; 603 26 : break; 604 0 : case WAIT_EVENT_RECOVERY_APPLY_DELAY: 605 0 : event_name = "RecoveryApplyDelay"; 606 0 : break; 607 0 : case WAIT_EVENT_RECOVERY_RETRIEVE_RETRY_INTERVAL: 608 0 : event_name = "RecoveryRetrieveRetryInterval"; 609 0 : break; 610 0 : case WAIT_EVENT_REGISTER_SYNC_REQUEST: 611 0 : event_name = "RegisterSyncRequest"; 612 0 : break; 613 0 : case WAIT_EVENT_SPIN_DELAY: 614 0 : event_name = "SpinDelay"; 615 0 : break; 616 0 : case WAIT_EVENT_VACUUM_DELAY: 617 0 : event_name = "VacuumDelay"; 618 0 : break; 619 0 : case WAIT_EVENT_VACUUM_TRUNCATE: 620 0 : event_name = "VacuumTruncate"; 621 0 : break; 622 0 : case WAIT_EVENT_WAL_SUMMARIZER_ERROR: 623 0 : event_name = "WalSummarizerError"; 624 0 : break; 625 : /* no default case, so that compiler will warn */ 626 : } 627 : 628 52 : return event_name; 629 : } 630 :