- About
- Basic Features
- Introduction
- Platform Tenant Management
- Platform User Management
- TOTP Certification
- Basic Data Definition
- Media Management
- Command Management
- Mail Server Configuration
- Job Center
- Platform Host Resource Pool
- Platform Database Pool
- Platform Proxy Nodes Management
- Platform Components Management
- Additional Information Management
- Operation Log
- Connection Concurrency Configuration
- Customization of Platform Styles
- Parameter Templates
- License
- Monitor Large Screen
- Overview Display
- Tenant User Management
- Tenant Host Resource Pool
- Tenant Proxy Nodes Management
- Menu Management
- Report Center
- MogDB/openGauss
- Backup Recovery Center
- Monitoring
- Alert Center
- Inspect Center
WaitEvent Unified Classification Method
Advantages of Database WaitEvent Unified Classification
The openGauss database has a multitude of WaitEvents, with approximately over 500 types. For users who are not familiar with the openGauss database, the barrier to entry is too high. For example, when displaying a "wait transaction sync: XXXXXXXX" WaitEvent, the average user would find it difficult to understand its meaning. However, when we categorize this Event under "Waiting for Transaction Commit," users will quickly realize its implications, i.e., "There may be a bottleneck in transaction commits in the system. This issue might first need to be checked by examining whether the system TPS or business pressure is too high, otherwise, a DBA should be consulted to analyze the problem together."
Specific Classification Types
-
Disk IO: When a session is waiting for disk IO events or is marked as an IO status, it is categorized as this type.
-
Network: When a session is waiting for network IO or is marked as a network IO status, it is categorized as this type.
-
Cluster: When a session is marked as waiting for responses from other instances in the cluster or requesting cluster resource locks, it is categorized as a cluster wait.
-
ON CPU: When a session is undergoing CPU computations such as cache computations, operator computations, sorting computations, etc., it is marked as an ONCPU wait.
-
TX Lock: When a session is explicitly blocked by DML transaction locks, usually caused by issues in business application programs.
-
Enqueue Lock: When a session is blocked by other types of sessions (requesting the same resource lock), excluding the TX Lock class of wait types.
-
Commit: The most common type of concurrent wait, generally occurring during the transaction commit phase.
-
Concurrency: Other types of concurrent contention waits, caused when a large number of sessions concurrently request some lightweight memory locks, mainly reflecting concurrency issues.
-
Configuration: Generally includes some concurrent waits, lock waits, Cluster, etc., but the common cause is due to insufficient allocated resources or unreasonable parameter configuration. It is recommended to fix the problem by adjusting configurations or expanding capacity.
-
Administrative: Includes activities such as index creation, DDL, statistics collection, and database backup, all falling under the category of maintenance management.
-
Idle: Belongs to idle waits, where the session is suspended and waiting to enter a pending state.
-
Others: Other classifications, for abnormal or uncommon statuses.
Correspondence Table between openGauss Database WaitEvent and WaitClass
Version | wait_status Name | wait_status Description | Original Classification | Classification |
---|---|---|---|---|
v3.* | none | Not waiting for any event. | ||
v3.* | wait cmd | Waiting for the completion of reading a network communication packet. | idle | |
v3.* | wait pooler get conn | Waiting for the pooler to finish obtaining a connection. | Other | |
v3.* | wait pooler abort conn | Waiting for the pooler to finish terminating a connection. | Other | |
v3.* | wait pooler clean conn | Waiting for the pooler to finish cleaning up a connection. | Other | |
v3.* | pooler create conn:[nodename], total N | Waiting for the pooler to establish a connection, currently establishing a connection with the node specified by nodename, and there are N connections waiting to be established. | Other | |
v3.* | get conn | Obtained a connection to another node. | Other | |
v3.* | set cmd: [nodename] | Executing SET/RESET/TRANSACTION BLOCK LEVEL PARA SET/SESSION LEVEL PARA SET on a connection, currently executing on the node specified by nodename. | Other | |
v3.* | cancel query | Canceling an SQL statement being executed on a connection. | Administrative | |
v3.* | stop query | Stopping a query being executed on a connection. | Administrative | |
v3.* | wait node: [nodename](plevel), total N, [phase] | Waiting to receive data from a connection with a node, currently waiting for data from the plevel thread of nodename, and there are N connections' data pending return. If the status includes phase information, the possible phase states are: begin: indicates the transaction start phase. commit: indicates the transaction commit phase. rollback: indicates the transaction rollback phase. | Network | |
v3.* | wait transaction sync: xid | Waiting for transaction synchronization specified by xid. | Commit | |
v3.* | wait wal sync | Waiting for the synchronization of wal log of a specific LSN to the standby machine. | Commit | |
v3.* | wait data sync | Waiting for the synchronization of data pages to the standby machine. | Commit | |
v3.* | wait data sync queue | Waiting to put row-stored data pages or column-stored CUs into the synchronization queue. | Commit | |
v3.* | flush data: [nodename](plevel), [phase] | Waiting to send data to the plevel corresponding thread of nodename specified in the network. If the status includes phase information, the possible phase state is wait quota, indicating that the current communication flow is waiting for the quota value. | Commit | |
v3.* | stream get conn: [nodename], total N | When initializing stream flow, waiting to establish a connection with the consumer object of nodename, and there are currently N pending connection objects. | Other | |
v3.* | wait producer \ready: [nodename](plevel), total N | When initializing stream flow, waiting for each producer to be ready, currently waiting for the producer object of the plevel corresponding thread of nodename to be ready, and there are still N producer objects in a waiting state. | Other | |
v3.* | synchronize quit | At the end of the stream plan, waiting for the threads in the stream thread group to exit uniformly. | Other | |
v3.* | wait stream nodegroup destroy | At the end of the stream plan, waiting for the destruction of the stream node group. | Other | |
v3.* | wait active statement | Waiting for job execution, currently in resource load control. | Other | |
v3.* | analyze: [relname], [phase] | Currently performing analyze on table relname. If the status includes phase information, it is autovacuum, indicating that the database automatically starts the AutoVacuum thread to perform the analyze analysis operation. | Administrative | |
v3.* | vacuum: [relname], [phase] | Currently performing vacuum on table relname. If the status includes phase information, it is autovacuum, indicating that the database automatically starts the AutoVacuum thread to perform the vacuum cleanup operation. | Administrative | |
v3.* | vacuum full: [relname] | Currently performing vacuum full cleanup on table relname. | Administrative | |
v3.* | create index | Currently creating an index. | Administrative | |
v3.* | HashJoin - [ build hash | write file ] | Currently at the HashJoin operator, focusing on the time-consuming execution phase. build hash: indicates that the current HashJoin operator is building a hash table. write file: indicates that the current HashJoin operator is writing data to disk. | ON CPU | |
v3.* | HashAgg - [ build hash | write file ] | Currently at the HashAgg operator, focusing on the time-consuming execution phase. build hash: indicates that the current HashAgg operator is building a hash table. write file: indicates that the current HashAgg operator is writing data to disk. | ON CPU | |
v3.* | HashSetop - [build hash | write file ] | Currently at the HashSetop operator, focusing on the time-consuming execution phase. build hash: indicates that the current HashSetop operator is building a hash table. write file: indicates that the current HashSetop operator is writing data to disk. | ON CPU | |
v3.* | Sort | Sort - [fetch tuple | write file] | Currently at the Sort operator for sorting, fetch tuple indicates that the Sort operator is fetching a tuple, write file indicates that the Sort operator is writing data to disk. | ON CPU | |
v3.* | Material | Material - write file | Currently at the Material operator, write file indicates that the Material operator is writing data to disk. | ON CPU | |
v3.* | NestLoop | Currently at the NestLoop operator. | ON CPU | |
v3.* | wait memory | Waiting for memory acquisition. | Concurrency | |
v3.* | wait sync consumer next step | Stream operator waiting for consumer execution. | Others | |
v3.* | wait sync producer next step | Stream operator waiting for producer execution. | Others | |
v3.* | ShmemIndexLock | Used to protect the primary index hash table in shared memory. | lwlock | Concurrency |
v3.* | OidGenLock | Used to avoid different threads generating the same OID. | lwlock | Concurrency |
v3.* | XidGenLock | Used to avoid two transactions obtaining the same xid. | lwlock | Concurrency |
v3.* | ProcArrayLock | Used to avoid concurrent access or modification of the ProcArray shared array. | lwlock | Concurrency |
v3.* | SInvalReadLock | Used to avoid concurrent execution with cleanup of invalid messages. | lwlock | Concurrency |
v3.* | SInvalWriteLock | Used to avoid concurrent execution with other write invalid messages, cleanup of invalid messages. | lwlock | Concurrency |
v3.* | WALInsertLock | Used to avoid concurrent execution with other WAL insertion operations. | lwlock | Concurrency |
v3.* | WALWriteLock | Used to avoid concurrent WAL disk writing. | lwlock | Concurrency |
v3.* | ControlFileLock | Used to avoid concurrent read-write, write-write of the pg_control file. | lwlock | Concurrency |
v3.* | CheckpointLock | Used to avoid concurrent execution of multiple checkpoints. | lwlock | Concurrency |
v3.* | CLogControlLock | Used to avoid concurrent access or modification of sub-transaction control data structures. | lwlock | Concurrency |
v3.* | SubtransControlLock | lwlock | Concurrency | |
v3.* | MultiXactGenLock | Used for serial allocation of unique MultiXact ids. | lwlock | Concurrency |
v3.* | MultiXactOffsetControlLock | Used to avoid write-write concurrency and read-write concurrency on pg_multixact/offset. | lwlock | Concurrency |
v3.* | MultiXactMemberControlLock | Used to avoid write-write concurrency and read-write concurrency on pg_multixact/members. | lwlock | Concurrency |
v3.* | RelCacheInitLock | Used for locking when operating on init files in invalid message scenarios. | lwlock | Concurrency |
v3.* | CheckpointerCommLock | Used for serial insertion of request structures into the request queue when initiating file flush requests to the checkpointer. | lwlock | Concurrency |
v3.* | TwoPhaseStateLock | Used to avoid concurrent access or modification of two-phase commit shared arrays. | lwlock | Concurrency |
v3.* | TablespaceCreateLock | Used to determine if a tablespace already exists. | lwlock | Concurrency |
v3.* | BtreeVacuumLock | Used to prevent vacuum from cleaning up B-tree pages that are still in use. | lwlock | Concurrency |
v3.* | AutovacuumLock | Used for serial access to the autovacuum worker array. | lwlock | Concurrency |
v3.* | AutovacuumScheduleLock | Used for serial allocation of tables that require vacuum. | lwlock | Concurrency |
v3.* | AutoanalyzeLock | Used for acquiring and releasing resources for tasks that allow Autoanalyze execution. | lwlock | Concurrency |
v3.* | SyncScanLock | Used to determine the starting position of a relfilenode during a heap scan. | lwlock | Concurrency |
v3.* | NodeTableLock | Used to protect shared structures that store database node information. | lwlock | Concurrency |
v3.* | PoolerLock | Used to ensure that two threads do not simultaneously obtain the same connection from the connection pool. | lwlock | Concurrency |
v3.* | RelationMappingLock | Used to wait for the update of system table to storage location mapping files. | lwlock | Concurrency |
v3.* | AsyncCtlLock | Used to avoid concurrent access or modification of shared notification status. | lwlock | Concurrency |
v3.* | AsyncQueueLock | Used to avoid concurrent access or modification of shared notification information queues. | lwlock | Concurrency |
v3.* | SerializableXactHashLock | Used to avoid write-write concurrency and read-write concurrency on serializable transaction shared structures. | lwlock | Concurrency |
v3.* | SerializableFinishedListLock | Used to avoid write-write concurrency and read-write concurrency on completed serializable transaction shared linked lists. | lwlock | Concurrency |
v3.* | SerializablePredicateLockListLock | Used to protect the lock chain held by serializable transactions. | lwlock | Concurrency |
v3.* | OldSerXidLock | Used to protect the structure that records conflicting serializable transactions. | lwlock | Concurrency |
v3.* | FileStatLock | Used to protect the data structure that stores statistical file information. | lwlock | Concurrency |
v3.* | SyncRepLock | Used to protect xlog synchronization information during master-slave replication. | lwlock | Concurrency |
v3.* | DataSyncRepLock | Used to protect data page synchronization information during master-slave replication. | lwlock | Concurrency |
v3.* | CStoreColspaceCacheLock | Used to protect the allocation of CU space in column-stored tables. | lwlock | Concurrency |
v3.* | CStoreCUCacheSweepLock | Used for column CU Cache circular replacement. | lwlock | Concurrency |
v3.* | MetaCacheSweepLock | Used for metadata circular replacement. | lwlock | Concurrency |
v3.* | ExtensionConnectorLibLock | Used for initializing ODBC connection scenarios, locking when loading and unloading specific dynamic libraries. | lwlock | Concurrency |
v3.* | SearchServerLibLock | Used for GPU acceleration scenarios, locking read file operations when initializing and loading specific dynamic libraries. | lwlock | Concurrency |
v3.* | LsnXlogChkFileLock | Used for serial updating of the master-slave machine xlog flush position points recorded in specific structures. | lwlock | Concurrency |
v3.* | ReplicationSlotAllocationLock | Used to protect the allocation of stream replication slots on the master side during master-slave replication. | lwlock | Concurrency |
v3.* | ReplicationSlotControlLock | Used to avoid concurrent updates of stream replication slot status during master-slave replication. | lwlock | Concurrency |
v3.* | ResourcePoolHashLock | Used to avoid concurrent access or modification of resource pool hash tables. | lwlock | Concurrency |
v3.* | WorkloadStatHashLock | Used to avoid concurrent access or modification of hash tables composed of SQL requests containing the database master node. | lwlock | Concurrency |
v3.* | WorkloadIoStatHashLock | Used to avoid concurrent access or modification of hash tables used to count IO information of the current database node. | lwlock | Concurrency |
v3.* | WorkloadCGroupHashLock | Used to avoid concurrent access or modification of Cgroup information composed of hash tables. | lwlock | Concurrency |
v3.* | OBSGetPathLock | Used to avoid write-write concurrency and read-write concurrency on obs paths. | lwlock | Concurrency |
v3.* | WorkloadUserInfoLock | Used to avoid concurrent access or modification of load management user information hash tables. | lwlock | Concurrency |
v3.* | WorkloadRecordLock | Used to avoid concurrent access or modification of hash tables composed of requests received by the database master node during memory adaptive management. | lwlock | Concurrency |
v3.* | WorkloadIOUtilLock | Used to protect structures that record iostat, CPU, and other load information. | lwlock | Concurrency |
v3.* | WorkloadNodeGroupLock | Used to avoid concurrent access or modification of hash tables composed of nodegroup information in memory. | lwlock | Concurrency |
v3.* | JobShmemLock | Used to protect global variables read periodically in timer task functionality. | lwlock | Concurrency |
v3.* | OBSRuntimeLock | Used to acquire environment variables, such as GASSHOME. | lwlock | Concurrency |
v3.* | LLVMDumpIRLock | Used to export the assembly language corresponding to dynamically generated functions. | lwlock | Concurrency |
v3.* | LLVMParseIRLock | Used to compile and parse pre-written IR functions from IR files at the start of a query. | lwlock | Concurrency |
v3.* | CriticalCacheBuildLock | Used for loading cache scenarios from shared or local cache initialization files. | lwlock | Concurrency |
v3.* | WaitCountHashLock | Used to protect shared structures in user statement count functionality scenarios. | lwlock | Concurrency |
v3.* | BufMappingLock | Used to protect operations on shared buffer mapping tables. | lwlock | Concurrency |
v3.* | LockMgrLock | Used to protect regular lock structure information. | lwlock | Concurrency |
v3.* | PredicateLockMgrLock | Used to protect serializable transaction lock structure information. | lwlock | Concurrency |
v3.* | OperatorRealTLock | Used to avoid concurrent access or modification of global structures that record operator-level real-time data. | lwlock | Concurrency |
v3.* | OperatorHistLock | Used to avoid concurrent access or modification of global structures that record operator-level historical data. | lwlock | Concurrency |
v3.* | SessionRealTLock | Used to avoid concurrent access or modification of global structures that record query-level real-time data. | lwlock | Concurrency |
v3.* | SessionHistLock | Used to avoid concurrent access or modification of global structures that record query-level historical data. | lwlock | Concurrency |
v3.* | CacheSlotMappingLock | Used to protect CU Cache global information. | lwlock | Concurrency |
v3.* | BarrierLock | Used to ensure that only one thread is currently creating a Barrier. | lwlock | Concurrency |
v3.* | dummyServerInfoCacheLock | Used to protect the global hash table that caches accelerated openGauss connection information. | lwlock | Concurrency |
v3.* | RPNumberLock | Used to accelerate the count of task threads being executed by the database node of openGauss. | lwlock | Concurrency |
v3.* | CBMParseXlogLock | Cbm protection lock when parsing xlog. | lwlock | Concurrency |
v3.* | RelfilenodeReuseLock | Avoid incorrectly canceling the link of reused column attribute files. | lwlock | Concurrency |
v3.* | RcvWriteLock | Prevent concurrent calls to WalDataRcvWrite. | lwlock | Concurrency |
v3.* | PercentileLock | Used to protect the global PercentileBuffer. | lwlock | Concurrency |
v3.* | CSNBufMappingLock | Protect csn pages. | lwlock | Concurrency |
v3.* | UniqueSQLMappingLock | Used to protect the uniquesql hash table. | lwlock | Concurrency |
v3.* | DelayDDLLock | Prevent concurrent DDL. | lwlock | Concurrency |
v3.* | CLOG Ctl | Used to avoid concurrent access or modification of Clog control data structures. | lwlock | Concurrency |
v3.* | Async Ctl | Protect Async buffer. | lwlock | Concurrency |
v3.* | MultiXactOffset Ctl | Protect the slru buffer of MultiXact offset. | lwlock | Concurrency |
v3.* | MultiXactMember Ctl | Protect the slrubuffer of MultiXact member. | lwlock | Concurrency |
v3.* | OldSerXid SLRU Ctl | Protect the slru buffer of old xids. | lwlock | Concurrency |
v3.* | ReplicationSlotLock | Used to protect ReplicationSlot. | lwlock | Concurrency |
v3.* | PGPROCLock | Used to protect pgproc. | lwlock | Concurrency |
v3.* | MetaCacheLock | Used to protect MetaCache. | lwlock | Concurrency |
v3.* | DataCacheLock | Used to protect datacache. | lwlock | Concurrency |
v3.* | InstrUserLock | Used to protect InstrUserHTAB. | lwlock | Concurrency |
v3.* | BadBlockStatHashLock | Used to protect the global_bad_block_stat hash table. | lwlock | Concurrency |
v3.* | BufFreelistLock | Used to ensure the atomicity of shared buffer free list operations. | lwlock | Concurrency |
v3.* | CUSlotListLock | Used to control concurrent operations of column-stored buffer slots. | lwlock | Concurrency |
v3.* | AddinShmemInitLock | Protect the initialization of shared memory objects. | lwlock | Concurrency |
v3.* | AlterPortLock | Protect the operation of coordinating node changes to the registration port number. | lwlock | Concurrency |
v3.* | FdwPartitionCaheLock | HDFS partition table buffer management lock. | lwlock | Concurrency |
v3.* | DfsConnectorCacheLock | DFSConnector buffer management lock. | lwlock | Concurrency |
v3.* | DfsSpaceCacheLock | HDFS tablespace management buffer management lock. | lwlock | Concurrency |
v3.* | FullBuildXlogCopyStartPtrLock | Used to protect the operation of Xlog copying in full Build. | lwlock | Concurrency |
v3.* | DfsUserLoginLock | Used for HDFS user login and authentication. | lwlock | Concurrency |
v3.* | LogicalReplicationSlotPersistentDataLock | Protecting data in replication slots during logical replication. | lwlock | Concurrency |
v3.* | WorkloadSessionInfoLock | Protecting access to the memory hash table of load management session info. | lwlock | Concurrency |
v3.* | InstrWorkloadLock | Protecting access to the memory hash table of load management statistics. | lwlock | Concurrency |
v3.* | PgfdwLock | Managing instance connections to Foreign servers. | lwlock | Concurrency |
v3.* | InstanceTimeLock | Acquiring time information for sessions within an instance. | lwlock | Concurrency |
v3.* | XlogRemoveSegLock | Protecting the recycling operation of Xlog segment files. | lwlock | Concurrency |
v3.* | DnUsedSpaceHashLock | Updating space usage information corresponding to sessions. | lwlock | Concurrency |
v3.* | CsnMinLock | Calculating CSNmin. | lwlock | Concurrency |
v3.* | GPCCommitLock | Protecting the addition operation of the global Plan Cache hash table. | lwlock | Concurrency |
v3.* | GPCClearLock | Protecting the clearing operation of the global Plan Cache hash table. | lwlock | Concurrency |
v3.* | GPCTimelineLock | Protecting the operation of checking the Timeline in the global Plan Cache hash table. | lwlock | Concurrency |
v3.* | TsTagsCacheLock | Managing time-series tag caches. | lwlock | Concurrency |
v3.* | InstanceRealTLock | Protecting the update operation of the shared instance statistics hash table. | lwlock | Concurrency |
v3.* | CLogBufMappingLock | Managing commit log caches. | lwlock | Concurrency |
v3.* | GPCMappingLock | Managing global Plan Cache caches. | lwlock | Concurrency |
v3.* | GPCPrepareMappingLock | Managing global Plan Cache caches. | lwlock | Concurrency |
v3.* | BufferIOLock | Protecting I/O operations on shared buffer pages. | lwlock | Concurrency |
v3.* | BufferContentLock | Protecting the reading and modification of shared buffer page contents. | lwlock | Concurrency |
v3.* | CSNLOG Ctl | Managing CSN logs. | lwlock | Concurrency |
v3.* | DoubleWriteLock | Managing double-write operations. | lwlock | Concurrency |
v3.* | RowPageReplicationLock | Managing the replication of row-stored data pages. | lwlock | Concurrency |
v3.* | extension | Other lightweight locks. | lwlock | Concurrency |
v3.* | BufFileRead | Reading data from a temporary file into a specified buffer. | IO | Disk IO |
v3.* | BufFileWrite | Writing the content of a specified buffer into a temporary file. | IO | Disk IO |
v3.* | ControlFileRead | Reading the pg_control file. This mainly occurs during database startup, checkpoint execution, and primary-standby verification processes. | IO | Disk IO |
v3.* | ControlFileSync | Persisting the pg_control file to disk. This happens during database initialization. | IO | Disk IO |
v3.* | ControlFileSyncUpdate | Persisting the pg_control file to disk. This mainly occurs during database startup, checkpoint execution, and primary-standby verification processes. | IO | Disk IO |
v3.* | ControlFileWrite | Writing to the pg_control file. This happens during database initialization. | IO | Disk IO |
v3.* | ControlFileWriteUpdate | Updating the pg_control file. This mainly occurs during database startup, checkpoint execution, and primary-standby verification processes. | IO | Disk IO |
v3.* | CopyFileRead | Reading file content when copying a file. | IO | Disk IO |
v3.* | CopyFileWrite | Writing file content when copying a file. | IO | Disk IO |
v3.* | DataFileExtend | Writing content to a file when extending a file. | IO | Disk IO |
v3.* | DataFileFlush | Persisting table data files to disk. | IO | Disk IO |
v3.* | DataFileImmediateSync | Persisting table data files to disk immediately. | IO | Disk IO |
v3.* | DataFilePrefetch | Asynchronously reading table data files. | IO | Disk IO |
v3.* | DataFileRead | Synchronously reading table data files. | IO | Disk IO |
v3.* | DataFileSync | Persisting modifications to table data files to disk. | IO | Disk IO |
v3.* | DataFileTruncate | Truncating table data files. | IO | Disk IO |
v3.* | DataFileWrite | Writing content to table data files. | IO | Disk IO |
v3.* | LockFileAddToDataDirRead | Reading the "postmaster.pid" file. | IO | Disk IO |
v3.* | LockFileAddToDataDirSync | Persisting the "postmaster.pid" content to disk. | IO | Disk IO |
v3.* | LockFileAddToDataDirWrite | Writing pid information to the "postmaster.pid" file. | IO | Disk IO |
v3.* | LockFileCreateRead | Reading the LockFile "%s.lock". | IO | Disk IO |
v3.* | LockFileCreateSync | Persisting the LockFile "%s.lock" content to disk. | IO | Disk IO |
v3.* | LockFileCreateWRITE | Writing pid information to the LockFile "%s.lock". | IO | Disk IO |
v3.* | RelationMapRead | Reading the mapping file between system tables and storage locations. | IO | Disk IO |
v3.* | RelationMapSync | Persisting the mapping file between system tables and storage locations to disk. | IO | Disk IO |
v3.* | RelationMapWrite | Writing to the mapping file between system tables and storage locations. | IO | Disk IO |
v3.* | ReplicationSlotRead | Reading the stream replication slot file. This occurs upon restart. | IO | Disk IO |
v3.* | ReplicationSlotRestoreSync | Persisting the stream replication slot file to disk. This occurs upon restart. | IO | Disk IO |
v3.* | ReplicationSlotSync | Persisting the temporary file of the stream replication slot to disk during checkpoint. | IO | Disk IO |
v3.* | ReplicationSlotWrite | Writing to the temporary file of the stream replication slot during checkpoint. | IO | Disk IO |
v3.* | SLRUFlushSync | Persisting pg_clog, pg_subtrans, and pg_multixact files to disk. This mainly occurs during checkpoint execution and database shutdown. | IO | Disk IO |
v3.* | SLRURead | Reading pg_clog, pg_subtrans, and pg_multixact files. | IO | Disk IO |
v3.* | SLRUSync | Writing dirty pages to files pg_clog, pg_subtrans, and pg_multixact and persisting them to disk. This mainly occurs during checkpoint execution and database shutdown. | IO | Disk IO |
v3.* | SLRUWrite | Writing to pg_clog, pg_subtrans, and pg_multixact files. | IO | Disk IO |
v3.* | TimelineHistoryRead | Reading the timeline history file. This occurs during database startup. | IO | Disk IO |
v3.* | TimelineHistorySync | Persisting the timeline history file to disk. This occurs during database startup. | IO | Disk IO |
v3.* | TimelineHistoryWrite | Writing to the timeline history file. This occurs during database startup. | IO | Disk IO |
v3.* | TwophaseFileRead | Reading the pg_twophase file. This occurs during two-phase transaction commit and recovery. | IO | Disk IO |
v3.* | TwophaseFileSync | Persisting the pg_twophase file to disk. This occurs during two-phase transaction commit and recovery. | IO | Disk IO |
v3.* | TwophaseFileWrite | Writing to the pg_twophase file. This occurs during two-phase transaction commit and recovery. | IO | Disk IO |
v3.* | WALBootstrapSync | Persisting the initialized WAL files to disk. This happens during database initialization. | IO | Disk IO |
v3.* | WALBootstrapWrite | Writing to the initialized WAL files. This happens during database initialization. | IO | Disk IO |
v3.* | WALCopyRead | Reading existing WAL files and performing copy operations that generate read operations. This occurs after executing archive recovery. | IO | Disk IO |
v3.* | WALCopySync | Persisting copied WAL files to disk. This occurs after executing archive recovery. | IO | Disk IO |
v3.* | WALCopyWrite | Reading existing WAL files and performing copy operations that generate write operations. This occurs after executing archive recovery. | IO | Disk IO |
v3.* | WALInitSync | Persisting newly initialized WAL files to disk. This happens during log recycling or writing logs. | IO | Disk IO |
v3.* | WALInitWrite | Initializing newly created WAL files to 0. This happens during log recycling or writing logs. | IO | Disk IO |
v3.* | WALRead | Reading data from xlog journals. This is generated by two-phase file redo-related operations. | IO | Disk IO |
v3.* | WALSyncMethodAssign | Persisting all currently open WAL files to disk. | IO | Disk IO |
v3.* | WALWrite | Writing to WAL files. | IO | Disk IO |
v3.* | WALBufferAccess | WAL Buffer access (for performance reasons, only the number of accesses is counted in the kernel code, not the access time). | IO | Disk IO |
v3.* | WALBufferFull | Processing related to writing wal files when the WAL Buffer is full. | IO | Disk IO |
v3.* | DoubleWriteFileRead | Double-write file reading. | IO | Disk IO |
v3.* | DoubleWriteFileSync | Forcing a double-write file to disk. | IO | Disk IO |
v3.* | DoubleWriteFileWrite | Writing to a double-write file. | IO | Disk IO |
v3.* | PredoProcessPending | In parallel log playback, the current record waits for other records to complete playback. | IO | Disk IO |
v3.* | PredoApply | In parallel log playback, the current working thread waits for other threads to playback up to the LSN of this thread. | IO | Disk IO |
v3.* | DisableConnectFileRead | HA lock shard logical file reading. | IO | Disk IO |
v3.* | DisableConnectFileSync | Forcing an HA lock shard logical file to disk. | IO | Disk IO |
v3.* | DisableConnectFileWrite | Writing to an HA lock shard logical file. | IO | Disk IO |
v3.* | relation | Locking tables. | acquire lock | Enqueue Lock |
v3.* | extend | Locking tables when extending space. | acquire lock | Enqueue Lock |
v3.* | partition | Locking partitioned tables. | acquire lock | Enqueue Lock |
v3.* | partition_seq | Locking partitions of partitioned tables. | acquire lock | Enqueue Lock |
v3.* | page | Locking table pages. | acquire lock | Enqueue Lock |
v3.* | tuple | Locking tuples on a page. | acquire lock | Enqueue Lock |
v3.* | transactionid | Locking transaction IDs. | acquire lock | Enqueue Lock |
v3.* | virtualxid | Locking virtual transaction IDs. | acquire lock | Enqueue Lock |
v3.* | object | Adding object locks. | acquire lock | Enqueue Lock |
v3.* | cstore_freespace | Locking column-stored free space. | acquire lock | Enqueue Lock |
v3.* | userlock | Adding user locks. | acquire lock | Enqueue Lock |
v3.* | advisory | Adding advisory locks. | acquire lock | Enqueue Lock |