云服务器内容精选

  • WAIT_EVENTS WAIT_EVENTS显示当前节点wait event的相关统计信息。内核中关键的事件信息见表2。或从视图wait_event_info中查看系统中所有的事件列表。关于每种事务锁对业务的影响程度,请参考LOCK语法小节的详细描述。 表1 WAIT_EVENTS字段 名称 类型 描述 nodename text 节点名称。 type text event类型。 event text event名称。 wait bigint 等待次数。 failed_wait bigint 失败的等待次数。 total_wait_time bigint 总等待时间(单位:微秒)。 avg_wait_time bigint 平均等待时间(单位:微秒)。 max_wait_time bigint 最大等待时间(单位:微秒)。 min_wait_time bigint 最小等待时间(单位:微秒)。 last_updated timestamp with time zone 最后一次更新该事件的时间。 父主题: Wait Events
  • WAIT_EVENT_INFO WAIT_EVENT_INFO视图显示wait event的具体信息。 表1 WAIT_EVENT_INFO字段 名称 类型 描述 module text event所属的模块名。 type text event类型。 event text event名称。 表2 Wait Events事件信息列表 模块分类 事件分类 事件 说明 Lock 等待事件 acquire lock 等待加锁,要么加锁成功,要么加锁等待超时。 SharedMemory LWLOCK事件 ShmemIndexLock 用于保护共享内存中的主索引哈希表 Shared buffer LWLOCK事件 BufMappingLock 用于保护对共享缓冲映射表的操作。 Lmgr LWLOCK事件 LockMgrLock 用于保护常规锁结构信息。 LWLock 等待事件 acquire lwlock 等待获取轻量级锁 I/O 等待事件 wait io 等待IO完成 COMM 等待事件 wait cmd 等待完成读取网络通信包 COMM 等待事件 wait pooler get conn 等待pooler完成获取连接 COMM 等待事件 wait pooler abort conn 等待pooler完成终止连接 COMM 等待事件 wait pooler clean conn 等待pooler完成清理连接 COMM 等待事件 get conn 获取到其他节点的连接 COMM 等待事件 set cmd 在连接上执行SET/RESET/TRANSACTION BLOCK LEVEL COMM 等待事件 cancel query 取消某连接上正在执行的SQL语句 COMM 等待事件 stop query 停止某连接上正在执行的查询 COMM 等待事件 wait node 等待接收与某节点的连接上的数据 COMM 等待事件 flush data 等待向网络中的其他节点发送数据 COMM 等待事件 stream get conn 初始化stream flow时,等待建立到consumer nodes的连接。 COMM 等待事件 wait producer ready 初始化stream flow时,等待每个producer都准备好。 Stream 等待事件 synchronize quit steam plan结束时,等待stream线程组内的线程统一退出。 Stream 等待事件 wait stream group destroy steam plan结束时,等待销毁stream node group。 Transaction 等待事件 wait transaction sync 等待事务同步 Transaction 等待事件 wait data sync 等待完成数据页到备机的同步 Transaction 等待事件 wait data sync queue 等待把行存的数据页放入同步队列 Transaction LWLOCK事件 OidGenLock 用于避免不同线程产生相同的OID。 Transaction LWLOCK事件 XidGenLock 用于避免两个事务获得相同的xid。 Transaction LWLOCK事件 ProcArrayLock 用于避免并发访问或修改ProcArray共享数组。 Transaction LWLOCK事件 SubtransControlLock 用于避免并发访问或者修改子事务控制数据结构 Transaction LWLOCK事件 MultiXactGenLock 用于串行分配唯一MultiXactid Transaction LWLOCK事件 TwoPhaseStateLock 用于避免并发访问或者修改两阶段信息共享数组 Transaction LWLOCK事件 SerializableXactHashLock 用于避免对于可串行事务共享结构的写写并发和读写并发 Transaction LWLOCK事件 SerializableFinishedListLock 用于避免对于已完成可串行事务共享链表的写写并发和读写并发 Transaction LWLOCK事件 SerializablePredicateLockListLock 用于保护对于可串行事务持有的锁链表 Transaction LWLOCK事件 PredicateLockMgrLock 用于保护可串行事务锁结构信息。 Transaction LWLOCK事件 OldSerXid SLRU lwlock 保护old xids的slru buffer Transaction LWLOCK事件 OldSerXidLock 用于保护记录冲突可串行事务的结构 Transaction LOCK事件 transactionid 对事务ID加锁 Transaction LOCK事件 virtualxid 对虚拟事务ID加锁 Checkpoint LWLOCK事件 CheckpointLock 用于避免多个checkpoint并发执行 Checkpoint LWLOCK事件 CheckpointerCommLock 用于向checkpointer发起文件刷盘请求场景,需要串行的向请求队列插入请求结构。 Analyze LWLOCK事件 AutoanalyzeLock 用于获取和释放允许执行Autoanalyze的任务资源。 Vacuum LWLOCK事件 BtreeVacuumLock 用于防止vacuum清理btree中还在使用的页面。 Vacuum LWLOCK事件 AutovacuumLock 用于串行化访问autovacuum worker数组 Vacuum LWLOCK事件 AutovacuumScheduleLock 用于串行化分配需要vacuum的table Auto vacuum LWLOCK事件 AutovacuumLock 用于保护autovacuum shmem struct Auto vacuum LWLOCK事件 AutovacuumScheduleLock 用于保护auto vacuum worker信息 Auto analyze LWLOCK事件 AutoanalyzeLock 用于保护autoAnalyzeFreeProcess变量,保证最多有10个auto analyze线程同时运行。 WAL 等待事件 wait wal sync 等待特定LSN的wal log完成到备机的同步 WAL I/O事件 WALBootstrapSync 将初始化的WAL文件持久化到磁盘。在数据库初始化发生。 WAL I/O事件 WALBootstrapWrite 写入初始化的WAL文件。在数据库初始化发生。 WAL I/O事件 WALCopyRead 读取已存在的WAL文件并进行复制时产生的读操作。在执行归档恢复完后发生。 WAL I/O事件 WALCopySync 将复制的WAL文件持久化到磁盘。在执行归档恢复完后发生。 WAL I/O事件 WALCopyWrite 读取已存在WAL文件并进行复制时产生的写操作。在执行归档恢复完后发生。 WAL I/O事件 WALInitSync 将新初始化的WAL文件持久化磁盘。在日志回收或写日志时发生。 WAL I/O事件 WALInitWrite 将新创建的WAL文件初始化为0。在日志回收或写日志时发生。 WAL I/O事件 WALRead 从xlog日志读取数据。两阶段文件redo相关的操作产生。 WAL I/O事件 WALSyncMethodAssign 将当前打开的所有WAL文件持久化到磁盘。 WAL I/O事件 WALWrite 写入WAL文件。 WAL I/O事件 LOGCTRL_SLEEP 统计流控发生了多少次、日志流控的睡眠时间。 WAL LWLOCK事件 RcvWriteLock 防止并发调用WalDataRcvWrite。 WAL LWLOCK事件 WALBufMappingLock 初始化Xlogbufer的下一个page时需要加x锁。 WAL LWLOCK事件 WALInsertLock 用于防止多个程序同时向同一个xlog缓冲区写。 WAL LWLOCK事件 WALWriteLock 用于避免并发刷写wal日志。 Relation LWLOCK事件 SInvalReadLock 用于避免与清理失效消息并发执行。 Relation LWLOCK事件 SinvalWriteLock 用于避免与其它写失效消息、清理失效消息并发执行。 Relation LWLOCK事件 RelCacheInitLock 用于失效消息场景对init文件进行操作时加锁。 Relation LWLOCK事件 TablespaceCreateLock 用于确定tablespace是否已经存在。 Relation LWLOCK事件 RelfilenodeReuseLock 避免错误地取消已重用的列属性文件的链接。 Relation LOCK事件 relation 对表加锁。 Relation LOCK事件 extend 对表扩展空间时加锁。 Relation LOCK事件 partition 对分区表加锁。 Relation LOCK事件 partition_seq 对分区表的分区加锁。 WLM 等待事件 wait active statement WLM等待active statement。 WLM 等待事件 wait memory WLM 等待空余内存。 DDL/DCL 等待事件 create index 等待index创建成功。 DDL/DCL 等待事件 analyze 等待analyze完成。 DDL/DCL 等待事件 vacuum 等待vacuum 完成。 DDL/DCL LWLOCK事件 DelayDDLLock 防止并发ddl。 DDL/DCL 等待事件 vacuum full 等待vacuum full操作 完成。 Executor 等待事件 Sort 等待tuple 排序完成。 Executor 等待事件 Sort - write file 归并排序时内存受限,将排序完的数据暂时写入文件。 Executor 等待事件 Material 等待将tuple物化。 Executor 等待事件 Material - write file 等待将物化的tuple写入文件。 Executor 等待事件 HashJoin - build hash 执行hashJoin时,等待hashtable建立完成。 Executor 等待事件 HashJoin - write file 执行hashJoin时,等待将tuple的hash结果写到磁盘。 Executor 等待事件 HashAgg - build hash 执行hashagg时,等待hashtable建立完成。 Executor 等待事件 HashAgg - write file 执行hashagg时,等待将tuple的hash结果写到磁盘。 Executor 等待事件 HashSetop - build hash 通过hash方式执行OP操作时,等待建立hash表。 Executor 等待事件 HashSetop - write file 通过hash方式执行OP操作时,等待将tuple的hash结果写到磁盘。 Executor 等待事件 wait sync consumer next step 等待stream consumer进行下一步处理。 Executor 等待事件 wait sync producer next step 等待stream producer进行下一步处理。 GTM 等待事件 gtm connect 等待与gtm连接 GTM 等待事件 gtm reset xmin 等待gtm重新设置xmin完成 GTM 等待事件 gtm get xmin 等待从gtm获取xmin GTM 等待事件 gtm get gxid 启动事务时等待从gtm获取gxid GTM 等待事件 gtm get csn 事务提交时等待从gtm获取CSN GTM 等待事件 gtm get snapshot 事务启动时等待从gtm获取快照 GTM 等待事件 gtm begin trans 等待GTM开启事务 GTM 等待事件 gtm commit trans 等待GTM提交事务 GTM 等待事件 gtm rollback trans 等待GTM回滚事务 GTM 等待事件 gtm start preprare trans 两阶段提交时,等待GTM完成一阶段。 GTM 等待事件 gtm prepare trans 两阶段提交时,等待GTM完成第二阶段。 GTM 等待事件 gtm open sequence 等待gtm创建sequence。 GTM 等待事件 gtm close sequence 等待gtm完成alter sequence操作。 GTM 等待事件 gtm set sequence val 等待gtm设置sequence的值 GTM 等待事件 gtm drop sequence 等待gtm删除sequence GTM 等待事件 gtm rename sequence 等待gtm重命名sequence GTM LWLOCK事件 GTMHostInfoLock 用于保护gtm的信息 Temp File I/O事件 BufFileRead 从临时文件中读取数据到指定buffer Temp File I/O事件 BufFileWrite 向临时文件中写入指定buffer中的内容 Pg_control I/O事件 ControlFileRead 读取pg_control文件。主要在数据库启动、执行checkpoint和主备校验过程中发生。 Pg_control I/O事件 ControlFileSync 将pg_control文件持久化到磁盘。数据库初始化时发生。 Pg_control I/O事件 ControlFileSyncUpdate 将pg_control文件持久化到磁盘。主要在数据库启动、执行checkpoint和主备校验过程中发生。 Pg_control I/O事件 ControlFileWrite 写入pg_control文件。数据库初始化时发生。 Pg_control I/O事件 ControlFileWriteUpdate 更新pg_control文件。主要在数据库启动、执行checkpoint和主备校验过程中发生。 Pg_control LWLOCK事件 ControlFileLock 用于避免pg_control文件的读写并发、写写并发。 文件操作 I/O事件 CopyFileRead copy文件时读取文件内容 文件操作 I/O事件 CopyFileWrite copy文件时写入文件内容 文件操作 I/O事件 DataFileExtend 扩展文件时向文件写入内容 表数据文件 I/O事件 DataFileImmediateSync 将表数据文件立即持久化到磁盘 表数据文件 I/O事件 DataFilePrefetch 异步读取表数据文件 表数据文件 I/O事件 DataFileRead 同步读取表数据文件 表数据文件 I/O事件 DataFileSync 将表数据文件持久化磁盘 表数据文件 I/O事件 DataFileTruncate 表数据文件truncate 表数据文件 I/O事件 DataFileWrite 向表数据文件写入内容 表数据文件 LWLOCK事件 SyncScanLock 用于确定heap扫描时某个relfilenode的起始位置 表数据文件 LWLOCK事件 RelationMappingLock 用于等待更新系统表到存储位置之间映射的文件 元数据 LWLOCK事件 MetaCacheSweepLock 用于元数据循环淘汰 postmaster.pid I/O事件 LockFileAddToDataDirRead 读取"postmaster.pid"文件 postmaster.pid I/O事件 LockFileAddToDataDirSync 将"postmaster.pid"内容持久化到磁盘 postmaster.pid I/O事件 LockFileAddToDataDirWrite 将pid信息写到"postmaster.pid"文件 Pid File I/O事件 LockFileCreateRead 读取LockFile文件"%s.lock" Pid File I/O事件 LockFileCreateSync 将LockFile文件"%s.lock"内容持久化到磁盘 Pid File I/O事件 LockFileCreateWRITE 将pid信息写到LockFile文件"%s.lock" 系统表映射文件 I/O事件 RelationMapRead 读取系统表到存储位置之间的映射文件 系统表映射文件 I/O事件 RelationMapSync 将系统表到存储位置之间的映射文件持久化到磁盘 系统表映射文件 I/O事件 RelationMapWrite 写入系统表到存储位置之间的映射文件 Streaming replication I/O事件 ReplicationSlotRead 读取流复制槽文件。重新启动时发生 Streaming replication I/O事件 ReplicationSlotRestoreSync 将流复制槽文件持久化到文件 Streaming replication I/O事件 ReplicationSlotSync checkpoint时将流复制槽临时文件持久化到磁盘 Streaming replication I/O事件 ReplicationSlotWrite checkpoint时写流复制槽临时文件 Streaming replication LWLOCK事件 ReplicationSlotAllocationLock 方式分配同一个复制槽 Streaming replication LWLOCK事件 ReplicationSlotControlLock 检测复制槽名称冲突,识别出具体可分配的复制槽,需要ReplicationSlotControlLock锁。 Clog I/O事件 SLRUFlushSync 将pg_clog文件持久化到磁盘。主要在执行checkpoint和数据库停机时发生 Clog I/O事件 SLRURead 读取pg_clog文件 Clog I/O事件 SLRUSync 将脏页写入文件pg_clog并持久化到磁盘。主要在执行checkpoint和数据库停机时发生。 Clog I/O事件 SLRUWrite 写入pg_clog文件 Clog LWLOCK事件 CLogControlLock 用于避免并发访问或者修改Clog控制数据结构 Clog LWLOCK事件 MultiXactOffsetControlLock 用于避免对pg_multixact/offset的写写并发和读写并发 Clog LWLOCK事件 MultiXactMemberControlLock 用于避免对pg_multixact/members的写写并发和读写并发 timelinehistory I/O事件 TimelineHistoryRead 读取timelinehistory文件。在数据库启动时发生。 timelinehistory I/O事件 TimelineHistorySync 将timelinehistory文件持久化到磁盘。在数据库启动时发生。 timelinehistory I/O事件 TimelineHistoryWrite 写入timelinehistory文件 pg_twophase I/O事件 TwophaseFileRead 读取pg_twophase文件。在两阶段事务提交、两阶段事务恢复时发生。 pg_twophase I/O事件 TwophaseFileSync 将pg_twophase文件持久化到磁盘。在两阶段事务提交、两阶段事务恢复时发生。 pg_twophase I/O事件 TwophaseFileWrite 写入pg_twophase文件。在两阶段事务提交、两阶段事务恢复时发生。 Cluster LWLOCK事件 NodeTableLock 用于保护存放CN和DN节点信息的共享结构 Concurrency LWLOCK事件 PoolerLock 用于保证两个线程不会同时从连接池里取到相同的连接 Concurrency LWLOCK事件 AsyncCtlLock 用于避免并发访问或者修改共享通知状态 Concurrency LWLOCK事件 AsyncQueueLock 用于避免并发访问或者修改共享通知信息队列 Double write I/O事件 DoubleWriteFileWrite Double write过程中将页面写到Double write文件中 Double write I/O事件 DoubleWriteFileRead 发生半写进行恢复时读取Double write文件 Statistics file LWLOCK事件 FileStatLock 用于保护存储统计文件信息的数据结构 Master-slave replication LWLOCK事件 SyncRepLock 用于在主备复制时保护xlog同步信息。 Master-slave replication LWLOCK事件 ReplicationSlotAllocationLock 用于主备复制时保护主机端的流复制槽的分配。 Master-slave replication LWLOCK事件 ReplicationSlotControlLock 用于主备复制时避免并发更新流复制槽状态。 Master-slave replication LWLOCK事件 LsnXlogChkFileLock 用于串行更新特定结构中记录的主备机的xlogflush位置点 Master-slave replication LWLOCK事件 DataSyncRepLock 用于在主备复制时保护数据页同步信息。 Speed up the cluster LWLOCK事件 SearchServerLibLock 用于GPU加速场景初始化加载特定动态库时,对读文件操作进行加锁。 Resource manage LWLOCK事件 ResourcePoolHashLock 用于避免并发访问或者修改资源池哈希表。 Resource manage LWLOCK事件 WorkloadStatHashLock 用于避免并发访问或者修改包含CN侧的SQL请求构成的哈希表。 Resource manage LWLOCK事件 WorkloadIoStatHashLock 用于避免并发访问或者修改用于统计当前DN的IO信息的哈希表。 Resource manage LWLOCK事件 WorkloadCGroupHashLock 用于避免并发访问或者修改cgroup信息构成的哈希表。 Resource manage LWLOCK事件 WorkloadRecordLock 用于避免并发访问或修改在内存自适应管理时对CN收到请求构成的哈希表。 Resource manage LWLOCK事件 WorkloadIOUtilLock 用于保护记录iostat,CPU等负载信息的结构。 Resource manage LWLOCK事件 WorkloadNodeGroupLock 用于避免并发访问或者修改内存中的nodegroup信息构成的哈希表。 OBS LWLOCK事件 OBSGetPathLock 用于避免对obs路径的写写并发和读写并发。 OBS LWLOCK事件 OBSRuntimeLock 用于获取环境变量,如GASSHOME。 MPP is compatible with ORACLE scheduled task function LWLOCK事件 JobShmemLock 用于MPP兼容ORACLE定时任务功能中保护定时读取的全局变量。 Operator history information statistics LWLOCK事件 OperatorRealTLock 用于避免并发访问或者修改记录算子级实时数据的全局结构。 Operator history information statistics LWLOCK事件 OperatorHistLock 用于避免并发访问或者修改记录算子级历史数据的全局结构。 query history information statistics LWLOCK事件 SessionRealTLock 用于避免并发访问或者修改记录query级实时数据的全局结构。 query history information statistics LWLOCK事件 SessionHistLock 用于避免并发访问或者修改记录query级历史数据的全局结构。 query history information statistics LWLOCK事件 WaitCountHashLock 用于保护用户语句计数功能场景中的共享结构。 barrier LWLOCK事件 BarrierLock 用于保证当前只有一个线程在创建Barrier。 CSN LWLOCK事件 CSNBufMappingLock 保护csn页面 instrumentation LWLOCK事件 UniqueSQLMappingLock 用于保护uniquesql hash table instrumentation LWLOCK事件 InstrUserLock 用于保护InstrUserHTAB。 instrumentation LWLOCK事件 PercentileLock 用于保护全局PercentileBuffer instrumentation LWLOCK事件 InstrWorkloadLock 保护全局instr workload xact info hash table Pgproc LWLOCK事件 Pgproc lwlock 用于保护pgproc Async buffer LWLOCK事件 AsyncCtlLock 保护Async buffer MultiXact LWLOCK事件 MultiXactOffset lwlock 保护MultiXact offet的slru buffer MultiXact LWLOCK事件 MultiXactMemberlwlock 保护MultiXact member的slrubuffer CBM LWLOCK事件 CBMParseXlogLock Cbm 解析xlog时的保护锁 BadBlock LWLOCK事件 BadBlockStatHashLock 用于保护global_bad_block_stat hash表 Page LOCK事件 page 对表页面加锁 Tuple LOCK事件 tuple 对页面上的tuple加锁 object LOCK事件 object 加对象锁 user LOCK事件 userlock 加用户锁 advisor LOCK事件 advisory 加advisory锁 ODBC LWLOCK事件 ExtensionConnectorLibLock 用于初始化ODBC连接场景,在加载与卸载特定动态库时进行加锁。 父主题: Wait Events
  • GLOBAL_WAIT_EVENTS GLOBAL_WAIT_EVENTS视图显示各节点的event的等待相关的统计信息。 表1 GLOBAL_WAIT_EVENTS字段 名称 类型 描述 nodename text 数据库进程名称。 type text event类型。 event text event名称。 wait bigint 等待次数。 failed_wait bigint 失败的等待次数。 total_wait_time bigint 总等待时间(单位:微秒)。 avg_wait_time bigint 平均等待时间(单位:微秒)。 max_wait_time bigint 最大等待时间(单位:微秒)。 min_wait_time bigint 最小等待时间(单位:微秒)。 last_updated timestamp with time zone 最后一次更新该事件的时间。 父主题: Wait Events
  • WAIT_EVENTS WAIT_EVENTS显示当前节点的event的等待相关的统计信息。具体事件信息见表2、表3、表4和表5。关于每种事务锁对业务的影响程度,请参考LOCK语法小节的详细描述。 表1 WAIT_EVENTS字段 名称 类型 描述 nodename text 数据库进程名称。 type text event类型。 event text event名称。 wait bigint 等待次数。 failed_wait bigint 失败的等待次数。 total_wait_time bigint 总等待时间(单位:微秒)。 avg_wait_time bigint 平均等待时间(单位:微秒)。 max_wait_time bigint 最大等待时间(单位:微秒)。 min_wait_time bigint 最小等待时间(单位:微秒)。 last_updated timestamp with time zone 最后一次更新该事件的时间。 父主题: Wait Events
  • GLOBAL_WAIT_EVENTS GLOBAL_WAIT_EVENTS视图显示各节点的event的等待相关的统计信息。 表1 GLOBAL_WAIT_EVENTS字段 名称 类型 描述 nodename text 数据库进程名称。 type text event类型。 event text event名称。 wait bigint 等待次数。 failed_wait bigint 失败的等待次数。 total_wait_time bigint 总等待时间(单位:微秒)。 avg_wait_time bigint 平均等待时间(单位:微秒)。 max_wait_time bigint 最大等待时间(单位:微秒)。 min_wait_time bigint 最小等待时间(单位:微秒)。 last_updated timestamp with time zone 最后一次更新该事件的时间。 父主题: Wait Events