

# RDS for PostgreSQL 等待事件
<a name="PostgreSQL.Tuning.concepts.summary"></a>

下表列出了 RDS for PostgreSQL 最常指示性能问题的等待事件，并总结了最常见的原因和纠正措施。


| 等待事件 | 定义 | 
| --- | --- | 
|  [Client:ClientRead](wait-event.clientread.md)  |  当 RDS for PostgreSQL 等待从客户端接收数据时，会发生此事件。  | 
|  [Client:ClientWrite](wait-event.clientwrite.md)  |  当 RDS for PostgreSQL 等待将数据写入客户端时，会发生此事件。  | 
|  [CPU](wait-event.cpu.md)  | 当线程在 CPU 中处于活动状态或正在等待 CPU 时，会发生此事件。 | 
|  [IO:BufFileRead 和 IO:BufFileWrite](wait-event.iobuffile.md)  |  这些事件发生在 RDS for PostgreSQL 创建临时文件时。  | 
|  [IO:DataFileRead](wait-event.iodatafileread.md)  |  当由于分页在共享内存中不可用，连接等待后端进程从存储中读取所需分页时，会发生此事件。  | 
| [IO:WALWrite](wait-event.iowalwrite.md)  | 当 RDS for PostgreSQL 正在等待将预写日志（WAL）缓冲区写入 WAL 文件时，会发生此事件。  | 
|  [Lock:advisory](wait-event.lockadvisory.md)  |  当 PostgreSQL 应用程序使用锁定来协调多个会话之间的活动时，会发生此事件。  | 
|  [Lock:extend](wait-event.lockextend.md) |  当后端进程正在等待锁定关系以对其进行扩展，而另一个进程出于同样目的锁定该关系时，会发生此事件。  | 
|  [Lock:Relation](wait-event.lockrelation.md)  |  当查询等待获取当前被另一个事务锁定的表或视图上的锁定时，会发生此事件。  | 
|  [Lock:transactionid](wait-event.locktransactionid.md)  | 当事务正在等待行级锁定时，会发生此事件。 | 
|  [Lock:tuple](wait-event.locktuple.md)  |  在后端进程等待获取元组锁定时，会发生此事件。  | 
|  [LWLock:BufferMapping (LWLock:buffer\$1mapping)](wait-event.lwl-buffer-mapping.md)  |  当会话正在等待将数据块与共享缓冲池中的缓冲区关联起来时，会发生此事件。  | 
|  [LWLock:BufferIO (IPC:BufferIO)](wait-event.lwlockbufferio.md)  |  当 RDS for PostgreSQL 正在等待其他进程在同时尝试访问页面时完成输入/输出（I/O）操作时，会发生此事件。  | 
|  [LWLock:buffer\$1content (BufferContent)](wait-event.lwlockbuffercontent.md)  |  当某个会话等待读取或写入内存中的某个数据页面，而另一个会话正锁定该页面以进行写入时，会发生此事件。  | 
|  [LWLock:lock\$1manager (LWLock:lockmanager)](wait-event.lw-lock-manager.md)  | 当 RDS for PostgreSQL 引擎维护共享锁的内存区域以便在无法使用快速路径锁时分配、检查和取消分配锁时，会发生此事件。 | 
|  [LWLock:SubtransSLRU (LWLock:SubtransControlLock)](wait-event.lwlocksubtransslru.md)  |  当进程正在等待访问子事务的最近使用最少（SLRU）的简单缓存时，发生此事件。  | 
|  [Timeout:PgSleep](wait-event.timeoutpgsleep.md)  |  当服务器进程调用 `pg_sleep` 函数并且正在等待睡眠超时过期时，会发生此事件。  | 
|  [Timeout:VacuumDelay](wait-event.timeoutvacuumdelay.md)  | 此事件表明 vacuum 进程正处于休眠状态，因为已达到估计的成本上限。 | 