wait_event
如果wait_status是acquire lock、acquire lwlock、wait io三种类型,此列描述具体的锁、轻量级锁、IO的信息。否则是空。
locktag
当前线程正在等待锁的信息。
lockmode
当前线程正等待获取的锁模式。包含表级锁、行级锁、页级锁下的各模式。
block_sessionid
bigint
阻塞当前线程获取锁的会话标识。
global_sessionid
全局会话ID。
set cmd: [nodename]
在连接上执行SET/RESET/TRANSACTION BLOCK LEVEL PARA SET/SESSION LEVEL PARA SET,当前正在nodename指定节点上执行。
cancel query
取消某连接上正在执行的SQL语句。
stop query
停止某连接上正在执行的查询。
wait node: [nodename](plevel), total N, [phase]
等待接收与某节点的连接上的数据,当前正在等待nodename节点plevel线程的数据,且仍有N个连接的数据待返回。如果状态包含phase信息,则可能的阶段状态有:
begin:表示处于事务开始阶段。
commit:表示处于事务提交阶段。
rollback:表示处于事务回滚阶段。
flush data: [nodename](plevel), [phase]
等待向网络中nodename指定节点的plevel对应线程发送数据。如果状态包含phase信息,则可能的阶段状态为wait quota,即当前通信流正在等待quota值。
stream get conn: [nodename], total N
初始化stream flow时,等待与nodename节点的consumer对象建立连接,且当前有N个待建连对象。
wait producer ready: [nodename](plevel), total N
初始化stream flow时,等待每个producer都准备好,当前正在等待nodename节点plevel对应线程的producer对象准备好,且仍有N个producer对象处于等待状态。
synchronize quit
stream plan结束时,等待stream线程组内的线程统一退出。
wait stream nodegroup destroy
stream plan结束时,等待销毁stream node group。
wait active statement
等待作业执行,正在资源负载管控中。
analyze: [relname], [phase]
当前正在对表relname执行analyze。如果状态包含phase信息,则为autovacuum,表示是数据库自动开启AutoVacuum线程执行的analyze分析操作。
vacuum: [relname], [phase]
当前正在对表relname执行vacuum。如果状态包含phase信息,则为autovacuum,表示是数据库自动开启AutoVacuum线程执行的vacuum清理操作。
vacuum full: [relname]
当前正在对表relname执行vacuum full清理。
create index
当前正在创建索引。
HashJoin - [ build hash | write file ]
当前是HashJoin算子,主要关注耗时的执行阶段。
build hash:表示当前HashJoin算子正在建立哈希表。
write file:表示当前HashJoin算子正在将数据写入磁盘。
Sort | Sort - [fetch tuple | write file]
当前是Sort算子做排序,fetch tuple表示Sort算子正在获取tuple,write file表示Sort算子正在将数据写入磁盘。
Material | Material - write file
当前是Material算子,write file表示Material算子正在将数据写入磁盘。
NestLoop
当前是NestLoop算子。
wait memory
等待内存获取。
wait sync consumer next step
Stream算子等待消费者执行。
wait sync producer next step
Stream算子等待生产者执行。
vacuum gpi
vacuum或者autovacuum流程中global partition index清理。
standby read recovery conflict
备机只读与日志回放产生冲突。
standby get snapshot
备机只读获取快照。
prune table
等待堆表清理历史删除数据。
prune index
等待索引清理历史删除数据。
wait reserve td
等待分配ustore事务槽。
wait td rollback
等待ustore事务槽回滚。
wait available td
等待ustore可用的事务槽。
wait transaction rollback
等待事务回滚。
wait sync bgworkers
等待并行创建索引的子线程完成本地扫描和排序。
当wait_status为acquire lwlock、acquire lock或者wait io时,表示有等待事件。正在等待获取wait_event列对应类型的轻量级锁、事务锁,或者正在进行IO。
其中,wait_status值为acquire lwlock(轻量级锁)时对应的wait_event等待事件类型与描述信息如下。(wait_event为extension时,表示此时的轻量级锁是动态分配的锁,未被监控。)
表3
轻量级锁等待事件列表
wait_event类型