cursor: pin S 等待事件说明,当一个会话(session)试图去更新一个共享的 Mutex Pin,同时已经有其他会话正在更新(updating)同一个 Shared Mutex Pin。注意,Pin S 的Mutex位于子游标上,是动态创建的,无法从等待事件中获得,但是可以在竞争出现的情况下,通过观察 x$mutex_sleep_history 来获得。
文档说明如下:
A session waits on this event when it wants to update a shared mutex pin and another session is currently in the process of updating a shared mutex pin for the same cursor object. This wait event should rarely be seen because a shared mutex pin update is very fast.
Wait Time: Microseconds
Parameter | Description |
---|---|
P1 | Hash value of cursor |
P2 | Mutex value (top 2 bytes contains SID holding mutex in exclusive mode, and bottom two bytes usually hold the value 0) |
P3 | Mutex where (an internal code locator) OR'd with Mutex Sleeps |
在实践中,当大量会话对某一个Cursor进行并发的软解析时,这一等待会被观察到。
此前的一篇文档说明在这里:AWR报告分析之三:cursor: pin S 的原理与案例分析