pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
相对 PostgreSQL 9.6 的差异:187 个等待事件。
这一版有 176 个事件发生变动,涉及 8 类;PostgreSQL 10 合计 187 个等待事件。更名与类型变动按上一版的身份对上,机械对不上的会如实显示为一次移除加一次新增。
ArchiverMain空闲等待
在 archiver 进程的主循环中等待。
AutovacuumMain空闲等待
在 autovacuum launcher 进程的主循环中等待。
在后台写入器进程休眠时等待。
BgwriterMain空闲等待
在后台写入器进程的主循环中等待。
CheckpointerMain空闲等待
在 checkpointer 进程的主循环中等待。
LogicalApplyMain空闲等待
在逻辑复制 apply 进程的主循环中等待。
在逻辑复制 launcher 进程的主循环中等待。
PgStatMain空闲等待
在统计收集器进程的主循环中等待。
RecoveryWalAll空闲等待
在恢复期间等待来自流的 WAL。
流式恢复期间,在 startup 进程的主循环中等待 WAL 到达。
SysloggerMain空闲等待
在 syslogger 进程的主循环中等待。
WalReceiverMain空闲等待
在 WAL receiver 进程的主循环中等待。
WalSenderMain空闲等待
在 WAL sender 进程的主循环中等待。
WalWriterMain空闲等待
在 WAL writer 进程的主循环中等待。
ClientRead客户端
等待从客户端读取数据。
ClientWrite客户端
等待向客户端写入数据。
在 WAL receiver 中等待与远程服务器建立连接。
在 WAL receiver 中等待从远程服务器接收数据。
尝试建立连接时等待 SSL。
在 WAL sender 进程中等待 WAL 完成刷写。
在 WAL sender 进程中处理 WAL receiver 的回复时,等待发生任何活动。
在扩展代码中等待。
BuffileRead文件 I/O
等待从缓冲文件中读取数据。
BuffileWrite文件 I/O
等待向缓冲文件写入数据。
ControlFileRead文件 I/O
等待从 pg_control 文件中读取数据。
ControlFileSync文件 I/O
等待 pg_control 文件到达持久化存储。
ControlFileSyncUpdate文件 I/O
等待 pg_control 文件的更新内容到达持久化存储。
ControlFileWrite文件 I/O
等待向 pg_control 文件写入数据。
ControlFileWriteUpdate文件 I/O
等待通过写入来更新 pg_control 文件。
CopyFileRead文件 I/O
等待在文件复制操作期间读取数据。
CopyFileWrite文件 I/O
等待在文件复制操作期间写入数据。
DataFileExtend文件 I/O
等待扩展 relation 数据文件。
DataFileFlush文件 I/O
等待 relation 数据文件到达持久化存储。
DataFileImmediateSync文件 I/O
等待将 relation 数据文件立即同步到持久化存储。
DataFilePrefetch文件 I/O
等待从 relation 数据文件异步预取数据。
DataFileRead文件 I/O
等待从 relation 数据文件中读取数据。
DataFileSync文件 I/O
等待 relation 数据文件的变更到达持久化存储。
DataFileTruncate文件 I/O
等待截断 relation 数据文件。
DataFileWrite文件 I/O
等待向 relation 数据文件写入数据。
DsmFillZeroWrite文件 I/O
等待用零值填充动态共享内存的后备文件。
LockFileAddtodatadirRead文件 I/O
等待在向数据目录锁文件添加一行时读取数据。
LockFileAddtodatadirSync文件 I/O
等待向数据目录锁文件添加一行时写入的数据到达持久化存储。
LockFileAddtodatadirWrite文件 I/O
等待在向数据目录锁文件添加一行时写入数据。
LockFileCreateRead文件 I/O
等待在创建数据目录锁文件时读取数据。
LockFileCreateSync文件 I/O
等待创建数据目录锁文件时写入的数据到达持久化存储。
LockFileCreateWrite文件 I/O
等待在创建数据目录锁文件时写入数据。
LockFileRecheckdatadirRead文件 I/O
等待在重新检查数据目录锁文件时读取数据。
LogicalRewriteCheckpointSync文件 I/O
等待检查点期间的逻辑重写映射到达持久化存储。
LogicalRewriteMappingSync文件 I/O
等待逻辑重写期间的映射数据到达持久化存储。
LogicalRewriteMappingWrite文件 I/O
等待在逻辑重写期间写入映射数据。
LogicalRewriteSync文件 I/O
等待逻辑重写映射到达持久化存储。
LogicalRewriteTruncate文件 I/O
等待在逻辑重写期间截断映射数据。
LogicalRewriteWrite文件 I/O
等待写入逻辑重写映射。
RelationMapRead文件 I/O
等待读取 relation map 文件。
RelationMapSync文件 I/O
等待 relation map 文件到达持久化存储。
RelationMapWrite文件 I/O
等待向 relation map 文件写入数据。
ReorderBufferRead文件 I/O
等待在 reorder buffer 管理期间读取数据。
ReorderBufferWrite文件 I/O
等待在 reorder buffer 管理期间写入数据。
ReorderLogicalMappingRead文件 I/O
等待在 reorder buffer 管理期间读取逻辑映射。
ReplicationSlotRead文件 I/O
等待从复制槽控制文件中读取数据。
ReplicationSlotRestoreSync文件 I/O
等待在将复制槽恢复到内存的过程中,使其控制文件到达持久化存储。
ReplicationSlotSync文件 I/O
等待复制槽控制文件到达持久化存储。
ReplicationSlotWrite文件 I/O
等待向复制槽控制文件写入数据。
SlruFlushSync文件 I/O
等待检查点或数据库关闭期间的 SLRU 数据到达持久化存储。
SlruRead文件 I/O
等待读取 SLRU 页面。
SlruSync文件 I/O
等待页面写入后的 SLRU 数据到达持久化存储。
SlruWrite文件 I/O
等待写入 SLRU 页面。
SnapbuildRead文件 I/O
等待读取序列化的历史系统目录 snapshot。
SnapbuildSync文件 I/O
等待序列化的历史系统目录 snapshot 到达持久化存储。
SnapbuildWrite文件 I/O
等待写入序列化的历史系统目录 snapshot。
TimelineHistoryFileSync文件 I/O
等待通过流复制接收的时间线历史文件到达持久化存储。
TimelineHistoryFileWrite文件 I/O
等待写入通过流复制接收的时间线历史文件。
TimelineHistoryRead文件 I/O
等待读取时间线历史文件。
TimelineHistorySync文件 I/O
等待新建的时间线历史文件到达持久化存储。
TimelineHistoryWrite文件 I/O
等待写入新建的时间线历史文件。
TwophaseFileRead文件 I/O
等待读取两阶段状态文件。
TwophaseFileSync文件 I/O
等待两阶段状态文件到达持久化存储。
TwophaseFileWrite文件 I/O
等待写入两阶段状态文件。
WalBootstrapSync文件 I/O
等待引导初始化期间的 WAL 到达持久化存储。
WalBootstrapWrite文件 I/O
等待在引导初始化期间写入 WAL 页面。
WalCopyRead文件 I/O
等待通过复制现有 WAL segment 创建新 WAL segment 时读取数据。
WalCopySync文件 I/O
等待通过复制现有 WAL segment 创建的新 WAL segment 到达持久化存储。
WalCopyWrite文件 I/O
等待通过复制现有 WAL segment 创建新 WAL segment 时写入数据。
WalInitSync文件 I/O
等待新初始化的 WAL 文件到达持久化存储。
WalInitWrite文件 I/O
等待在初始化新 WAL 文件时写入数据。
WalRead文件 I/O
等待从 WAL 文件中读取数据。
WalsenderTimelineHistoryRead文件 I/O
等待在 WAL sender 执行 timeline 命令期间从时间线历史文件中读取数据。
WalSyncMethodAssign文件 I/O
等待分配新的 WAL 同步方法时写入的数据到达持久化存储。
WalWrite文件 I/O
等待向 WAL 文件写入数据。
等待后台工作进程关闭。
等待后台工作进程启动。
BtreePage进程间
等待继续并行 B-tree 扫描所需的页号可用。
等待执行 Gather 计划节点时来自子进程的活动。
等待逻辑复制远端服务器发送用于初始表同步的数据。
等待逻辑复制远端服务器改变状态。
等待另一个进程附加到共享消息队列。
等待向共享消息队列写入协议消息。
等待从共享消息队列接收字节。
等待向共享消息队列发送字节。
等待并行位图扫描完成初始化。
等待并行工作进程完成计算。
等待 group leader 在事务结束时清除事务 ID。
等待复制源变为非活动状态,以便将其删除。
等待复制槽变为非活动状态,以便将其删除。
SafeSnapshot进程间
等待为 READ ONLY DEFERRABLE 事务获取有效 snapshot。
SyncRep进程间
等待同步复制期间来自远端服务器的确认。
等待 startup 进程发送流复制的初始数据。
等待生成随机数。
LogicalRepWorker轻量级锁
等待读取或更新逻辑复制 worker 的状态。
ParallelQueryDSA轻量级锁
等待并行查询的动态共享内存分配。
SharedTidBitmap轻量级锁
并行 bitmap index scan 期间,等待访问共享 TID bitmap。
XactTruncation轻量级锁
等待执行 pg_xact_status,或更新当前进程可用的最旧事务 ID。
基础备份期间,因限速而等待。
PgSleep超时
因调用 pg_sleep 或同类函数而等待。
恢复期间,因延迟设置而等待应用 WAL。
这一版没有移除等待事件。
这一版没有事件更名。
BufferIoLWLockTrancheLWLock
等待缓冲区 I/O 完成。
AddinShmemInitLWLockNamedLWLock
等待管理扩展在共享内存中的空间分配。
AutoFileLWLockNamedLWLock
等待更新 postgresql.auto.conf 文件。
AutovacuumLWLockNamedLWLock
等待读取或更新 autovacuum worker 的当前状态。
AutovacuumScheduleLWLockNamedLWLock
等待确认被选中进行 autovacuum 的表仍需要 vacuum。
BackgroundWorkerLWLockNamedLWLock
等待读取或更新后台 worker 的状态。
BtreeVacuumLWLockNamedLWLock
等待读取或更新 B-tree 索引中与 vacuum 相关的信息。
BufferContentLWLockTrancheLWLock
等待访问内存中的数据页。
BufferMappingLWLockTrancheLWLock
等待将数据块关联到 buffer pool 中的 buffer。
CheckpointLWLockNamedLWLock
等待开始执行检查点。
CheckpointerCommLWLockNamedLWLock
等待管理 fsync 请求。
CommitTsLWLockNamedLWLock
等待读取或更新事务提交时间戳的最近设定值。
CommitTsBufferLWLockTrancheLWLock
等待事务提交时间戳 SLRU buffer 上的 I/O。
CommitTsSLRULWLockNamedLWLock
等待访问事务提交时间戳 SLRU 缓存。
ControlFileLWLockNamedLWLock
等待读取或更新 pg_control 文件,或创建新的 WAL 文件。
DynamicSharedMemoryControlLWLockNamedLWLock
等待读取或更新动态共享内存分配信息。
LockFastPathLWLockTrancheLWLock
等待读取或更新进程的快速路径锁信息。
LockManagerLWLockTrancheLWLock
等待读取或更新“重量级”锁的信息。
MultiXactGenLWLockNamedLWLock
等待读取或更新共享 multixact 状态。
MultiXactMemberBufferLWLockTrancheLWLock
等待 multixact member SLRU buffer 上的 I/O。
MultiXactMemberSLRULWLockNamedLWLock
等待访问 multixact member SLRU 缓存。
MultiXactOffsetBufferLWLockTrancheLWLock
等待 multixact offset SLRU buffer 上的 I/O。
MultiXactOffsetSLRULWLockNamedLWLock
等待访问 multixact offset SLRU 缓存。
MultiXactTruncationLWLockNamedLWLock
等待读取或截断 multixact 信息。
NotifyBufferLWLockTrancheLWLock
等待 NOTIFY 消息 SLRU buffer 上的 I/O。
NotifyQueueLWLockNamedLWLock
等待读取或更新 NOTIFY 消息。
NotifyQueueTailLWLockNamedLWLock
等待更新 NOTIFY 消息的存储上限。
NotifySLRULWLockNamedLWLock
等待访问 NOTIFY 消息 SLRU 缓存。
OidGenLWLockNamedLWLock
等待分配新的 OID。
OldSnapshotTimeMapLWLockNamedLWLock
等待读取或更新旧快照控制信息。
PredicateLockManagerLWLockTrancheLWLock
等待访问可串行化事务使用的谓词锁信息。
ProcArrayLWLockNamedLWLock
等待访问共享的进程级数据结构(通常用于获取快照或报告会话的事务 ID)。
RelationMappingLWLockNamedLWLock
等待读取或更新 pg_filenode.map 文件(用于跟踪某些系统目录的 filenode 分配)。
RelCacheInitLWLockNamedLWLock
等待读取或更新 pg_internal.init relation cache 初始化文件。
ReplicationOriginLWLockNamedLWLock
等待创建、删除或使用复制源。
ReplicationOriginStateLWLockTrancheLWLock
等待读取或更新一个复制源的进度。
ReplicationSlotAllocationLWLockNamedLWLock
等待分配或释放复制槽。
ReplicationSlotControlLWLockNamedLWLock
等待读取或更新复制槽状态。
ReplicationSlotIOLWLockTrancheLWLock
等待复制槽上的 I/O。
SerialBufferLWLockTrancheLWLock
等待可串行化事务冲突 SLRU buffer 上的 I/O。
SerializableFinishedListLWLockNamedLWLock
等待访问已结束的可串行化事务列表。
SerializablePredicateListLWLockNamedLWLock
等待访问可串行化事务所持有的谓词锁列表。
SerializableXactHashLWLockNamedLWLock
等待读取或更新可串行化事务的信息。
SerialSLRULWLockNamedLWLock
等待访问可串行化事务冲突 SLRU 缓存。
ShmemIndexLWLockNamedLWLock
等待在共享内存中查找或分配空间。
SInvalReadLWLockNamedLWLock
等待从共享系统目录失效队列中取出消息。
SInvalWriteLWLockNamedLWLock
等待向共享系统目录失效队列中添加消息。
SubtransBufferLWLockTrancheLWLock
等待子事务 SLRU buffer 上的 I/O。
SubtransSLRULWLockNamedLWLock
等待访问子事务 SLRU 缓存。
SyncRepLWLockNamedLWLock
等待读取或更新同步复制状态信息。
SyncScanLWLockNamedLWLock
等待选择同步表扫描的起始位置。
TablespaceCreateLWLockNamedLWLock
等待创建或删除表空间。
TwoPhaseStateLWLockNamedLWLock
等待读取或更新预备事务的状态。
WALBufMappingLWLockNamedLWLock
等待替换 WAL buffer 中的页面。
WALInsertLWLockTrancheLWLock
等待将 WAL 数据插入内存 buffer。
WALWriteLWLockNamedLWLock
等待将 WAL buffer 写入磁盘。
WrapLimitsVacuumLWLockNamedLWLock
等待更新事务 ID 和 multixact 的消耗上限。
XactBufferLWLockTrancheLWLock
等待事务状态 SLRU buffer 上的 I/O。
XactSLRULWLockNamedLWLock
等待访问事务状态 SLRU 缓存。
XidGenLWLockNamedLWLock
等待分配新的事务 ID。
userlock重量级锁
Waiting to acquire a userlock.Waiting to acquire a user lock.