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