更新时间:2023-04-23 GMT+08:00

GS_WAIT_EVENTS

GS_WAIT_EVENTS视图显示当前节点上各类等待状态和事件的统计信息。

仅在GUC参数enable_track_wait_event为on的情况下,视图中各统计字段的数值才会被累加。若在运行过程中将enable_track_wait_event设置为off,则不再累加统计数值,但已有数值不受影响。enable_track_wait_event为off,查询该视图返回0行。

表1 GS_WAIT_EVENTS字段

名称

类型

描述

nodename

name

节点名称。

type

text

事件的类型,包括STATUS,LOCK_EVENT,LWLOCK_EVENT和IO_EVENT四种类型。

event

text

事件名称,可参考PG_THREAD_WAIT_STATUS视图。

wait

bigint

事件发生次数。该字段及以下字段均为进程运行中的累计值。

failed_wait

bigint

等待失败次数。当前版本中只有LOCK和LWLOCK等锁超时或失败才会使用该字段。

total_wait_time

bigint

该事件总持续时间。

avg_wait_time

bigint

该事件平均持续时间。

max_wait_time

bigint

该事件最大等待时间。

min_wait_time

bigint

该事件最小等待时间。

当前版本中,对于type='LOCK_EVENT','LWLOCK_EVENT'和'IO_EVENT'的事件,GS_WAIT_EVENTS视图显示范围与PG_THREAD_WAIT_STATUS视图对应事件相同。

对于type='STATUS'的事件GS_WAIT_EVENTS包含的等待状态列如下,其详细含义参见PG_THREAD_WAIT_STATUS视图。

  • acquire lwlock
  • acquire lock
  • wait io
  • wait pooler get conn
  • wait pooler abort conn
  • wait pooler clean conn
  • wait transaction sync
  • wait wal sync
  • wait data sync
  • wait producer ready
  • create index
  • analyze
  • vacuum
  • vacuum full
  • gtm connect
  • gtm begin trans
  • gtm commit trans
  • gtm rollback trans
  • gtm create sequence
  • gtm alter sequence
  • gtm get sequence val
  • gtm set sequence val
  • gtm drop sequence
  • gtm rename sequence