1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-04 20:11:56 +03:00

Add system view pg_wait_events

This new view, wrapped around a SRF, shows some information known about
wait events, as of:
- Name.
- Type (Activity, I/O, Extension, etc.).
- Description.

All the information retrieved comes from wait_event_names.txt, and the
description is the same as the documentation with filters applied to
remove any XML markups.  This view is useful when joined with
pg_stat_activity to get the description of a wait event reported.

Custom wait events for extensions are included in the view.

Original idea by Yves Colin.

Author: Bertrand Drouvot
Reviewed-by: Kyotaro Horiguchi, Masahiro Ikeda, Tom Lane, Michael
Paquier
Discussion: https://postgr.es/m/0e2ae164-dc89-03c3-cf7f-de86378053ac@gmail.com
This commit is contained in:
Michael Paquier
2023-08-20 15:35:02 +09:00
parent a2a6249cf1
commit 1e68e43d3f
19 changed files with 317 additions and 11 deletions

View File

@@ -221,6 +221,11 @@
<entry>views</entry>
</row>
<row>
<entry><link linkend="view-pg-wait-events"><structname>pg_wait_events</structname></link></entry>
<entry>wait events</entry>
</row>
</tbody>
</tgroup>
</table>
@@ -4825,4 +4830,63 @@ SELECT * FROM pg_locks pl LEFT JOIN pg_prepared_xacts ppx
</table>
</sect1>
<sect1 id="view-pg-wait-events">
<title><structname>pg_wait_events</structname></title>
<indexterm zone="view-pg-wait-events">
<primary>pg_wait_events</primary>
</indexterm>
<para>
The view <structname>pg_wait_events</structname> provides description about the
wait events.
</para>
<table>
<title><structname>pg_wait_events</structname> Columns</title>
<tgroup cols="1">
<thead>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
Column Type
</para>
<para>
Description
</para></entry>
</row>
</thead>
<tbody>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>type</structfield> <type>text</type>
</para>
<para>
Wait event type
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>name</structfield> <type>text</type>
</para>
<para>
Wait event name
</para></entry>
</row>
<row>
<entry role="catalog_table_entry"><para role="column_definition">
<structfield>description</structfield> <type>text</type>
</para>
<para>
Wait event description
</para></entry>
</row>
</tbody>
</tgroup>
</table>
</sect1>
</chapter>