# PG_THREAD_WAIT_STATUS
通过PG_THREAD_WAIT_STATUS视图可以检测当前实例中工作线程（backend thread）以及辅助线程（auxiliary thread）的阻塞等待情况。具体字段信息如[表1]所示。
 表1PG_THREAD_WAIT_STATUS字段 
| 名称          | 类型      | 描述                                                                                  |
|:---|:---|:---|
| node_name   | text    | 当前节点的名称。                                                                            |
| db_name     | text    | 数据库名称。                                                                              |
| thread_name | text    | 线程名称。                                                                               |
| query_id    | bigint  | 查询id，对应debug_query_id。                                                              |
| tid      | bigint  | 当前线程的线程号。                                                                           |
| sessionid                                              | bigint                                           | 当前会话id。                                                                                                                       |
| lwtid       | integer | 当前线程的轻量级线程号。                                                                        |
| psessionid                                            | bigint                                          | 父会话ID。                                                                                                                        |
| tlevel      | integer | streaming线程的层级。                                                                     |
| smpid       | integer | 并行线程的id。                                                                            |
| wait_status | text    | 当前线程的等待状态。等待状态的详细信息请参见[表2]。            |
| wait_event                                             | text                                                | 如果wait_status是acquire lock、acquire lwlock、wait io三种类型，此列描述具体的锁、轻量级锁、I/O的信息。否则是空。 |
| locktag                                              | text                                              | 当前线程正等待获取的锁的信息。                                                                                                                |
| lockmode                                              | text                                             | 当前线程正等待获取的锁的模式。包含表级锁、行级锁、页级锁下的各模式。                                                                                            |
| block_sessionid                                       | bigint                                             | 阻塞当前线程获取锁的会话标识。                                                                                                               |
| global_sessionid                                    | text                                              | 全局会话id。                                                                                                                     |
   
wait_status列的等待状态如[表2]所示。
 表2等待状态列表 
| wait_status值 | 含义                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 出现原因                                                                                                                                                                | 调优建议                                                                                                                                   |
|:---|:---|:---|:---|
| wait cmd                                               | 等待完成读取网络通信包。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 本端等待对端的下一条指令。                                                                                                                                                        | 通常情况下，相比其他操作，网络通信本身耗时较长。如果发现某些连接长时间处于该状态，可以结合pg_stat_activity、gs_stack、dbe_perf.pooler_status、pg_thread_wait_status等视图分析对端长时间未发送指令的原因。  |
| wait pooler get conn                                   | 等待pooler完成获取连接。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | 本端节点尝试从连接池获取与其他节点的连接，如果连接池里没有符合条件的连接，则尝试创建新的连接。如果连接能直接从连接池中复用，这种情况下获取连接的耗时不会很大。如果业务量大、且连接重新创建的情况较多（如连接池中连接被清理、连接因出错而直接被销毁没有归还到连接池中等），会出现获取连接耗时较长。                    | 根据业务场景调整GUC参数minimum_pool_size、pooler_maximum_idle_time，并结合日志排查当前连接情况，如果日志中出现大量连接销毁的日志则需要分析原因。                                          |
| wait pooler abort conn                               | 等待pooler完成终止连接。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | 由clean connection触发，用于等待符合条件的事务退出、释放连接。                                                                                                                              | 清理连接前停止业务。                                                                                                                               |
| wait pooler clean conn                                  | 等待pooler完成清理连接。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | 由clean connection触发，用于等待符合条件的线程退出、释放连接。                                                                                                                               | 清理连接前停止业务。                                                                                                                             |
| pooler create conn                                     | 等待pooler建立连接，当前正在与nodename指定节点建立连接，且仍有N个连接等待建立。                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | 与指定节点建连，如果网络状态较差、或对端业务较忙，会影响建连耗时。                                                                                                                                    | 检查网络状态，或降低业务量。                                                                                                                          |
| set cmd                                                | 在连接上执行SET/RESET/TRANSACTION BLOCK LEVEL PARA SET/SESSION LEVEL PARA SET，当前正在nodename指定节点上执行。                                                                                                                                                                                                                                                                                                                                                                                                                       | 正在往指定节点执行SET/RESET/TRANSACTION BLOCK LEVEL PARA SET/SESSION LEVEL PARA SET。                                                                                          | 检查网络状态，或降低业务量。                                                                                                                         |
| cancel query                                           | 取消某连接上正在执行的SQL语句。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 本端向对端发送取消语句指令后，等待对端返回执行结果。                                                                                                                                          | 检查网络状态，或降低业务量。                                                                                                                           |
| stop query                                             | 停止某连接上正在执行的查询。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 本端向对端发送取消语句指令后，等待对端返回执行结果。                                                                                                                                            | 检查网络状态，或降低业务量。                                                                                                                         |
| wait node                                            | 等待接收与某节点的连接上的数据，当前正在等待nodename节点plevel线程的数据，且仍有N个连接的数据待返回。如果状态包含phase信息，则可能的阶段状态有： - begin：表示处于事务开始阶段。  - commit：表示处于事务提交阶段。  - rollback：表示处于事务回滚阶段。    | 本端发送指令后，等待对端返回执行结果。                                                                                                                                                | 通常情况下，相比其他操作，网络通信本身耗时较长。如果发现某些连接长时间处于该状态，可以结合pg_stat_activity、gs_stack、dbe_perf.pooler_status、pg_thread_wait_status等视图分析对端长时间未发送指令的原因。 |
| wait transaction sync                                  | 等待xid指定事务同步。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 等待本地事务完成。                                                                                                                                                             | 修改transaction_sync_naptime参数。                                                                                                            |
| wait wal sync                                            | 等待特定lsn的WAL LOG完成到备机的同步。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 开启了主备日志强同步。                                                                                                                                                          | 修改为本地提交。                                                                                                                                 |
| wait data sync                                        | 等待完成数据页到备机的同步。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | 开启了数据页强同步到从备。                                                                                                                                                        | 关闭混合流复制功能enable_mix_replication。                                                                                                        |
| wait wal flush                                          | 主机中等待Xlog落盘以及DCF模式下与备机达成共识，备机中等待刷新完最小恢复点以及DCF模式下跟主机达成共识。                                                                                                                                                                                                                                                                                                                                                                                                                                                            | 等待日志落盘或刷新最小恢复点。                                                                                                                                                       | 检查I/O性能。                                                                                                                                 |
| wait data sync queue                                   | 等待把行存的数据页放入同步队列。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 开启了数据页强同步从备。                                                                                                                                                         | 关闭混合流复制功能enable_mix_replication。                                                                                                       |
| flush data                                            | 等待向网络中nodename指定节点的plevel对应线程发送数据。如果状态包含phase信息，则可能的阶段状态为wait quota，即当前通信流正在等待quota值。                                                                                                                                                                                                                                                                                                                                                                                                                             | 正在向其他节点发送数据。                                                                                                                                                       | 检查网络状态，或降低业务量。                                                                                                                           |
| wait reserve td                                         | 用于在对Uheap页面进行DML时分配Uheap页面的tdslot。                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | 对Ustore表执行DML。                                                                                                                                                      | 减少对Ustore表的并发DML操作。                                                                                                                   |
| wait td rollback                                       | 用于在对Uheap页面tdslot上的待回滚的事务做页内回滚。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 对Ustore表执行DML时无直接可使用的tdslot，需要释放abort且未回滚事务的tdslot。                                                                                                                | 减少对Ustore表的并发DML操作。                                                                                                                    |
| wait available td                                       | 用于等待Uheap和Ubtree页面的空闲td。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 对Ustore表进行DML时，Uheap、Ubtree页面上暂时无可分配的td。                                                                                                                            | 减少对Ustore表的并发DML操作。                                                                                                                     |
| wait transaction rollback                             | 用于等待某事务ID对应的undo回滚完成。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | 对Ustore表进行DML时，事务abort。                                                                                                                                             | 减少对Ustore表进行DML操作的事务abort。                                                                                                               |
| prune table                                            | 等待堆表清理历史删除数据。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 触发了页面清理。                                                                                                                                                            | 减少Ustore表的并发DML。                                                                                                                        |
| prune index                                           | 等待索引清理历史删除数据。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 执行vacuum。                                                                                                                                                           | 减少并行vacuum操作。                                                                                                                           |
| stream get conn                                       | 初始化stream flow时，等待与nodename节点的consumer对象建立连接，且当前有N个待建连对象。                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 发送建连请求，等待对端返回结果。                                                                                                                                                      | 在对端通过PG_COMM_RECV_STREAM检查逻辑连接状态，或检查网络状态。                                                                                               |
| wait producer ready                                    | 初始化stream flow时，等待每个producer都准备好，当前正在等待nodename节点plevel对应线程的producer对象准备好，且仍有N个producer对象处于等待状态。                                                                                                                                                                                                                                                                                                                                                                                                                 | stream consumer等待producer完成执行并接收其发送的数据。                                                                                                                              | 检查网络状态，或降低业务量。                                                                                                                         |
| synchronize quit                                      | stream plan结束时，等待stream线程组内的线程统一退出。当wait_status中显示形如"synchronize quit, total *m* , remain *n*"的内容时，表示共有m个并发任务，其中仍存在n个并发任务未处于统一退出状态。                                                                                                                                                                                                                                                                                                                                                                                | 等待stream线程组内的线程统一退出。                                                                                                                                                | stream计划和smp计划的SQL均会出现该等待事件，可通过增加非stream计划的hint或关闭enable_stream_operator功能规避。                                                            |
| wait stream group destroy                              | 等待销毁stream node group。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | stream plan结束时，等待销毁stream node group。                                                                                                                                 | stream计划和smp计划的SQL均会出现该等待事件，可通过增加非stream计划的hint或关闭enable_stream_operator功能规避。                                                           |
| wait stream thread ready                               | stream producer阻塞，直至其线程id被成功设置。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | stream producer未成功刷新线程id。                                                                                                                                            | stream计划和smp计划的SQL均会出现该等待事件，可通过增加非stream计划的hint或关闭enable_stream_operator功能规避。                                                           |
| wait create stream thread                                 | 等待stream线程启动。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 由于资源上限等原因，等待stream线程启动。                                                                                                                                                | stream计划和smp计划的SQL均会出现该等待事件，可通过增加非stream计划的hint或关闭enable_stream_operator功能规避。                                                          |
| wait active statement                                 | 等待作业执行，正在资源负载管控中。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 超过并发上限。                                                                                                                                                             | 减少并发操作。                                                                                                                                  |
| wait memory                                           | 等待内存获取。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | 有线程处于等待mem状态                                                                                                                                                           | -                                                                                                                                        |
| Sort                                                  | 当前是Sort算子做排序。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 1.查询的数据量大； 2.计划不合理，如过滤条件没有下推。                                                                                          | 尝试更改SQL语句调整执行计划。                                                                                                                        |
| Sort - fetch tuple                                      | 当前是Sort算子做排序，fetch tuple表示Sort算子正在获取tuple。                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 1.查询的数据量大； 2.计划不合理，比如大小表Join的顺序不合理。                                                                                  | 尝试更改SQL语句调整执行计划。                                                                                                                         |
| Sort - write file                                      | 当前是Sort算子做排序，write file表示Sort算子正在将数据写入磁盘。                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 1.查询的数据量大； 2.计划不合理，如过滤条件没有下推； 3.由于内存设置较小，或其他线程占用，导致当前业务线程内存不够。         | 1.尝试更改SQL语句调整执行计划； 2.调大内存。                                                          |
| Material                                                | 当前是Material算子。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 1.查询的数据量大； 2.计划不合理，比如过滤条件没有下推。                                                                                | 1.尝试更改SQL语句调整执行计划； 2.调大内存。                                                        |
| Material - write file                                 | 当前是Material算子，write file表示Material算子正在将数据写入磁盘。                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 1.查询的数据量大； 2.计划不合理，如过滤条件没有下推； 3.由于内存设置较小，或其他线程占用，导致当前业务线程内存不够。        | 1.尝试更改SQL语句调整执行计划； 2.调大内存。                                                              |
| HashJoin - build hash                                | 当前是HashJoin算子，主要关注耗时的执行阶段。 - build hash：表示当前HashJoin算子正在建立哈希表。                                                                                                                                                                                                                                                                                                   | 1.查询的数据量大； 2.计划不合理，比如大小表Join的顺序不合理。                                                                             | 尝试更改SQL语句调整执行计划，添加对应的索引，加快Hash Join构建内表Hash table的速度。                                                                                   |
| HashJoin - write file                                  | 当前是HashJoin算子，主要关注耗时的执行阶段。 - write file：表示当前HashJoin算子正在将数据写入磁盘。                                                                                                                                                                                                                                                                                                   | 1.查询的数据量大； 2.计划不合理，如大小表Join的顺序不合理； 3.由于内存设置较小，或其他线程占用，导致当前业务线程内存不够。    | 1.尝试更改SQL语句调整执行计划； 2.调大内存。                                                                |
| HashAgg - build hash                                  | 当前是HashAgg算子，主要关注耗时的执行阶段。 - build hash：表示当前HashAgg算子正在建立哈希表。                                                                                                                                                                                                                                                                                                              | 1.查询的数据量大； 2.计划不合理，比如大小表Join的顺序不合理。                                                                                   | 1.尝试更改SQL语句调整执行计划； 2.调大内存。                                                                 |
| HashAgg - write file                                   | 当前是HashAgg算子，主要关注耗时的执行阶段。 - write file：表示当前HashAgg算子正在将数据写入磁盘。                                                                                                                                                                                                                                                                                             | 1.查询的数据量大； 2.计划不合理，比如大小表Join的顺序不合理； 3.由于内存设置较小，或其他线程占用，导致当前业务线程内存不够。    | 1.尝试更改SQL语句调整执行计划； 2.调大内存。                                                           |
| HashSetop - build hash                                 | 当前是HashSetop算子，主要关注耗时的执行阶段。 - build hash：表示当前HashSetop算子正在建立哈希表。                                                                                                                                                                                                                                                                                                    | 1.查询的数据量大； 2.计划不合理，比如大小表Join的顺序不合理。                                                                           | 尝试更改SQL语句调整执行计划。                                                                                                                        |
| HashSetop - write file                                  | 当前是HashSetop算子，主要关注耗时的执行阶段。 - write file：表示当前HashSetop算子正在将数据写入磁盘。                                                                                                                                                                                                                                                                                             | 1.查询的数据量大； 2.计划不合理，比如大小表Join的顺序不合理； 3.由于内存设置较小，或其他线程占用，导致当前业务线程内存不够。 | 1.尝试更改SQL语句调整执行计划； 2.调大内存。                                                                 |
| create index                                            | 当前正在创建索引。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 创建索引。                                                                                                                                                              | 尽量避免在非关键列或区分性较低的列建立索引。                                                                                                                 |
| analyze                                                  | 当前正在对表relname执行analyze。如果状态包含phase信息，则为autovacuum，表示是数据库自动开启AutoVacuum线程执行的analyze分析操作。                                                                                                                                                                                                                                                                                                                                                                                                                            | 触发autoanalyze或用户手动下发的analyze。                                                                                                                                       | 调整default_statistics_target减小采样率，或调高autovacuum_analyze_scale_factor和autovacuum_analyze_threshold，减少analyze的触发间隔。                       |
| vacuum                                                   | 当前正在对表relname执行vacuum。如果状态包含phase信息，则为autovacuum，表示是数据库自动开启AutoVacuum线程执行的vacuum清理操作。                                                                                                                                                                                                                                                                                                                                                                                                                              | 执行vacuum或analyze。                                                                                                                                                    | 取消vacuum或analyze操作，对于autovacuum线程，可通过减少页面并发DML实现。                                                                                        |
| vacuum full                                           | 当前正在对表relname执行vacuum full清理。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 执行vacuum full。                                                                                                                                                       | 避免对表执行重复无效的update操作，导致表膨胀。                                                                                                            |
| vacuum gpi                                            | vacuum或autovacuum流程中对分区表global partition index清理。                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 分区表上有GPI索引，执行过分区表DDL后，GPI索引产生的死元组依赖autovacuum/vacuum做异步清理。                                                                                                            | 减少分区表DDL频率，或者使用local索引。                                                                                                                  |
| gtm connect                                           | 等待与GTM建连。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 正在与GTM建连。                                                                                                                                                            | 检查GTM和网络状态。                                                                                                                            |
| gtm get csn                                           | 等待从GTM获取csn。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 事务commit时从GTM获取csn。                                                                                                                                                  | 检查GTM和网络状态。                                                                                                                            |
| gtm get snapshot                                        | 等待从GTM获取事务快照snapshot。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | 事务commit时从GTM获取snapshot。                                                                                                                                            | 检查GTM和网络状态。                                                                                                                            |
| gtm create sequence                                    | 等待GTM创建sequence。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | 正在发消息给GTM创建sequence。                                                                                                                                                 | 检查GTM和网络状态。                                                                                                                           |
| gtm alter sequence                                    | 等待GTM修改sequence。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | 正在发消息给GTM修改sequence。                                                                                                                                                  | 检查GTM和网络状态。                                                                                                                            |
| gtm get sequence val                                   | 等待从GTM获取sequence的下一个值。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 正在发消息给GTM获取sequence                                                                                                                                                  | 检查GTM和网络状态。                                                                                                                             |
| gtm set sequence val                                  | 等待GTM设置sequence的值。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | 正在发消息给GTM设置sequence。                                                                                                                                               | 检查GTM和网络状态。                                                                                                                             |
| gtm drop sequence                                    | 等待GTM删除sequence。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 正在发消息给GTM删除sequence。                                                                                                                                                  | 检查GTM和网络状态。                                                                                                                            |
| gtm rename sequence                                    | 等待GTM重命名sequence。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 正在发消息给GTM重命名sequence。                                                                                                                                              | 检查GTM和网络状态。                                                                                                                            |
| gtm set disaster cluster                               | 等待在GTM设置容灾集群的静态配置信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 搭建容灾集群，主集群和容灾集群倒换；或GTM通信异常。                                                                                                                                        | 正常情况时间小于1s，若长时间处于此等待事件，需检查GaussDB与GTM通信是否异常。                                                                                          |
| gtm get disaster cluster                                | 等待从GTM获取容灾集群的静态配置信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 搭建容灾集群，主集群和容灾集群倒换，主集群节点的拓扑结构发生变化；或GTM通信异常。                                                                                                                          | 正常情况时间小于1s，若长时间处于此等待事件，需检查GaussDB与GTM通信是否异常。                                                                                             |
| gtm del disaster cluster                              | 等待在GTM删除容灾集群的静态配置信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 搭建容灾集群，主集群和容灾集群倒换；或GTM通信异常。                                                                                                                                          | 正常情况时间小于1s，若长时间处于此等待事件，需检查GaussDB与GTM通信是否异常。                                                                                            |
| gtm set standby read info                               | 等待GTM写入备机读信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 备机从gtm中读取csn信息以及commit time时。                                                                                                                                        | 检查GTM和网络状态。                                                                                                                           |
| gtm get standby read info                            | 等待从GTM获取备机读信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 备机从gtm中获取上次信息。                                                                                                                                                       | 检查GTM和网络状态。                                                                                                                             |
| gtm set target standby info                           | 新特性预留。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 新特性预留。                                                                                                                                                              | 新特性预留。                                                                                                                                 |
| gtm get target standby info                           | 新特性预留。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 新特性预留。                                                                                                                                                               | 新特性预留。                                                                                                                                 |
| gtm reset standby read csn                           | 新特性预留。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | 新特性预留。                                                                                                                                                               | 新特性预留。                                                                                                                                  |
| wait sync consumer next step                             | 消费者等待下一次迭代。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | RecursiveUnion算子执行过程中，等待下一次迭代的数据；仅在分布式下会出现。                                                                                                                            | 设置enable_stream_recursive=off。                                                                                                          |
| wait sync producer next step                           | 生产者等待下一次迭代。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | RecursiveUnion算子对应的生产者执行过程中，等待下一次迭代的开始；仅在分布式下会出现。                                                                                                                  | 设置enable_stream_recursive=off。                                                                                                          |
| gtm set consistency point                              | 等待在GTM设置容灾集群的全局一致性快照。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 容灾集群正常运行过程中，CN收集并计算一致性快照，上报给GTM。                                                                                                                                      | 正常情况时间小于1s，若长时间处于此等待事件，需检查GaussDB与GTM通信是否异常。                                                                                              |
| wait sync bgworkers                                   | 等待并行创建索引的子线程完成本地扫描和排序。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | 执行并行创建索引。                                                                                                                                                             | 关闭并行创建索引。                                                                                                                               |
| flush local buffer for GTT                            | 等待本地buffer刷脏完成。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 等待本地buffer刷脏。                                                                                                                                                          | 减少业务量，检查I/O性能。                                                                                                                         |
| standby get snapshot                                    | 并行回放备机读场景下等待获取快照。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 并行回放模式下，备机上的查询在获取快照时，如果备机正在回放页面清理类日志，需要等相关的日志回放完成，否则可能会出现数据不一致的问题。                                                                                                    | 主机减少vacuum的执行频率，或者开启极致RTO回放模式。                                                                                                          |
| recovery conflict with lock                             | 备机回放八级锁日志与查询发生冲突，等待查询结束。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 主机执行DDL。                                                                                                                                                             | 主机减少DDL的执行频率。                                                                                                                           |
| recovery conflict with snapshot                         | 备机回放页面清理日志与查询发生冲突，等待查询结束。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 主机执行vacuum。                                                                                                                                                        | 主机减少vacuum的执行频率。                                                                                                                      |
| recovery conflict with tablespace                     | 备机回放删除tablespace日志与查询发生冲突，等待查询结束。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 主机执行删除tablespace。                                                                                                                                                   | 主机减少DDL的执行频率。                                                                                                                           |
| recovery conflict with database                      | 备机回放删除database日志与查询发生冲突，等待查询结束。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 主机执行删除database。                                                                                                                                                       | 主机减少DDL的执行频率。                                                                                                                          |
| recovery conflict with truncate                      | 备机回放文件truncate日志与查询发生冲突，等待查询结束。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 主机执行vacuum产生的文件truncate日志。                                                                                                                                           | 主机减少vacuum的执行频率。                                                                                                                         |
| recovery conflict with standby query timeout         | 极致RTO备机读，查询超过时间阈值，查询取消。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | 查询超过最大执行时间。                                                                                                                                                          | 减少查询的时间。                                                                                                                                |
| recovery conflict with force recycle                  | 极致RTO备机读，发生强制回收，查询取消。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | 极致RTO备机读历史文件空间占用超过阈值。                                                                                                                                                | 调大GUC参数max_standby_base_page_size。                                                                                                    |
| recovery conflict with buffer pin                      | 回放线程在解决buffer pin类型的查询与回放冲突。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 在数据库恢复过程与缓冲区锁定发生冲突。                                                                                                                                                 | 优化缓冲区管理策略，减少恢复操作与缓冲区锁定的冲突。                                                                                                             |
| wait io control                                         | 等待作业执行，正在I/O管控中。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | I/O操作被系统管控机制限制，如I/O资源配额或优先级控制。                                                                                                                                      | 检查和调整I/O管控策略，确保关键I/O操作能够及时执行。                                                                                                           |
| wait gs_sleep                                         | 等待服务器线程延迟时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     | 数据库内部的调度机制，用于控制线程的执行节奏。                                                                                                                                             | 检查数据库的配置参数，如是否有必要调整线程的调度策略。                                                                                                             |
| wait vacuum delay                                      | 等待vacuum延迟时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | 自动vacuum进程延迟执行，或手动vacuum操作等待合适的执行窗口。                                                                                                                                | 调整vacuum的执行策略，如增加自动vacuum的频率或在系统负载较低时执行。                                                                                                 |
| wait seq scan                                           | seq scan执行时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 数据库执行顺序扫描操作，由于缺乏索引或查询优化不足。                                                                                                                                         | 优化查询语句，增加适当的索引以减少全表扫描，提高查询效率。                                                                                                           |
| wait index scan                                        | index scan执行时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | 数据库执行索引扫描操作，由于索引设计不当或查询条件不匹配索引。                                                                                                                                       | 检查索引的有效性和查询条件，优化索引结构，提高索引扫描效率。                                                                                                         |
| wait checkpoint start                                  | checkpoint开始阶段时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | 数据库执行checkpoint操作的开始阶段，可能由于I/O性能瓶颈。                                                                                                                                  | 优化I/O性能，调整checkpoint的频率和时间，减少I/O等待。                                                                                                     |
| wait checkpoint done                                   | checkpoint结束阶段时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 | 数据库执行checkpoint操作的结束阶段，可能由于I/O性能瓶颈。                                                                                                                                 | 优化I/O性能，调整checkpoint的配置以减少等待时间。                                                                                                        |
| wait xact start command                                | xact开始时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | 事务开始阶段，由于事务日志瓶颈或锁等待。                                                                                                                                                  | 优化事务日志的处理，减少事务开始的延迟。                                                                                                                   |
| wait xact commit command                                | xact提交时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 事务提交阶段，由于锁等待或事务日志瓶颈。                                                                                                                                                 | 优化事务处理流程，减少锁竞争，提高事务日志处理效率。                                                                                                               |
| Accept client conn - Total Time                       | 等待客户端连接时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 用于统计客户端连接时间。                                                                                                                                                         | 减少业务并发。                                                                                                                                  |
| Accept client conn - ThrdPool - add epoll             | 等待监听事件加入epoll。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   | 用于统计加入监听事件。                                                                                                                                                          | 减少业务并发。                                                                                                                                  |
| Accept client conn - ThrdPool - wait worker             | 等待worker处理会话。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 用于统计等待到worker的时间。                                                                                                                                                   | 减少业务并发。                                                                                                                                  |
| Accept client conn - ThrdPool - init session           | 等待会话初始化。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 用于统计会话初始化时间。                                                                                                                                                          | 减少业务并发。                                                                                                                                |
| Accept client conn - Worker - init proc                | 等待proc初始化。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | 用于统计proc初始化时间。                                                                                                                                                       | 减少业务并发。                                                                                                                                  |
| Accept client conn - Worker - init session             | 等待会话初始化。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | 用于统计会话初始化时间。                                                                                                                                                       | 减少业务并发。                                                                                                                                  |
| security audit write pipe                              | 等待将审计日志写入管道。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 安全审计日志系统在写入日志时遇到瓶颈。                                                                                                                                                    | 优化审计日志系统，增加资源或调整审计策略，减少写入等待。                                                                                                              |
| wait ugin cleanup proc                                  | 等待UGIN索引清空缓冲区。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | 正在清理UGIN索引缓冲区。                                                                                                                                                       | 清理UGIN索引缓冲区时调用，适当减少gin_pending_list_limit大小。                                                                                            |
| wait gin cleanup proc                                  | 等待GIN索引清空缓冲区。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | 正在清理GIN索引缓冲区。                                                                                                                                                          | 清理GIN索引缓冲区时调用，适当减少gin_pending_list_limit大小。                                                                                             |
| wait fetch undo record                                | 等待读取目标UNDO记录。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | 事务同步或异步回滚时。                                                                                                                                                           | 减少DML操作的事务abort。                                                                                                                       |
| deadlock check                                         | 等待死锁检测完成。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | 等锁时间超过死锁检测配置时间，触发死锁检测。                                                                                                                                              | 优化业务流程减少锁冲突，或增加deadlock_timeout避免频繁死锁检测。                                                                                               |
| invalid wait event                                     | 意料之外的等待事件。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 发生了不应该发生的等待事件。                                                                                                                                                        | 联系华为技术支持。                                                                                                                                |
   
当wait_status为acquire lwlock、acquire lock或wait io时，表示有等待事件。正在等待获取wait_event列对应类型的轻量级锁、事务锁或者正在进行I/O操作。
其中，wait_status值为acquire lwlock（轻量级锁）时对应的wait_event等待事件类型与描述信息如[表3]所示。（wait_event为extension时，表示此时的轻量级锁是动态分配的锁，未被监控。）
 表3轻量级锁等待事件列表 
| wait_event类型                                | 类型描述                                                                                                                                | 出现原因                                                                                                                                                                                                                                                                                                                                                                                                                   | 调优建议                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| OidGenLock                              | 用于避免不同线程产生相同的OID。                                                                                                                  | 分配OID并发量大。                                                                                                                                                                                                                                                                                                                                                                                                           | 减少并发操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| XidGenLock                               | 用于避免两个事务获得相同的XID。                                                                                                                  | 分配XID并发量大。                                                                                                                                                                                                                                                                                                                                                                                                           | 减少并发DDL、DML等操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ProcArrayLock                           | 用于避免并发访问或修改ProcArray共享数组。                                                                                                          | 当前系统线程数量大。                                                                                                                                                                                                                                                                                                                                                                                                           | 减少并发线程数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| SInvalReadLock                          | 用于避免与清理失效消息并发执行。                                                                                                                  | 读取失效队列的失效消息时，加读锁。                                                                                                                                                                                                                                                                                                                                                                                                     | 减少DDL执行频率，降低失效消息发送次数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| SInvalWriteLock                         | 用于避免与其它写失效消息、清理失效消息并发执行。                                                                                                          | 插入失效队列的失效消息时，或对失效队列有非只读操作时，加写锁。                                                                                                                                                                                                                                                                                                                                                                                     | 减少DDL执行频率，降低失效消息发送次数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| WALBufMappingLock                        | 保护共享内存中各个WAL缓存页面与lsn偏移的映射关系，用于避免将记录插入未初始化的WAL文件。                                                                                 | 插入记录与初始化WAL文件并发。                                                                                                                                                                                                                                                                                                                                                                                                     | 增大wal_buffers设置。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| WALWriteLock                            | 用于避免并发WAL写盘。                                                                                                                      | 并发WAL文件写盘。                                                                                                                                                                                                                                                                                                                                                                                                            | 减少业务量，检查I/O性能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ControlFileLock                           | 用于避免pg_control文件的读写并发、写写并发。                                                                                                        | 数据库初始化，checkpoint、备份恢复、日志归档、主备同步等场景，并发访问pg_control文件。                                                                                                                                                                                                                                                                                                                                                                | 减少并发访问pg_control文件。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| CheckpointLock                             | 用于避免多个checkpoint并发执行。                                                                                                             | 触发checkpoint。                                                                                                                                                                                                                                                                                                                                                                                                         | 减小并发。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| MultiXactGenLock                          | 用于串行分配唯一MultiXact id。                                                                                                              | 分配MultiXact id并发量大。                                                                                                                                                                                                                                                                                                                                                                                                  | 减少并发DML等操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| MultiXactOffsetControlLock               | 用于避免对pg_multixact/offset的写写并发和读写并发。                                                                                               | 对pg_multixact/offset并发量过大。                                                                                                                                                                                                                                                                                                                                                                                           | 减小并发。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| MultiXactMemberControlLock               | 用于避免对pg_multixact/members的写写并发和读写并发。                                                                                               | 对pg_multixact/members并发量过大。                                                                                                                                                                                                                                                                                                                                                                                          | 减小并发。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| RelCacheInitLock                        | 用于失效消息场景对init文件进行操作时加锁。                                                                                                            | 初始化relcache时，或失效relcache init file时，对init文件加锁。                                                                                                                                                                                                                                                                                                                                                                         | 避免频繁销毁创建线程。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| CheckpointerCommLock                    | 用于向checkpointer发起文件刷盘请求场景，需要串行的向请求队列插入请求结构。                                                                                        | 脏页落盘、shrink、truncate操作等产生脏页后，收集sync请求。                                                                                                                                                                                                                                                                                                                                                                                | 减少此类操作的并发执行。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| TablespaceCreateLock                    | 用于确定tablespace是否已经存在。                                                                                                             | drop或创建表空间。                                                                                                                                                                                                                                                                                                                                                                                                           | 减少并发drop或create表空间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| BtreeVacuumLock                         | 用于防止vacuum清理B-tree中还在使用的页面。                                                                                                        | 执行vacuum。                                                                                                                                                                                                                                                                                                                                                                                                             | 减少并行vacuum操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| AutovacuumLock                            | 用于串行化访问autovacuum worker数组。                                                                                                         | Autovacuum Launcher正在调度worker线程。                                                                                                                                                                                                                                                                                                                                                                                     | 调整Autovacuum worker线程信息，无需调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| AutovacuumScheduleLock                    | 用于串行化分配需要vacuum的table。                                                                                                            | Autovacuum线程判断是否表需要清理。                                                                                                                                                                                                                                                                                                                                                                                               | 减少Astore表的并发DML操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| AutoanalyzeLock                         | 用于获取和释放允许执行Autoanalyze的任务资源。                                                                                                       | 在生成计划时，如果基表没有收集过统计信息，则会进行自动收集。单个节点只允许同时存在10个线程进行自动统计信息收集。本轻量锁用于控制统计信息自动收集的资源分配。                                                                                                                                                                                                                                                                                                                                     | 如果本轻量锁存在大量冲突，说明业务库中长期大量存在reltuples/relpages为0的表，无需进行自动统计信息收集。可以关闭autoanalyze参数进行调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| SyncScanLock                            | 用于确定heap扫描时某个relfilenode的起始位置。                                                                                                     | 执行synchronized sequential scan。                                                                                                                                                                                                                                                                                                                                                                                      | 减少并发扫描操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| BarrierLock                               | 用于保证当前只有一个线程在创建barrier。                                                                                                            | 有两个线程同时在创建barrier。                                                                                                                                                                                                                                                                                                                                                                                                    | 减少create barrier操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| NodeTableLock                             | 用于保护存放CN和DN节点信息的共享结构。                                                                                                               | 分布式扩容/缩容阶段，调用pgxc_pool_reload函数，对节点pool中缓存的集群拓扑结构进行刷新，需要加排他锁，此时分布式语句解析和执行阶段的读锁会被阻塞。                                                                                                                                                                                                                                                                                                                                 | 将集群扩容放在业务波谷期进行，减少业务冲突。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| PoolerLock                              | 用于保证两个线程不会同时从连接池里取到相同的连接。                                                                                                           | 加锁从连接池中获取连接。                                                                                                                                                                                                                                                                                                                                                                                                          | 通常情况下，业务稳定运行期间，不会触发此等待事件。如果频繁触发请降低业务量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| AlterPortLock                             | 用于保护协调节点更改注册端口号的操作。                                                                                                               | 线程初始化时会进行端口号注册。                                                                                                                                                                                                                                                                                                                                                                                                      | 通常情况下，业务稳定运行期间，不会触发此等待事件。如果频繁触发请排查后台线程是否频繁拉起。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| RelationMappingLock                      | 用于等待更新系统表到存储位置之间映射的文件。                                                                                                            | 并发创建pg_filenode.map。                                                                                                                                                                                                                                                                                                                                                                                               | 减少对pg_filenode.map的并发访问。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| SerializableXactHashLock                 | 用于避免对于可串行事务共享结构的写写并发和读写并发。                                                                                                           | 并发访问可串行事务。                                                                                                                                                                                                                                                                                                                                                                                                          | 减少并发访问可串行事务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| SerializableFinishedListLock              | 用于避免对于已完成可串行事务共享链表的写写并发和读写并发。                                                                                                        | 并发访问可串行事务。                                                                                                                                                                                                                                                                                                                                                                                                          | 减少并发访问可串行事务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| SerializablePredicateLockListLock         | 用于保护对于可串行事务持有的锁链表。                                                                                                                 | 并发访问可串行事务。                                                                                                                                                                                                                                                                                                                                                                                                          | 减少并发访问可串行事务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| OldSerXidLock                          | 用于保护记录冲突可串行事务的结构。                                                                                                                  | 并发访问可串行事务。                                                                                                                                                                                                                                                                                                                                                                                                           | 减少并发访问可串行事务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| FileStatLock                             | 用于保护存储统计文件信息的数据结构。                                                                                                                | 存储读取文件时调用pgstat上报统计信息。                                                                                                                                                                                                                                                                                                                                                                                                | 内置统计信息数组有固定大小，会很快达到限制，无需规避。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| SyncRepLock                              | 用于在主备复制时保护Xlog同步信息。                                                                                                                | 等待备机返回Xlog刷盘信息。                                                                                                                                                                                                                                                                                                                                                                                                    | 与主备间网络延迟，备机I/O性能相关。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| DataSyncRepLock                         | 用于在主备复制时保护数据页同步信息。                                                                                                                  | 等待备机返回数据页刷盘信息。                                                                                                                                                                                                                                                                                                                                                                                                        | 关闭混合流复制功能enable_mix_replication。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| ExtensionConnectorLibLock                  | 1. 初始化ODBC连接场景，在加载与卸载特定动态库时进行加锁。（EC弃用） 2. 异构DBLINK用于初始化OCI连接场景，在加载与卸载OCI相关动态库时进行加锁。 | 使用异构DBLINK连接Oracle数据库。                                                                                                                                                                                                                                                                                                                                                                                              | 不使用异构DBLINK。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| GTMHostInfoLock                            | 用于避免并发访问或者修改GTM主机信息。                                                                                                                | 并发访问GTM主机。                                                                                                                                                                                                                                                                                                                                                                                                            | 检查GTM和网络状态。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ReplicationSlotAllocationLock            | 用于主备复制时保护主机端的流复制槽的分配。                                                                                                              | 创建或者清理复制槽，修改复制槽状态。                                                                                                                                                                                                                                                                                                                                                                                                    | 仅创建或者清理复制槽，修改复制槽状态时会调用，无需调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ReplicationSlotControlLock                | 用于主备复制时避免并发更新流复制槽状态。                                                                                                              | 修改复制槽状态。                                                                                                                                                                                                                                                                                                                                                                                                            | 仅修改复制槽状态时会调用，无需调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| FullBuildXlogCopyStartPtrLock           | 控制全量build起点位置的并发访存，用于保护全量build中Xlog复制的操作。                                                                                         | 全量build。                                                                                                                                                                                                                                                                                                                                                                                                             | 用于build操作，无需调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| LogicalReplicationSlotPersistentDataLock | 控制逻辑复制槽持久化的并发顺序，用于保护逻辑复制过程中修改逻辑复制槽位的数据。                                                                                            | 逻辑复制槽数据需要修改。                                                                                                                                                                                                                                                                                                                                                                                                        | 仅修改逻辑复制槽数据时需要调用，无需调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ResourcePoolHashLock                     | 用于避免并发访问或者修改资源池哈希表。                                                                                                               | 读取或更新资源池哈希表时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                                     | 增删查改资源池时会申请该锁，业务高峰期也会频繁申请该锁，可以减少此两种操作，降低锁等待的可能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| WorkloadCGroupHashLock                  | 用于避免并发访问或者修改Cgroup信息构成的哈希表。                                                                                                        | 读取或更新Cgroup信息哈希表时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                              | 减轻业务压力。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| OBSGetPathLock                          | 用于避免对obs路径的写写并发和读写并发。                                                                                                              | -                                                                                                                                                                                                                                                                                                                                                                                                                      | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| WorkloadUserInfoLock                      | 用于避免并发访问或修改负载管理的用户信息哈希表。                                                                                                          | 读取或更新负载管理用户信息哈希表时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                               | 减轻业务压力。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| WorkloadIOUtilLock                      | 用于保护记录iostat、CPU等负载信息的结构。                                                                                                           | 读取或更新IOSTAT、CPU等负载信息时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                           | 减轻业务压力。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| WorkloadNodeGroupLock                    | 用于避免并发访问或者修改内存中的nodegroup信息构成的哈希表。                                                                                                   | 读取或更新nodegroup信息时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                                 | 减轻业务压力。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| JobShmemLock                            | 用于MPP兼容ORACLE定时任务功能中保护定时读取的全局变量。                                                                                                  | 定时任务scheduler线程与worker线程访问定时任务列表的锁。                                                                                                                                                                                                                                                                                                                                                                                   | 关闭定时任务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| OBSRuntimeLock                           | 用于获取环境变量，如GASSHOME。                                                                                                                | -                                                                                                                                                                                                                                                                                                                                                                                                                  | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| LLVMDumpIRLock                            | 用于导出动态生成函数所对应的汇编语言。                                                                                                                | 开启enable_codegen_print参数后，触发codegen执行时会出现该等待事件。                                                                                                                                                                                                                                                                                                                                                                      | 设置enable_codegen_print=off（默认为off，通常在问题定位时才开启）。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| LLVMParseIRLock                          | 用于在查询开始时，从IR文件中编译并解析预先编译好的IR函数。                                                                                                     | 查询触发codegen执行时，会出现该等待事件，通常等待时间非常短暂。                                                                                                                                                                                                                                                                                                                                                                                  | 设置enable_codegen=off。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| RPNumberLock                             | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ClusterRPLock                             | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| WaitCountHashLock                       | 用于保护用户语句计数功能场景中的共享结构。                                                                                                             | 在更新或查询等待计数哈希表时，可能因锁竞争而导致等待。                                                                                                                                                                                                                                                                                                                                                                                          | 优化等待计数哈希表的访问逻辑，减少锁竞争，或者优化查询性能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| InstrWorkloadLock                        | 保护负载管理统计信息的内存hash表访问。                                                                                                             | 读取或更新workload事务统计信息的哈希表时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                        | 可以通过GUC参数enable_resource_track关闭workload事务统计功能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| CBMParseXlogLock                         | cbm解析Xlog时的保护锁，控制cbm文件的并发访存。                                                                                                      | 有两个线程在同时使用该锁。                                                                                                                                                                                                                                                                                                                                                                                                        | 重试该操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| DelayDDLLock                             | 控制删除类DDL和延迟备份功能的并发顺序。                                                                                                               | 调用了延迟DDL的操作。                                                                                                                                                                                                                                                                                                                                                                                                          | 等待延迟DDL操作完成后，执行disable delay DDL操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| BadBlockStatHashLock                     | 保护共享损坏页面统计哈希表的并发访存。                                                                                                                 | 在更新或查询坏块统计信息时，可能因锁竞争而导致等待。                                                                                                                                                                                                                                                                                                                                                                                            | 优化对坏块统计信息的访问频率，减少锁竞争，或者增加处理坏块的并行度。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| RowPageReplicationLock                  | 控制行存页面复制的并发顺序，用于管理行存储的数据页复制。                                                                                                        | -                                                                                                                                                                                                                                                                                                                                                                                                                   | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| RcvWriteLock                           | 控制wal receiver writer的并发顺序，防止并发调用WalDataRcvWrite。                                                                                 | 写入WAL数据。                                                                                                                                                                                                                                                                                                                                                                                                              | 减少业务量，检查I/O性能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| InstanceTimeLock                        | 保护全局变量g_instance.stat_cxt.gInstanceTimeInfo，用于统计节点级别时间模型。                                                                         | 刷新或读取节点级别时间模型信息。                                                                                                                                                                                                                                                                                                                                                                                                     | 节点级别时间模型指标统计，无需规避。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| PercentileLock                          | 用于保护全局percentileBuffer。                                                                                                           | 读取或更新percentile统计数据或结果的全局缓存时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                    | 关闭percentile功能或适当增大计算周期。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| XlogRemoveSegLock                        | 控制最新删除WAL文件信息的并发访存，保护Xlog段文件的回收操作。                                                                                                | 回放checkpoint的Xlog。                                                                                                                                                                                                                                                                                                                                                                                                    | 减少checkpoint。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| DnUsedSpaceHashLock                       | 用于更新会话对应的空间使用信息。                                                                                                                   | 读取或更会话对应的空间使用信息哈希表时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                             | 减少会话。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| CsnMinLock                                | 控制csn min信息的并发访存。                                                                                                                 | 当前系统线程数量大。                                                                                                                                                                                                                                                                                                                                                                                                          | 减少并发线程数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| GPCClearLock                             | 用于保护全局Plan Cache hash表的清除操作。                                                                                                       | GPC清理待淘汰计划。                                                                                                                                                                                                                                                                                                                                                                                                         | 属于GPC正常清理取锁操作。可通过视图dbe_perf.global_plancache_clean手动清理，或关闭enable_global_plancache功能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| CaptureViewFileHashLock                  | 开启性能视图采集时，保护哈希表的并发访存。                                                                                                              | 同时对多个不同的表进行采集。                                                                                                                                                                                                                                                                                                                                                                                                      | 主要用于慢SQL定位使用，无需规避。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| UndoZoneLock                              | 锁定UndoZone的bitmap，保护undoZone的并发访存。                                                                                                | 每个业务线程需要分配一个UndoZone，UndoZone的分配通过bitmap来管理。分配时需要对bitmap加锁来确保每个线程都分配到了不同的UndoZone。                                                                                                                                                                                                                                                                                                                                    | 减少对Ustore表的DML操作的并发数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| RollbackReqHashLock                      | 对异步回滚哈希表加锁，管理共享内存中存储回滚请求信息的哈希表的并发访存。                                                                                              | 异步回滚机制在后台执行回滚，不影响用户继续执行其他语句。异步回滚时需先添加异步回滚任务到一个任务哈希表中。对哈希表操作时需加锁以防止并发问题。                                                                                                                                                                                                                                                                                                                                              | 尽量减少回滚事务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| HypoIndexLock                            | 虚拟索引创建、删除、重置等动作中使用的轻量级锁。                                                                                                            | 避免多会话下global级别虚拟索引的并发增删导致地址访问异常等。                                                                                                                                                                                                                                                                                                                                                                                     | 默认不开启，该特性在SQL调优阶段使用，不影响数据库性能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| WALWritePaxosLock                        | 保护向paxos复制组件写wal日志的并发顺序。                                                                                                          | 避免多线程并发写导致Xlog错乱。                                                                                                                                                                                                                                                                                                                                                                                                  | 一般只有Xlog刷盘线程调用无并发、WAL BUF满等情况下会有线程临时调用需要该锁保护，不影响性能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| BlockchainVersionLock                    | 账本数据库中控制全局区块号的并发读写。                                                                                                                | 在账本数据库的防篡改表特性中，为了保证全局区块表区块号的唯一性，需要在每一条记录生成的时候加锁生成递增的区块号。                                                                                                                                                                                                                                                                                                                                                             | 为避免频繁对账本表进行增删改操作，可以根据业务需求调整防篡改表的范围，并采用分库策略以降低对全局区块表的并发修改。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| GlobalPrevHashLock                       | 账本数据库中控制全局校验哈希的并发读写。                                                                                                              | 在账本数据库的防篡改表特性中，为了保证全局区块表的记录能够与上一行生成链式篡改校验信息，需要在每条记录生成时加锁来生成连续的哈希值，加锁机制可以保证并发写入的安全性。                                                                                                                                                                                                                                                                                                                                 | 为避免频繁对账本表进行增删改操作，可以根据业务需求调整防篡改表的范围，并采用分库策略以降低对全局区块表的并发修改。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| PldebugLock                             | 用于存储过程调试功能中锁处理操作。                                                                                                                  | pldebugger进行turnon、turnoff时加锁。                                                                                                                                                                                                                                                                                                                                                                                        | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| LocalBarrierBufferLock                 | 控制本地barrier文件修改，避免并发更新。                                                                                                           | 同时对本地barrier进行更新。                                                                                                                                                                                                                                                                                                                                                                                                     | 等待正在更新的操作执行完成。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| RoleIdLock                              | 控制pg_user_status系统表的并发读写。                                                                                                         | 提供密码保护策略。用户使用错误密码登录时，会更新系统表pg_user_status，记录失败次数和更新锁定状态。保证数据库账户安全。                                                                                                                                                                                                                                                                                                                                                   | 使用错误密码登录是不安全的行为，可能是密码被修改，但用户未能感知；或者存在恶意用户不断尝试数据库密码。数据库管理员可定期检查所有用户的锁定状态，并分析被锁定账户，减少错误密码登录的次数，有以下几种情况： 1. 数据库遭受恶意攻击：管理员应及时分析原因，找出攻击源并采取相应措施。 2. 密码被修改但用户未察觉：提醒用户及时更新密码，以确保账户安全。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| InstrStmtTrackCtlLock                   | 在动态开启全量SQL时, 保护哈希表的并发访存。                                                                                                           | 动态抓取FullSQL场景中，高频率对不同uniqueQueryId进行track，或是对同一uniqueQueryId频繁track和untrack。                                                                                                                                                                                                                                                                                                                                       | 主要用于慢SQL定位使用，无需规避。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| HashUidLock                               | 保护Uid的增删改查。                                                                                                                        | 访问带有用户的表。                                                                                                                                                                                                                                                                                                                                                                                                            | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ParallelDecodeLock                        | 并行解码分配全局槽位用锁，保护并行解码的并发顺序。                                                                                                          | 使用并行解码。                                                                                                                                                                                                                                                                                                                                                                                                              | 减少并行解码业务的启动。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| XLogMaxCSNLock                            | 保护容灾模式下本地最大可恢复CSN信息。                                                                                                              | 当前系统线程数量大。                                                                                                                                                                                                                                                                                                                                                                                                          | 减少并发线程数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| DisasterCacheLock                        | 容灾集群节点映射表的锁，保护共享内存中容灾信息缓存的并发访存。                                                                                                   | 搭建容灾集群，主集群和容灾集群倒换，主集群节点的拓扑结构发生变化，重新创建节点映射关系。                                                                                                                                                                                                                                                                                                                                                                        | 正常场景，无需调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| MaxCSNArrayLock                          | 保护共享内存中各个分片备机CSN恢复进度信息。                                                                                                           | 容灾读引入。                                                                                                                                                                                                                                                                                                                                                                                                                 | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| RepairBadBlockStatHashLock              | 保护共享内存中损坏页面哈希表的并发访存。                                                                                                                 | CRC损坏/LSN损坏页面被检测到，记录页面损坏信息。                                                                                                                                                                                                                                                                                                                                                                                        | 避免产生坏块。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ReplicationOriginLock                    | 发布订阅创建、删除、变更状态用锁。                                                                                                                   | 使用发布订阅。                                                                                                                                                                                                                                                                                                                                                                                                              | 减少发布订阅功能的启动。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| LogicalRepWorkerLock                   | 发布订阅后台回放线程启动、停止、关联槽位用锁。                                                                                                           | 使用发布订阅。                                                                                                                                                                                                                                                                                                                                                                                                              | 减少发布订阅功能的启动。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| XGBoostLibLock                           | DB4AI特性调用xgboost库时启用的锁。                                                                                                          | xgboost开源库与openElur系统不兼容，需要动态调用库。dlopen加载时需要加锁。                                                                                                                                                                                                                                                                                                                                                                      | xgboost库的加载属于特殊事件的被动调用。在未进行DB4AI相关操作（如创建模型、执行预测任务等）时，该锁不会影响数据库性能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| NgroupDestoryLock                         | 对于保护nodegroup哈希表并发修改加锁。                                                                                                           | pgxc_pool_reload等操作清空整个哈希表时加X锁，与其他S锁互斥发生等待事件。                                                                                                                                                                                                                                                                                                                                                                       | 仅在进行pgxc_pool_reload或其他涉及nodegroup操作时会出现，其他场景不会发生此等待事件。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| SQLAdvisorLock                          | 用于管理分布列推荐中hash表的并发访存。                                                                                                              | -                                                                                                                                                                                                                                                                                                                                                                                                                      | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| AuditIndexFileLock                      | 控制审计日志index文件的并发读写。                                                                                                              | 审计日志的管理依赖于内存中审计索引信息。审计线程中审计日志的老化和轮转，会更新索引信息，worker线程进行审计查询或删除过程会触发读取索引信息。加锁是为了索引信息更新或读取的正确性。                                                                                                                                                                                                                                                                                                                          | 正常情况下，当触发审计查询、删除时才会出现审计索引信息读写的临界区。出现长时间等锁时，可以先停止执行审计的查询或删除，或者通过GUC参数开关控制产生审计日志的速度。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| GsStackLock                               | 控制gs_stack函数不被并发调用。                                                                                                                | 防止gs_stack并发调用。                                                                                                                                                                                                                                                                                                                                                                                                     | 使用gs_stack时才会申请该锁，不使用gs_stack则对性能无影响，无需规避。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| DropArchiveSlotLock                      | 保护删除归档槽信息的并发顺序。                                                                                                                   | 同时对归档槽进行并发操作。                                                                                                                                                                                                                                                                                                                                                                                                          | 重试该操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| AboCacheLock                            | 控制ABO多列智能统计信息模型缓存的并发读写。                                                                                                             | 在进行多列智能统计信息模型训练与调用时会尝试缓存并读取已缓存模型以优化性能。需要加锁保证模型读取的正确性。                                                                                                                                                                                                                                                                                                                                                                | 设置enable_ai_stats = off。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| DistributeDecodeSlotLock                 | 分布式逻辑解码的复制槽的创建互斥。                                                                                                                  | 使用分布式逻辑解码，并发。                                                                                                                                                                                                                                                                                                                                                                                                      | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ExrtoSnapshotLock                       | 极致RTO备机读快照锁。                                                                                                                      | 正常回放生成快照会持有该锁，回放DDL日志取消查询时，可能持有的时间比较长。                                                                                                                                                                                                                                                                                                                                                                             | 主机减少DDL的执行频率。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| LocalBarrierRecordFlushLock              | 将内存中的barrier信息刷盘。                                                                                                                  | 同时调用了barrier刷盘的操作。                                                                                                                                                                                                                                                                                                                                                                                                   | 等待正在刷盘的操作执行完成。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ClogTruncateLock                        | 控制clog文件删除和读写并发的锁。                                                                                                                 | 避免clog文件删除和读写并发错误。                                                                                                                                                                                                                                                                                                                                                                                                    | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| RedoTruncateLock                          | 回放truncate文件时使用的锁。                                                                                                                   | 避免checkpoint和truncate并发。                                                                                                                                                                                                                                                                                                                                                                                             | DDL操作频率低对性能影响较小。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| SysToastOidGeneratorLock                  | 细粒度恢复时，如果涉及toast表，用来生成toast表的oid信息。                                                                                                | 同时调用了impdp table操作。                                                                                                                                                                                                                                                                                                                                                                                                   | 等待细粒度恢复结束。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| RedoStatisticLock                         | 回放dfx统计数据锁。                                                                                                                         | 避免查询和修改并发。                                                                                                                                                                                                                                                                                                                                                                                                          | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| DisasterCSNInfoListLock                  | 极致RTO容灾读csn和lsn映射表的锁。                                                                                                              | 回放barrier日志时会生成csn和lsn的映射。                                                                                                                                                                                                                                                                                                                                                                                          | 不会出现持锁很长的时间，轻量的操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| WorkloadRuleLock                         | workload锁，避免并发操作。                                                                                                                  | 读写workload资源时加锁。                                                                                                                                                                                                                                                                                                                                                                                                      | 减少业务并发。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| AcmFeedbackLock                         | 控制反馈基数估计模型算子收集相关全局变量的并发读写。                                                                                                        | 在收集算子与模型训练时需要维护收集的算子链表与算子数量的全局信息，需要加锁保证信息正确。                                                                                                                                                                                                                                                                                                                                                                        | 设置enable_adaptive_cost = off。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| AcmFeedbackModelCacheLock                | 控制ABO反馈基数估计模型缓存的并发读写。                                                                                                              | 在进行反馈基数估计模型训练与调用时通过缓存、尝试读取已缓存模型以优化性能，在进行该操作时需要加锁保证模型读取的正确性。                                                                                                                                                                                                                                                                                                                                                          | 设置enable_adaptive_cost = off。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| AcmParameterLock                         | 控制智能代价估计模型训练更新时对全局变量的并发读写。                                                                                                         | 在进行训练与更新智能代价模型时需更新全局变量acm_trainer中的模型参数，需要加锁保证更新与读取正确。                                                                                                                                                                                                                                                                                                                                                              | 设置enable_adaptive_cost = off。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| ArchiveTaskLock                         | 归档时，向归档任务队列中增删任务。                                                                                                                  | 有多个归档任务同时向归档队列中增删数据。                                                                                                                                                                                                                                                                                                                                                                                                  | 等待下一次任务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| TruncateFileLock                        | 备机回放truncate文件日志时持有的锁。                                                                                                           | 主机执行vacuum产生的文件truncate日志。                                                                                                                                                                                                                                                                                                                                                                                             | 主机避免短时间内删除大量数据。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| TmpBarrierBufferLock                     | 清理、合并本地barrier。                                                                                                                    | 有多个清理、合并本地barrier的操作。                                                                                                                                                                                                                                                                                                                                                                                                 | 等待本地barrier清理、合并结束。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| RedoBarrierBufferLock                    | 对内存中的barrier信息加锁更新。                                                                                                                | 读取或更新redo barrier中的信息。                                                                                                                                                                                                                                                                                                                                                                                                | 等待更新完成。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| AdioToggleLock                            | AdioToggleLock是Adio特性开关时加写锁，pread_wrapper、pwrite_wrapper加共享锁。                                                                      | 开启Adio特性时与读写调用互斥。                                                                                                                                                                                                                                                                                                                                                                                                   | 非性能敏感的锁，无需优化。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| LedgerRepairLock                         | 账本数据库中控制归档和修复操作的并发执行。                                                                                                              | 加锁机制可以保证账本数据库归档和修复操作并发写入的安全性。                                                                                                                                                                                                                                                                                                                                                                                       | 避免对账本表进行并发归档和修复操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ConsistencyVerifyStatHashLock            | 保护共享内存中用于数据-索引一致性校验条目登记的哈希表的并发访存。                                                                                                   | 执行数据-索引一致性校验。                                                                                                                                                                                                                                                                                                                                                                                                       | 避免发生数据索引不一致（如注入故障）；避免并发执行数据-索引一致性校验。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| PreLogicalStandbyControlLock             | 逻辑备系统函数执行并发控制，以及playback落盘并发控制。                                                                                                   | 物理转逻辑，或逻辑回放。                                                                                                                                                                                                                                                                                                                                                                                                       | 非性能敏感的锁，无需优化。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| LogicalStandbyMetaFlushLock              | 物理转逻辑准备解码元信息过程用于并发写控制。                                                                                                               | 物理转逻辑收集解码元信息。                                                                                                                                                                                                                                                                                                                                                                                                       | 非性能敏感的锁，无需优化。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| LogicalStandbyMetaControlLock            | 逻辑备元信息目录内容修改并发控制。                                                                                                                | 逻辑回放过程元信息维护并发控制。                                                                                                                                                                                                                                                                                                                                                                                                    | 非性能敏感的锁，无需优化。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| WALReceiverDieLock                       | walrcv退出锁。                                                                                                                         | 避免在写入buffer时walrcv退出并发。                                                                                                                                                                                                                                                                                                                                                                                              | 非性能敏感的锁，无需优化。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| TSDictionaryDefinitionLock             | 词典系统表gs_ts_dict_definition的全局锁。                                                                                                    | 控制gs_ts_dict_definition系统表的读写互斥，保证读取词典内容的完整性和一致性。                                                                                                                                                                                                                                                                                                                                                                    | 减少对TokenWeight类型词典的并发ALTER TEXT SEARCH、gs_ts_dict_add_definition、缓存加载操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| RespoolBufferContextBlockLock            | bufferpool锁。                                                                                                                       | 读写bufferpool。                                                                                                                                                                                                                                                                                                                                                                                                       | 减少业务并发。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ParallelBuildIdentifierLock              | 并行build分配build id的锁。                                                                                                               | 开启并行build。                                                                                                                                                                                                                                                                                                                                                                                                           | 不会出现持锁很长的时间，轻量操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ParallelBuildQueueLock                   | 并行build处理文件名队列的锁。                                                                                                                  | 开启并行build。                                                                                                                                                                                                                                                                                                                                                                                                           | 不会出现持锁很长的时间，轻量操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| InstrStmtGstraceCtlLock                  | 控制gstrace注册跟踪函数时不被并发调用。                                                                                                            | 防止gstrace注册跟踪函数时被并发调用。                                                                                                                                                                                                                                                                                                                                                                                               | 调用 gstrace 跟踪接口时才会申请该锁。无需规避。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| InstrStmtGstraceSQLCtlLock              | 控制gstrace注册跟踪SQL不被并发调用。                                                                                                           | 防止gstrace注册跟踪SQL被并发调用。                                                                                                                                                                                                                                                                                                                                                                                                | 调用 gstrace 注册SQL接口、以及注册了SQL在跟踪时才会申请该锁。无需规避。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| InconsistencyAlarmHashLock              | 保护共享内存中用于数据-索引一致性校验条目登记的哈希表的并发访存。                                                                                                 | 执行数据-索引一致性校验。                                                                                                                                                                                                                                                                                                                                                                                                        | 避免发生数据索引不一致（如注入故障）；避免并发执行数据-索引一致性校验。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| StackAddrToNameLock                      | 控制gs_stack将符号地址转换为符号名不被并发调用。                                                                                                        | 防止gs_stack将符号地址转换为符号名被并发调用。                                                                                                                                                                                                                                                                                                                                                                                         | 调用gs_stack或perf火焰图功能时才会申请该锁，无需调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| BufMappingLock                          | 用于保护对共享缓冲映射表的操作。                                                                                                                   | 缓冲区映射hash表的分区锁。                                                                                                                                                                                                                                                                                                                                                                                                        | 可以调整分区数，避免过多的冲突。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| BucketBufMappingLock                      | bucket扩容期间私有缓冲区分区锁。                                                                                                                 | bucket扩容期间竞争私有缓冲区。                                                                                                                                                                                                                                                                                                                                                                                                  | 仅在扩容流程内部涉及，不影响业务，暂无调整手段。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| LockMgrLock                             | 用于保护常规锁结构信息。                                                                                                                      | 获取常规锁时竞争写入主锁表。                                                                                                                                                                                                                                                                                                                                                                                                       | 调节GUC参数num_internal_lock_partitions。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| PredicateLockMgrLock                      | 用于保护可串行事务锁结构信息。                                                                                                                     | 用于保护可串行事务锁结构信息。                                                                                                                                                                                                                                                                                                                                                                                                      | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| OperatorRealTLock                        | 用于避免并发访问或者修改记录算子级实时数据的全局结构。                                                                                                        | -                                                                                                                                                                                                                                                                                                                                                                                                                     | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| OperatorHistLock                         | 用于避免并发访问或者修改记录算子级历史数据的全局结构。                                                                                                        | 在更新或查询操作符历史时，可能因锁竞争而导致等待。                                                                                                                                                                                                                                                                                                                                                                                            | 优化操作符历史信息的访问逻辑，减少锁竞争，或者优化查询性能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| SessionRealTLock                         | 用于避免并发访问或者修改记录query级实时数据的全局结构。                                                                                                     | 读取或更新session实时统计信息的哈希表时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                         | 减少session数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| SessionHistLock                           | 用于避免并发访问或者修改记录query级历史数据的全局结构。                                                                                                    | 读取或更新session历史统计信息的哈希表时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                          | 减少session数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| InstanceRealTLock                         | 用于保护共享实例统计信息哈希表的更新操作。                                                                                                              | 读取或更新实例统计信息哈希表时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                                | 减轻业务压力。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| CSNBufMappingLock                       | 控制共享csnlog页面映射的并发访存。                                                                                                                | 并发访问csn页面。                                                                                                                                                                                                                                                                                                                                                                                                           | 减少并发事务数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| CLogBufMappingLock                       | 用于提交日志缓存管理。                                                                                                                       | 用于提交日志缓存管理。                                                                                                                                                                                                                                                                                                                                                                                                         | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| UniqueSQLMappingLock                    | unique SQL统计信息存放在内存的unique SQL哈希表中，UniqueSQLMappingLock为LWLOCK用于保护该哈希表中数据。                                                         | unique SQL统计信息存放在内存的unique SQL哈希表中，当前版本共有128个哈希分区。当一个分区中更新数据时，需对相应分区加S锁以避免更新过程中删除动作触发内存问题，此时若有新的语句模板落入该分区，需等待更新操作完成放锁后才可执行添加；当某语句模板需要加入哈希表或从哈希表中删除时，需对该分区加X锁避免对该分区、添加、删除、写入操作，此时此分区内语句信息任何操作需等待插入、删除完成后执行。出现UniqueSQLMappingLock等待事件可能有以下原因：  1. 高并发产生大量新语句模板； 2. 业务高并发时间段调用unique_sql重置函数reset_unique_sql()。 | 通常情况下，业务稳定运行期间不涉及增减语句模板，不会触发此等待事件，若频繁出现此等待事件，可考虑下列方法规避此：  1. 若观察到业务模型中有大量select in语句，可设置instr_unique_sql_combination_options = 'in_clause'。  原理：将select in()语句多参数情况进行归一，减少新生成语句模板数量，减少哈希表加X锁次数。  影响：原有select in()语句的unique_sql_id发生变化，若已对该类语句打过sql patch，需重新统计相应语句新的id并重新打patch。  2. 若等待事件由上述原因2引起（日志中频繁打印\[UniqueSQL\] clean unique sql finished.），在业务低谷期再执行reset_unique_sql。  原理：业务高峰期unique sql哈希表频繁更新，reset的删除操作会对哈希表加x锁，造成大规模阻塞，在低谷期做reset可减小加锁对业务的影响。  影响：无。  3. 若等待事件由上述原因2引起（日志中频繁打印\[UniqueSQL\] Auto-cleanup over, %d uniquesqls are recycled.），可调整enable_auto_clean_unique_sql = off或适当增大instr_unique_sql_count。  原理：关闭自动淘汰功能可避免运行过程中对哈希表加锁删除操作，适当调大instr_unique_sql_count可增大unique sql哈希表容量，减少自动淘汰发生频率。  影响：若关闭自动淘汰功能，待哈希表记满后不会再对新语句模板做记录，导致部分统计信息丢失（不影响已有模板继续记录）；若增大instr_unique_sql_count，会增大unique_sql哈希表内存占用，需结合当前内存使用情况调整。  4. 若观察到大量业务频繁被UniqueSQLMappingLock阻塞，且不符合上述情况，采用兜底手段关闭unique sql功能，设置instr_unique_sql_count = 0。  原理：手动关闭unique sql功能，功能关闭后不再操作unique SQL哈希表，不会触发此等待事件。  影响：语句级别统计信息缺失，会影响问题定位。（full sql、asp、wdr report中sql statistics面板均依赖unique sql功能，关闭unique sql会同时影响上述功能使用。） |
| InstrUserLockId                        | 对保护用户登录或者退出登录哈希表并发修改加锁。                                                                                                           | 读取或更新用户登录、退出信息时对哈希表并发使用。                                                                                                                                                                                                                                                                                                                                                                                             | 用户登录、退出或查询用户登录、退出信息时会申请该锁，可以减少使用用户或避免用户同时登录、退出，降低等待锁的可能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| GPCMappingLock                            | 用于全局Plan Cache缓存管理。                                                                                                                | 获取、存入计划或计划失效清理取锁。                                                                                                                                                                                                                                                                                                                                                                                                    | 属于GPC执行过程中正常取锁操作。计划失效清理时写锁可能耗时较长，可降低DDL频率，或关闭enable_global_plancache功能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ProcXactMappingLock                    | 保护事务号-线程信息映射哈希表的并发访存。                                                                                                              | 当前系统线程数量大。                                                                                                                                                                                                                                                                                                                                                                                                          | 减少并发线程数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ASPMappingLock                          | 用于管理ASP的hash表的并发访存。                                                                                                                 | ASP中拿取uniqueSQL中数据。                                                                                                                                                                                                                                                                                                                                                                                                  | ASP中用于拿取uniqueSQL数据，无需规避。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| RecoveryXidMappingLock                  | 保护两阶段事务的恢复所需要的共享内存。                                                                                                               | 故障前存在已prepared事务。                                                                                                                                                                                                                                                                                                                                                                                                     | 减少进程重启前prepare commit事务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| BufferIOLock                           | 保护共享缓冲区单个页面加载或淘汰的IO并发。                                                                                                             | 缓冲区映射hash表的访问锁。                                                                                                                                                                                                                                                                                                                                                                                                       | 减少并发对同一页面进行I/O操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| BufferContentLock                          | 保护共享缓冲区单个页面的读取、修改。                                                                                                                | 缓冲区页面内容锁。                                                                                                                                                                                                                                                                                                                                                                                                           | 减少并发读写同一页面。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| BucketBufferIOLock                     | bucket扩容期间私有缓冲区IO锁。                                                                                                                  | bucket扩容期间竞争私有缓冲区。                                                                                                                                                                                                                                                                                                                                                                                                  | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| BucketBufferContentLock                | bucket扩容期间私有缓冲区内容锁。                                                                                                                 | bucket扩容期间竞争私有缓冲区。                                                                                                                                                                                                                                                                                                                                                                                                    | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| UndoPerZoneLock                         | 保护每个undoZone内信息的并发访存。                                                                                                             | 每个业务线程绑定一个UndoZone，更改UndoZone的元信息内容时，需要对UndoZone加锁，以防止业务线程和回收线程的并发修改产生问题。                                                                                                                                                                                                                                                                                                                                              | 减少对Ustore表的DML操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| UndoSpaceLock                           | 保护undoSpace的并发访存。                                                                                                                 | 每个UndoZone绑定一个UndoSpace，用于管理物理文件。对UndoSpace的元信息内容进行更改时，需要对UndoSpace加锁，以防止业务线程和回收线程的并发修改产生问题。                                                                                                                                                                                                                                                                                                                         | 减少对Ustore表的DML操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| PGPROCLock                               | 保护全局共享线程状态数组的并发访存。                                                                                                                 | 新建连接以及连接退出分配proc资源，与快照获取之间锁冲突。                                                                                                                                                                                                                                                                                                                                                                                        | 避免频繁建连。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ReplicationSlotLock                      | 用于保护ReplicationSlot。                                                                                                              | 将复制槽持久化到磁盘。                                                                                                                                                                                                                                                                                                                                                                                                         | 后台任务无需调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Async Ctl                              | 用于保护异步控制模块的共享内存结构。                                                                                                               | 确保多进程并发访问时的数据一致性。                                                                                                                                                                                                                                                                                                                                                                                                   | 减少并发操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| CLOG Ctl                                 | 保护clog的并发访存。                                                                                                                       | 每个节点更新事务状态信息都需要访问clog。                                                                                                                                                                                                                                                                                                                                                                                                | 减少并发事务数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| CSNLOG Ctl                                | 保护csn log的并发访存。                                                                                                                      | 每个节点事务提交需要将事务的csn更新到csn log里。                                                                                                                                                                                                                                                                                                                                                                                       | 减少并发事务数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| MultiXactOffset Ctl                     | 保护multixact日志中事务id的偏移量的并发访存。                                                                                                      | 当多个事务同时操作一个元组时，需要分配出multixactid,并保留到日志中。                                                                                                                                                                                                                                                                                                                                                                              | 减少多个事务对同一个元组进行修改或加锁。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| MultiXactMember Ctl                     | 保护multixact日志中事务id的并发访存。                                                                                                            | 当多个事务同时操作一个元组时，需要分配出multixactid,并保留到日志中。                                                                                                                                                                                                                                                                                                                                                                             | 减少多个事务对同一个元组进行修改或加锁。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| OldSerXid SLRU Ctl                        | 保护序列化事务的共享内存。                                                                                                                      | 当设置事务隔离级别为序列化时，多个事务同时对tuple进行修改。                                                                                                                                                                                                                                                                                                                                                                                      | 减少序列化事务修改同一个tuple的场景。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| WALInsertLock                             | 用于避免与其它WAL插入操作并发执行。                                                                                                                 | 插入WAL记录。                                                                                                                                                                                                                                                                                                                                                                                                              | 减少业务量，检查I/O性能。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| SnapshotBlockLock                         | 控制快照备份与页面刷盘的并发顺序。快照备份期间，阻塞双写页面落盘。                                                                                                   | 正在执行快照备份操作。                                                                                                                                                                                                                                                                                                                                                                                                            | 等待快照备份结束后执行。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| DoubleWriteLock                        | 用于双写的管理操作。                                                                                                                        | 写双写文件。                                                                                                                                                                                                                                                                                                                                                                                                               | pagewriter个数和双写文件个数相等不再维护。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| DWSingleFlushFirstLock                  | 控制非段页式单页面双写文件的并发顺序。                                                                                                                | 写单写文件。                                                                                                                                                                                                                                                                                                                                                                                                                 | 避免并发页面淘汰。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| DWSingleFlushSecondLock                   | 控制段页式单页面双写文件的并发顺序。                                                                                                                | 写单写文件。                                                                                                                                                                                                                                                                                                                                                                                                               | 避免并发页面淘汰。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| DWSingleFlushSecondBufTagLock              | 控制段页式单页面双写文件的元信息并发访存。                                                                                                             | 写单写文件。                                                                                                                                                                                                                                                                                                                                                                                                               | 避免并发页面淘汰。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| RestartPointQueueLock                   | 增量检查点checkpoint redo推进锁并发控制回放过程的redo推进位置。                                                                                          | 并发控制回放过程redo点推进位置。                                                                                                                                                                                                                                                                                                                                                                                                  | 减少主机checkpoint频率，减少恢复过程和按需回放并发访问。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| PruneDirtyQueueLock                     | 增量检查点下脏页队列清理锁。                                                                                                                      | 避免恢复过程做检查点更新脏页尾位置和pagewriter主线程清理脏页队列冲突。                                                                                                                                                                                                                                                                                                                                                                             | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| UnlinkRelHashTblLock                      | 保护共享内存中待删除文件哈希表的并发访存。                                                                                                             | 删除表的所有物理文件。                                                                                                                                                                                                                                                                                                                                                                                                          | 减少DDL操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| UnlinkRelForkHashTblLock                 | 保护共享内存中待删除文件fork哈希表的并发访存。                                                                                                          | 删除指定fork的物理文件。                                                                                                                                                                                                                                                                                                                                                                                                       | 减少DDL操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| LWTRANCHE_ACCOUNT_TABLE                  | 控制备机账号锁定记录的hash表的并发读写。                                                                                                              | 提供密码保护策略，用户使用错误密码登录备机时，会更新hash表，记录失败次数和更新锁定状态并存放在系统内存中，达到最大失败次数后，会禁止该用户登录备机，保证数据库备机的安全。                                                                                                                                                                                                                                                                                                                               | 调优建议：使用错误密码登录是不安全的行为，可能是密码被修改，但用户未能感知；或者存在恶意用户不断尝试数据库密码。数据库管理员可定期检查所有用户的锁定状态，并分析被锁定账户，减少错误密码登录的次数，有以下几种情况： 1）数据库遭受恶意攻击：管理员可通过日志分析登录的账号，找出攻击源并采取相应措施； 2）密码被修改但用户未察觉：提醒用户及时更新密码，以保障业务正常运行。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| MPFLLOCK                                | 回放完成且落盘的最大lsn。                                                                                                                    | 更新回放完成且落盘的最大lsn。                                                                                                                                                                                                                                                                                                                                                                                                    | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| GlobalTempTableControl                    | 保护全局临时表的本地共享hash表。                                                                                                                 | 插入、删除、修改、truncate、访问全局临时表。                                                                                                                                                                                                                                                                                                                                                                                         | 减少全局临时表的DDL、DML并发操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| NGroupMappingLock                        | 用于保护nodegroup哈希表的单个分桶并发修改加锁。                                                                                                      | 插入或删除单个分桶内的nodegroup时加X锁，与其他加X锁或S锁场景互斥产生等待事件。                                                                                                                                                                                                                                                                                                                                                                       | 仅在进行涉及nodegroup操作时会出现，其他场景不会发生此等待事件。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| MatviewSeqnoLock                       | 用于维护增量物化视图功能中的mlog表seqno列。                                                                                                         | 定义增量物化视图时，会通过mlog表维护基表的增量数据。基表增量数据写入mlog表时会申请该锁。seqno字段保证写入的增量数据有唯一且递增的序列号（标记增量数据的顺序）。                                                                                                                                                                                                                                                                                                                              | 定义增量物化视图时，基表增量数据写入mlog表会调用该锁。在某表IUD性能较为重要的场景下，应该避免对该表创建增量物化视图。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| IOStatLock                                | 用于资源管理IO统计信息哈希表并发维护操作。                                                                                                             | 读取或更新IO统计信息哈希表时会申请锁。                                                                                                                                                                                                                                                                                                                                                                                                | 减少I/O操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| StandbyStmtHistLock                       | 主要用于备机FullSQL定位能力。                                                                                                                  | 在慢SQL文件落盘时，保护standby_statement_history函数对变更的同一资源避免读越界。                                                                                                                                                                                                                                                                                                                                                                | 主要用于慢SQL定位使用，无需规避。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| WALBufferInitWait                          | 保护WAL共享内存页面的初始化和刷盘顺序。                                                                                                                | 初始化WAL Buffer。                                                                                                                                                                                                                                                                                                                                                                                                       | 仅初始化时触发，无需调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| WALInitSegment                         | 保护WAL日志段文件的初始化顺序。                                                                                                                | Xlog预初始化。                                                                                                                                                                                                                                                                                                                                                                                                          | 仅初始化时触发，无需调优。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| SegmentHeadPartitionLock                 | 保护段页式segment头部元信息的分区锁。                                                                                                              | 段页式对象的extent发生变化时，需要锁住segment header防止并发产生异常。                                                                                                                                                                                                                                                                                                                                                                        | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| TwoPhaseStatePartLock                   | 保护（各个分区）两阶段事务状态信息。                                                                                                                   | 保护（各个分区）两阶段事务状态信息。                                                                                                                                                                                                                                                                                                                                                                                                   | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| RoleIdPartLock                           | 保护进程角色Id的增删查。                                                                                                                        | 线程池模式下对进程角色Id增删查。                                                                                                                                                                                                                                                                                                                                                                                                     | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| GPRCMappingLock                           | 用于管理自治事务全局缓存哈希表的访问和修改操作。                                                                                                         | 高并发自治事务session场景，概率出现该锁等待事件。                                                                                                                                                                                                                                                                                                                                                                                          | 减少自治事务session并发数量。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| PgwrSyncQueueLock                          | 保护待刷盘文件队列的并发访存。                                                                                                                   | 增量checkpoint。                                                                                                                                                                                                                                                                                                                                                                                                        | 减少checkpoint频率。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| BarrierHashTblLock                      | 保护共享内存中barrier列表信息的并发访存。                                                                                                         | 对barrier_hash_table的并发访问，正常分布式容灾运行过程中，预解析线程解析barrier插入到hash表，回放线程回放完barrier日志后从hash表移除。                                                                                                                                                                                                                                                                                                                              | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| PageRepairHashTblLock                     | 保护页面修复哈希表的并发访存。                                                                                                                    | CRC损坏/LSN损坏页面被检测到，记录坏块。                                                                                                                                                                                                                                                                                                                                                                                               | 避免产生坏块。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| FileRepairHashTblLock                   | 保护文件修复哈希表的并发访存。                                                                                                                    | 发现文件损坏时，记录信息。                                                                                                                                                                                                                                                                                                                                                                                                         | 避免发生文件损坏。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ReplicationOriginLock                     | 发布订阅创建、删除、变更状态用锁。                                                                                                                   | 使用发布订阅。                                                                                                                                                                                                                                                                                                                                                                                                             | 减少发布订阅功能的启动。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| PCABufferContentLock                    | 跨页透明压缩特性，需要一个cache页面缓存cmap page，保护cache页面的一致性，功能类似于shared_buffer的 content lock。                                                   | 为了保护cache页面的一致性。                                                                                                                                                                                                                                                                                                                                                                                                    | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| WALConsensusWait                           | 保护日志达成一致才进行事务提交或日志回放操作。                                                                                                             | 需要确保WAL日志在多个节点上达成共识，可能因为网络延迟或节点性能差异导致等待。                                                                                                                                                                                                                                                                                                                                                                             | 优化网络配置和节点性能，以减少WAL日志共识的时间，或者调整事务的提交策略以减少对共识机制的依赖。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| SegMappingLock                            | 保护段页式cache哈希表的并发访问。                                                                                                                | 段页式维护了一张哈希表，保存逻辑位置和物理位置的对应关系。哈希表存在并发访问的情况，需要加锁。                                                                                                                                                                                                                                                                                                                                                                       | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| PendingDelLock                         | 保护线程上的pendinglist并发修改。                                                                                                             | 事务中创建、删除、修改等操作过多时，pendinglist可能过长，操作pendinglist耗时可能较长。                                                                                                                                                                                                                                                                                                                                                             | 减少事务中DDL操作的次数。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| AutonomousSessionLock                   | 用于自治事务建联时加锁。                                                                                                                      | 高并发下保证自治事务顺序建联。                                                                                                                                                                                                                                                                                                                                                                                                       | 减少自治事务并发使用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| CgroupHashLock                           | 用于防止并发初始化锁。                                                                                                                       | 并发初始化。                                                                                                                                                                                                                                                                                                                                                                                                              | 减少并发业务。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| IMCVInfoHashTblLock                     | 用于保护htap存放全部imcvdesc的哈希表。                                                                                                          | 用于保护htap存放全部imcvdesc的哈希表。                                                                                                                                                                                                                                                                                                                                                                                             | 使用分区表，构造多条gs_imcv，减少冲突。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| IMCVDescExpandLock                        | 用于保护单个IMCVDesc的并发安全。                                                                                                               | 用于保护单个IMCVDesc的并发安全。                                                                                                                                                                                                                                                                                                                                                                                                  | 减少并发加载COLVIEW操作。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| LogicalStandbyWalLock                     | 逻辑备拉取处理远端wal日志互斥。                                                                                                                  | 使用逻辑回放。                                                                                                                                                                                                                                                                                                                                                                                                              | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| DelayDdlInfoLock                          | 备机进行延迟DDL持有的锁。                                                                                                                     | 主机执行DDL。                                                                                                                                                                                                                                                                                                                                                                                                             | 主机减少DDL的执行频率。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| NvmeLSPosLock                           | 用于保护nvme哈希的4096个分区每个哈希分区的读写。                                                                                                      | 用来统计分区锁范围的时间，用以现网hang问题和性能问题定位。                                                                                                                                                                                                                                                                                                                                                                                      | 调整索引结构分散热点页面分布。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| BucketWriterLock                         | bucket扩容期间私有缓冲区sync锁。                                                                                                              | bucket扩容期间竞争私有缓冲区。                                                                                                                                                                                                                                                                                                                                                                                                  | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ClogBucketLock                           | 用于保护bucket clog控制文件。                                                                                                               | 大量bucket表业务并发扩展clog页面。                                                                                                                                                                                                                                                                                                                                                                                              | -                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| BufFreelistLock                           | 已废弃。                                                                                                                              | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| CUSlotListLock                           | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ShmemIndexLock                         | 不涉及。                                                                                                                              | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                  | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| CLogControlLock                           | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| SubtransControlLock                     | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| TwoPhaseStateLock                        | 已废弃。                                                                                                                             | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| AddinShmemInitLock                      | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| AsyncCtlLock                            | 已废弃。                                                                                                                             | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| AsyncQueueLock                           | 已废弃。                                                                                                                              | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| DataFileIdCacheLock                     | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| CStoreColspaceCacheLock                   | 已废弃。                                                                                                                              | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| CStoreCUCacheSweepLock                    | 已废弃。                                                                                                                              | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| MetaCacheSweepLock                        | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| FdwPartitionCacheLock                  | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| DfsConnectorCacheLock                   | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| dummyServerInfoCacheLock                 | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| SearchServerLibLock                     | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| DfsUserLoginLock                          | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| DfsSpaceCacheLock                        | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| LsnXlogChkFileLock                        | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| WorkloadStatHashLock                    | 已废弃。                                                                                                                              | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| WorkloadIoStatHashLock                    | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| WorkloadSessionInfoLock                  | 已废弃。                                                                                                                              | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| WorkloadRecordLock                       | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| PgfdwLock                                | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| RelfilenodeReuseLock                      | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| GPCCommitLock                           | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| GPCTimelineLock                         | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| TsTagsCacheLock                        | 已废弃。                                                                                                                             | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| MaxPageFlushLsnFileLock                    | 已废弃。                                                                                                                             | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| StreamingEngineConnLock                  | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| StreamingEngineExecLock                 | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| PartIdCacheLock                          | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| PartOidCacheLock                          | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| DeleteCompactionLock                       | 已废弃。                                                                                                                               | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| DeleteConsumerLock                         | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                    | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| UHeapStatLock                               | 不涉及。                                                                                                                                 | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                   | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ConsumerStateLock                           | 已废弃。                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| SyncPaxosLock                             | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| BackgroundWorkerLock                         | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| HadrSwitchoverLock                         | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| UniqueSqlEvictLock                           | 不涉及。                                                                                                                                  | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                  | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ExrtoRecycleResidualUndoLock               | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| DblinkFdwRelationLock                     | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| SPMGlobalLock                             | 不涉及。                                                                                                                                  | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                    | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| SlotsArrayLock                             | 已废弃。                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| MtdStatusLock                              | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| AltLogicalMapClearLock                    | 不涉及。                                                                                                                                | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                   | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| AltSnapTrackerXminLock                     | 不涉及。                                                                                                                                | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                   | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| AltSnapTrackerCsnLock                     | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| OndemandQueueStatLock                     | 不涉及。                                                                                                                                  | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                    | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| AscendHashLock                              | 不涉及。                                                                                                                                 | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                    | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| CacheSlotMappingLock                       | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| LtxidMappingLock                            | 不涉及。                                                                                                                                 | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                    | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| UspagrpMappingLock                        | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| GlobalSeqLock                            | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| GlobalWorkloadLock                         | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| NormalizedSqlLock                          | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| StartBlockMappingLock                     | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| DataCacheLock                              | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| MetaCacheLock                            | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                    | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| GeneralExtendedLock                       | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                     | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| PLdebugger                                   | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| GlobalCompilationProductHashTblLock        | 不涉及。                                                                                                                                 | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                    | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| WALFlushWait                              | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| AuditIndextblLock                           | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| GlobalPlanCacheLock                        | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| QueryPlanCacheLock                          | 已废弃。                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                    | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| SPMMappingLock                           | 不涉及。                                                                                                                                 | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                   | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| SPMGlobalInfoLock                          | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                  | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| AntiCacheLock                              | 不涉及。                                                                                                                               | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                   | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| SQLFeedbackLock                           | 不涉及。                                                                                                                                  | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                 | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| IMCUDataCacheLock                           | 已废弃。                                                                                                                                 | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| IMCUMetaCacheLock                         | 已废弃。                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| IMCVDescLatch                              | 已废弃。                                                                                                                                | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                   | 已废弃。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| WalRemoteWaitLock                         | 不涉及。                                                                                                                                   | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                   | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| AbnormalSQLMappingLock                     | 不涉及。                                                                                                                                | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                    | 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
   
当wait_status值为wait io时对应的wait_event等待事件类型与描述信息如[表4]所示。
 表4I/O等待事件列表 
| wait_event类型                  | 类型描述                                                                   | 出现原因                                                            | 调优建议                                                            |
|:---|:---|:---|:---|
| buffile_read                   | 等待从临时文件读取数据。                                                               | 查询语句产生临时文件。                                                      | 增大work_mem内存。                                                     |
| buffile_write                 | 等待写临时文件。                                                                    | 查询语句产生临时文件。                                                        | 增大work_mem内存。                                                    |
| BufHashTableSearch            | 共享缓冲区hash表搜索（可能会触发页面淘汰）。                                                   | 从缓冲区查找指定buffer。                                                   | 增大共享缓冲区大小，增加buffer命中率。                                           |
| buffer_strategy_get           | 缓冲区替换策略中找到buffer耗时。                                                       | 获取可用buffer。                                                      | 减小checkpoint时间，pagewriter_sleep、bgwriter_delay时间，加快扫描缓存区的频率；减少并发。 |
| ControlFileRead               | 读取pg_control文件。主要在数据库启动、执行checkpoint和主备校验过程中发生。                         | 在数据库启动、执行checkpoint和主备校验过程中，从控制文件加载数据。                              | 减少启停数据库、checkpoint、主备切换操作。                                        |
| ControlFileSync                | 将pg_control文件持久化到磁盘。数据库初始化时发生。                                           | 数据库启动时，将pg_control文件中的数据落盘。                                         | 减少启停数据库。                                                         |
| ControlFileSyncUpdate          | 将pg_control文件持久化到磁盘。主要在数据库启动、执行checkpoint和主备校验过程中发生。                    | 在数据库启动、执行checkpoint和主备校验过程中，将pg_control文件中的数据落盘。                  | 减少启停数据库、checkpoint、主备切换操作。                                      |
| ControlFileWrite               | 写入pg_control文件。数据库初始化时发生。                                                | 数据库启动时，会初始化控制文件，并写入磁盘。                                           | 减少启停数据库。                                                        |
| ControlFileWriteUpdate          | 更新pg_control文件。主要在数据库启动、执行checkpoint和主备校验过程中发生。                           | 在数据库启动、执行checkpointer、主备校验过程中，需要将控制文件变更信息，写入pg_control文件。          | 减少启停数据库、checkpoint、主备切换操作。                                       |
| CopyFileRead                   | copy文件时读取文件内容。                                                           | 由于文件I/O性能瓶颈或源文件被其他操作锁定。                                          | 优化I/O性能，或确保源文件未被其他操作长时间锁定，减少锁竞争。                                 |
| CopyFileWrite                 | copy文件时写入文件内容。                                                             | 由于文件I/O性能瓶颈或目标文件被其他操作锁定。                                          | 优化I/O性能，或确保目标文件未被其他操作长时间锁定，减少锁竞争。                               |
| DataFileExtend                  | 扩展文件时向文件写入内容。                                                           | 触发扩展文件操作。                                                        | 减少业务量，检查I/O性能。                                                  |
| DataFileImmediateSync          | 将表数据文件立即持久化到磁盘。                                                          | 触发checkpoint。                                                    | 调整checkpoint间隔并检查I/O性能。                                          |
| DataFilePrefetch                | 异步读取表数据文件。                                                                | 内存里缺少表数据文件信息，需要从磁盘加载。                                              | 调整shared_buffers大小并检查I/O性能。                                     |
| DataFileRead                    | 同步读取表数据文件。                                                               | 内存里缺少表数据文件信息，需要从磁盘加载。                                             | 调整shared_buffers大小并检查I/O性能。                                     |
| DataFileSync                    | 将表数据文件的修改持久化到磁盘。                                                           | 触发checkpoint。                                                      | 调整checkpoint间隔并检查I/O性能。                                            |
| DataFileTruncate               | 表数据文件truncate。                                                           | 触发truncate操作。                                                      | 减少对truncate表的并发操作。                                               |
| DataFileWrite                   | 向表数据文件写入内容。                                                              | 触发checkpoint。                                                     | 调整checkpoint间隔并检查I/O性能。                                          |
| SegFileExtend                    | 段页式文件扩展。                                                                  | 数据库在需要更多存储空间时会扩展段文件，由于文件系统性能限制会导致等待。                             | 优化文件系统的I/O性能，或者预先分配足够的存储空间以减少扩展操作。                              |
| SegReadDisk                    | 段页式文件读取。                                                                 | 数据库在访问数据时需要从磁盘读取段文件，由于I/O性能限制会导致等待。                               | 优化存储设备的I/O性能，或者增加缓存以减少读取操作。                                      |
| SegWriteDisk                   | 段页式文件写入。                                                                  | 数据库在更新数据时需要写入段文件，由于I/O性能限制会导致等待。                                   | 优化存储设备的I/O性能，或者增加写入操作的并行度。                                        |
| SegSync                        | 段页式文件刷盘。                                                                  | 在数据修改后需要确保数据持久化，因此需要等待文件同步。                                       | 优化存储设备的I/O性能，或者调整同步操作的频率以减少等待时间。                                  |
| SegFileShrink                  | 段页式文件收缩。                                                                  | 数据库在释放不再需要的存储空间时会收缩段文件，由于文件系统性能限制会导致等待。                            | 优化文件系统的I/O性能，或者减少段文件收缩操作的频率。                                     |
| LsnInfoPageDiskRead            | 极致RTO备机读，读lsn info页面的I/O延迟。                                                | 开启极致RTO备机读。                                                        | 增强I/O能力。                                                        |
| BlkInfoMetaDiskRead           | 极致RTO备机读，读block info页面的I/O延迟。                                              | 开启极致RTO备机读。                                                         | 增强I/O能力。                                                          |
| BasePageDiskRead              | 极致RTO备机读，读base page页面的I/O延迟。                                              | 开启极致RTO备机读。                                                      | 增强I/O能力。                                                        |
| LockFileAddToDataDirRead       | 读取"postmaster.pid"文件。                                                    | 并发读取"postmaster.pid"文件。                                         | 减少并发业务。                                                         |
| LockFileAddToDataDirSync      | 将"postmaster.pid"内容持久化到磁盘。                                                 | 并发持久"postmaster.pid"文件。                                          | 减少并发业务。                                                         |
| LockFileAddToDataDirWrite      | 将pid信息写到"postmaster.pid"文件。                                                 | 并发写"postmaster.pid"文件。                                          | 减少并发业务。                                                           |
| LockFileCreateRead              | 读取LockFile文件"%s.lock"。                                                   | 并发读取LockFile文件。                                                   | 减少并发业务。                                                          |
| LockFileCreateSync              | 将LockFile文件"%s.lock"内容持久化到磁盘。                                            | 并发持久LockFile文件。                                                    | 减少并发业务。                                                          |
| LockFileCreateWRITE           | 将pid信息写到LockFile文件"%s.lock"。                                              | 并发写LockFile文件。                                                    | 减少并发业务。                                                          |
| ReplicationSlotRead             | 读取流复制槽文件。重新启动时发生。                                                         | 读取复制槽持久化信息。                                                     | 仅进程启动，加载复制槽信息时会调用，无需调优。                                          |
| ReplicationSlotRestoreSync      | 将流复制槽文件持久化到磁盘。重新启动时发生。                                                     | 从磁盘同步复制槽持久化信息。                                                   | 仅进程启动，加载复制槽信息时会调用，无需调优。                                           |
| ReplicationSlotSync           | checkpoint时将流复制槽临时文件持久化到磁盘。                                               | 将复制槽信息持久化到磁盘。                                                    | 仅创建或者刷新复制槽状态时会调用，无需调优。                                          |
| ReplicationSlotWrite          | checkpoint时写流复制槽临时文件。                                                     | 将复制槽信息写入临时文件。                                                    | 仅创建或者刷新复制槽状态时会调用，无需调优。                                            |
| SLRUFlushSync                  | 将pg_clog、pg_subtrans和pg_multixact文件持久化到磁盘。主要在执行checkpoint和数据库停机时发生。       | 触发checkpoint。                                                    | 适当调小checkpoint间隔并检查I/O性能。                                       |
| SLRURead                       | 读取pg_clog、pg_subtrans和pg_multixact文件。                                      | 内存里缺少clog、csnlog信息，需要从磁盘加载。                                         | 适当调大shared_buffers大小并检查I/O性能。                                     |
| SLRUSync                       | 将脏页写入文件pg_clog、pg_subtrans和pg_multixact并持久化到磁盘。主要在执行checkpoint和数据库停机时发生。 | 触发checkpoint。                                                    | 适当调小checkpoint间隔并检查I/O性能。                                        |
| SLRUWrite                      | 写入pg_clog、pg_subtrans和pg_multixact文件。                                      | 触发checkpoint。                                                      | 适当调小checkpoint间隔并检查I/O性能。                                         |
| TwophaseFileRead                | 读取pg_twophase文件。在两阶段事务提交、两阶段事务恢复时发生。                                     | 内存里缺少pg_twophase信息，需要从磁盘加载。                                        | 适当调大shared_buffers大小并检查I/O性能。                                    |
| TwophaseFileSync              | 将pg_twophase文件持久化到磁盘。在两阶段事务提交、两阶段事务恢复时发生。                                  | 在两阶段事务期间，将脏页持久化到磁盘。                                               | 适当调小checkpoint间隔并检查I/O性能。                                        |
| TwophaseFileWrite             | 写入pg_twophase文件。在两阶段事务提交、两阶段事务恢复时发生。                                      | 在两阶段事务期间，重建磁盘文件。                                                  | 适当调小checkpoint间隔并检查I/O性能。                                        |
| UndoFileExtend                 | undo文件扩展。                                                                 | DML会产生undo记录，当空间不足时需要扩展undo文件，用于存储新的undo记录。                        | 减少对Ustore表的DML操作。                                                |
| UndoFilePrefetch              | undo文件异步读取。                                                              | 当系统支持posix_fadvise()系统调用时，数据库会对扫描进行预读取以提升性能。                        | 减少对Ustore表的DML操作。                                                |
| UndoFileRead                   | undo文件读取。                                                                  | 当业务需要访问元组历史版本，或者事务需要回滚时，会读取undo记录。                                  | 减少对Ustore表的DML操作。                                                |
| UndoFileWrite                | undo文件写入。                                                                  | DML会产生undo记录，写undo记录会先写入缓冲区，然后在pagewriter线程中落盘。此等待事件产生在落盘流程。       | 减少对Ustore表的DML操作。                                                 |
| UndoFileSync                  | undo文件同步落盘。                                                               | 同步将undo记录落盘到磁盘。                                                  | 减少对Ustore表的DML操作。                                                  |
| UndoFileUnlink                 | undo文件删除。                                                                | 每个Ustore表的DML操作均会产生undo记录，对无用的undo记录需要及时删除，以防undo空间不断膨胀。          | 减少对Ustore表的DML操作。                                               |
| UndoSegFileExtend             | undo段页式文件扩展。                                                               | DML会产生undo记录，当空间不足时需要扩展undo段页式文件，用于存储新的undo记录。                    | 减少对Ustore表的DML操作。                                              |
| UndoSegReadDisk               | undo段页式文件读取。                                                             | 当业务需要访问元组历史版本，或者事务需要回滚时，会读取undo记录。                                | 减少对Ustore表的DML操作。                                                |
| UndoSegWriteDisk              | undo段页式文件写入。                                                                | DML会产生undo记录，写undo记录会先写入缓冲区，然后在pagewriter线程中落盘。此等待事件产生在落盘流程。      | 减少对Ustore表的DML操作。                                                 |
| UndoSegSync                    | undo段页式文件同步落盘。                                                           | 同步将undo记录落盘到磁盘。                                                  | 减少对Ustore表的DML操作。                                               |
| UndoMetaSync                   | undo元数据文件同步落盘。                                                            | undo元数据会随着每轮checkpoint刷盘一次。确保checkpoint点更新之后，undo元数据的内容已经被实时持久化。 | 调大每轮增量checkpoint的时间间隔incremental_checkpoint_timeout。           |
| WALBootstrapSync              | 将初始化的WAL文件持久化到磁盘。在数据库初始化发生。                                               | 初始化数据库。                                                           | 仅初始化时触发，无需调优。                                                   |
| WALBootstrapWrite                | 写入初始化的WAL文件。在数据库初始化发生。                                                     | 初始化数据库。                                                          | 仅初始化时触发，无需调优。                                                    |
| WALCopyRead                    | 读取已存在的WAL文件并进行复制时产生的读操作。在执行归档恢复完后发生。                                     | 执行归档恢复。                                                           | 与I/O性能相关，可从硬盘优化。                                                 |
| WALCopySync                    | 将复制的WAL文件持久化到磁盘。在执行归档恢复完后发生。                                             | 执行归档恢复。                                                            | 与I/O性能相关，可从硬盘优化。                                                 |
| WALCopyWrite                  | 读取已存在WAL文件并进行复制时产生的写操作。在执行归档恢复完后发生。                                       | 执行归档恢复。                                                          | 与I/O性能相关，可从硬盘优化。                                               |
| WALInitSync                     | 将新初始化的WAL文件持久化磁盘。在日志回收或写日志时发生。                                            | 创建新的日志文件。                                                           | 与I/O性能相关，可从硬盘优化。                                                 |
| WALInitWrite                  | 将新创建的WAL文件初始化为0。在日志回收或写日志时发生。                                             | 创建新的日志文件。                                                          | 与I/O性能相关，可从硬盘优化。                                                 |
| WALRead                      | 从Xlog日志读取数据。两阶段文件redo相关的操作产生。                                            | 日志传输或逻辑解码操作。                                                    | 与I/O性能相关，可从硬盘优化。                                                |
| ShareStorageWalRead             | 共享盘读取日志文件。                                                               | 共享存储WAL读取速度较慢，导致读取操作耗时。                                           | 优化网络和存储性能，或者增加WAL文件的读取并行度。                                     |
| ShareStorageWalWrite           | 共享盘写入日志文件。                                                                | 共享存储WAL写入速度较慢，导致写入操作耗时。                                           | 优化存储性能，或者调整WAL日志生成的配置以减少写入操作的等待。                                  |
| ShareStorageCtlInfoRead       | 共享盘读取控制信息。                                                                 | 共享存储控制信息读取速度较慢，导致读取操作耗时。                                          | 优化存储性能，或者减少控制信息读取的频率。                                           |
| ShareStorageCtlInfoWrite       | 共享盘写入控制信息。                                                               | 共享存储控制信息写入速度较慢，导致写入操作耗时。                                          | 优化存储性能，或者减少控制信息写入的频率。                                            |
| WALSyncMethodAssign            | 将当前打开的所有WAL文件持久化到磁盘。                                                      | wal_sync_method参数变更。                                             | 与I/O性能相关，可从硬盘优化。                                                   |
| WALWrite                      | 写入WAL文件。                                                                  | 写入Xlog文件。                                                          | 与I/O性能相关，可从硬盘优化。                                                |
| WALBufferAccess                | WAL Buffer访问（出于性能考虑，内核代码里只统计访问次数，未统计其访问耗时）。                               | 插入WAL记录。                                                            | 不统计耗时，无需调优。                                                      |
| WALBufferFull                   | WAL Buffer满时，写WAL文件相关的处理。                                                  | WAL Buffer满，等待下刷。                                                | 增大wal_buffers设置。                                                 |
| DoubleWriteFileRead            | 等待读取双写文件。                                                                  | 数据库启动阶段，扫描双写文件中的页面，对半写页面进行修复。                                     | 减少启停数据库，避免出现半写。                                                 |
| DoubleWriteFileWrite           | 等待写入双写文件。                                                                | 触发checkpoint。                                                    | 减少checkpoint操作。                                                   |
| DWSingleFlushGetPos            | 单页面双写文件查找可用位置。                                                              | 增量检查点做全量checkpoint时，截断单写文件。                                         | 检查手动checkpoint操作。                                                  |
| DWSingleFlushWrite             | 单页面双写文件刷盘。                                                               | 执行脏页淘汰的时候写单写文件。                                                   | 减少页面淘汰，适当增加shared_buffers。                                        |
| CkptWaitPageWriterFlush        | 执行全量checkpoint时等待刷页。                                                       | 脏页刷新速度较慢，导致检查点操作受阻。                                               | 优化I/O性能，或增加写入器数量以提高写入效率。                                           |
| CkptWaitPageWriterSync         | checkpoint打点前等待有修改的文件同步到磁盘。                                                | 脏页同步速度较慢，导致检查点操作受阻。                                               | 优化I/O性能，或调整检查点配置以减少同步操作的等待。                                     |
| CkptWaitCommitTransactionFinish | checkpoint打点前等待所有已经提交的事务提交完毕。                                             | 检查点需要等待所有活跃事务提交，以确保数据一致性。                                         | 优化事务处理流程，减少长事务，或者调整检查点的触发频率。                                     |
| PredoProcessPending             | 并行日志回放中，当前记录回放等待其它记录回放完成。                                                  | 出现需要等待同步的日志，如DDL相关日志。                                           | 减少DDL操作。                                                       |
| PredoApply                     | 并行日志回放中，当前工作线程等待其他线程回放至本线程lsn。                                            | 出现需要等待同步的日志，如DDL相关日志。                                             | 减少DDL操作。                                                        |
| DisableConnectFileRead        | HA锁分片逻辑文件读取。                                                               | HA build成功，同步主备配置文件。                                               | 与I/O性能相关，可从硬盘优化。                                               |
| DisableConnectFileSync         | HA锁分片逻辑文件强制刷盘。                                                             | HA build成功，同步主备配置文件。                                              | 与I/O性能相关，可从硬盘优化。                                                |
| DisableConnectFileWrite       | HA锁分片逻辑文件写入。                                                              | HA build成功，同步主备配置文件。                                             | 与I/O性能相关，可从硬盘优化。                                                  |
| MPFL_INIT                     | 初始化max_page_flush_lsn。                                                    | 初始化控制文件。                                                         | 与I/O性能相关，可从硬盘优化。                                                  |
| MPFL_READ                      | 读取max_page_flush_lsn。                                                     | 读取控制文件。                                                          | 与I/O性能相关，可从硬盘优化。                                                |
| MPFL_WRITE                    | 写入max_page_flush_lsn。                                                      | 写入控制文件。                                                           | 与I/O性能相关，可从硬盘优化。                                                 |
| LOGCTRL_SLEEP                 | 等待备机回放追赶。                                                                | 打开流控场景。                                                          | 关闭流控。                                                            |
| WALRcvBufFull                | 备机walreceiver接收Xlog日志放到缓冲区过程，缓冲区已满时发生。                                    | WAL接收缓冲区容量不足，无法及时处理接收到的WAL日志。                                      | 与I/O性能相关，可从硬盘优化。                                                  |
| WALFileSync                    | 将WAL文件持久化到磁盘。                                                              | 在执行WAL写入操作后，需要确保数据持久化，因此需要等待文件同步。                                 | 与I/O性能相关，可从硬盘优化。                                                |
| VlogInitSync                  | 等待vlog文件初始化。                                                             | 打开页面校验持久化后，创建新的vlog文件。                                            | 与I/O性能相关，可从硬盘优化。                                               |
| VlogWrite                        | 等待将vlog记录写入文件。                                                            | 打开页面校验持久化后，将vlog记录写入文件。                                            | 与I/O性能相关，可从硬盘优化。                                                |
| OBSWrite                     | 已废弃。                                                                     | 已废弃。                                                              | 已废弃。                                                             |
| invalid io event                | 意料之外的读写事件。                                                                  | 发生了不应该发生的读写事件。                                                    | 联系华为技术支持。                                                       |
   
当wait_status值为acquire lock（事务锁）时对应的wait_event等待事件类型与描述信息如[表5]所示。
 表5事务锁等待事件列表 
| wait_event类型      | 类型描述                 | 出现原因                                                                                              | 调优建议                        |
|:---|:---|:---|:---|
| relation         | 对表加锁。                | 业务语句获取表锁冲突。                                                                                          | 避免对同一个表并发DML和DDL。          |
| extend           | 对表扩展空间时加锁。          | 频繁对同一个表扩展空间锁冲突。                                                                                    | 避免对同一个表并发插入大量数据。           |
| partition         | 对分区表加锁。             | 业务语句获取分区表锁冲突。                                                                                      | 避免对同一个分区表并发DML和DDL。        |
| partition_seq     | 对分区表的分区加锁。           | 业务语句获取分区表的分区表锁冲突。                                                                                    | 避免对同一个分区表的分区并发DML和DDL。      |
| page              | 对表页面加锁。            | 业务语句增删改向量元数据冲突。                                                                                     | 减少对向量表向量列的并发DML。           |
| tuple            | 对页面上的tuple加锁。        | 执行DML时会对tuple加锁。                                                                                   | 减少并发DML操作。                  |
| transactionid    | 对事务id加锁。            | 并发访问相同事务。                                                                                           | 减少并发访问相同事务。                  |
| virtualxid         | 对虚拟事务id加锁。          | 并发访问相同虚拟事务。                                                                                        | 减少并发访问相同虚拟事务。                |
| object           | 加对象锁。              | 数据库内部对象锁冲突。                                                                                          | 分析具体流程代码。                    |
| advisory           | 加advisory锁。        | 调用咨询锁函数发生锁冲突，例如session1调用pg_advisory_lock_int8并长时间不放锁，session2调用pg_advisory_lock_int8同样参数就会进入等待状态。 | 优化业务流程，避免锁冲突。               |
| filenode          | 对文件名加锁，控制文件级操作的并发顺序。 | 由于多个会话并发访问同一文件时，系统需要对文件加锁以控制并发顺序，防止数据冲突。                                                           | 优化访问逻辑，减少对同一文件的并发操作。        |
| subtransactionid | 对子事务号加锁。             | 并发访问相同子事务。                                                                                         | 减少并发访问相同子事务。               |
| tuple_uid        | 对元组头部的uid隐藏字段加锁。    | 对Ustore表执行DML。                                                                                       | 减少对Ustore表的并发DML操作。        |
| spectoken       | 保护upsert过程。          | 事务里并发执行upsert。                                                                                     | 避免事务并发执行upsert或者优化upsert性能。 |
| bucket           | 加bucket锁。            | 业务语句获取bucket锁冲突。                                                                                     | -                          |
| vector_ccbuild    | 对索引的tuple加锁。         | 向量索引创建时会对索引的元组加锁。                                                                                   | 减少并发创建操作。                   |
| cstore_freespace   | 已废弃。                  | 已废弃。                                                                                               | 已废弃。                         |
| userlock          | 已废弃。                 | 已废弃。                                                                                                  | 已废弃。                        |
   
