合 【MOS】故障排除“cursor: pin S wait on X”等待事件 (Doc ID 2901617.1)
Tags: OracleMoscursor: pin S wait on X
故障排除“cursor: pin S wait on X”等待事件 (Doc ID 2901617.1)
Troubleshooting 'cursor: pin S wait on X' waits. (Doc ID 1349387.1)
排错步骤
什么是“cursor: pin S wait on X”等待事件?
游标等待与某种形式的解析相关联。 当会话尝试在共享模式下获取 mutex pin 资源,但另一个会话在同一个游标对象上以独占方式持有该 mutex pin 资源时,就可能会发生此等待事件。通常,等待“cursor: pin S wait on X”等待是一种症状,而不是原因。 可能存在潜在的调优要求或是遭遇了已知问题。
是什么引发“cursor: pin S wait on X”等待呢?
首先,要保证 shared pool 的大小设置正确。
一般来说,如果 shared pool 大小不足或者承受负载的能力不足,就可能表现为“cursor: pin S wait on X”等待。如果使用了自动内存管理模式,那么这通常不是问题,详见:
Document 443746.1 Automatic Memory Management (AMM) on 11g
频繁硬解析
如果硬解析的频率很高的话,在 mutex pin 上就会发生竞争。子游标版本数过高
当子游标版本数过高时,需要检查一长串版本,这可能会导致对该事件的争用。已知的 BUG
本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!