kksfbc child completion

来源:这里教程网 时间:2026-03-03 14:46:53 作者:

今天在测试时,发现会话有kksfbc child completion等待事件,查mos发现为如下情况

(1)我的问题可能的情况 另外:如果单个SQL,每次执行都不能共享,非常高的version count(v$sql可以查到),非常快的cursor obsolete(_cursor_obsolete_threshold参数以及shared pool空间共同控制,v$sql中IS_OBSOLETE字段可查为Y即被标记为可舍弃),根据下面Oracle C函数可推测,即硬解析时,很快找到cursor边界,也会发生这个等待事件,我认为可以忽略,这种情况不常见。

kksfbc
kernel compile shared objects (cursor) find bound cursor

oracle 11.2.0.4 中 _cursor_obsolete_threshold参数值为1024 oracle 19c _cursor_obsolete_threshold参数值为8192 (2)bug的情况

Cause

The cause of this problem has been identified in Bug 6795880  - BATCH JOBS HANG WAITING ON 'KKSFBC CHILD COMPLETION' It is caused by a session going into an infinite spin just after a wait for 'kksfbc child completion'. The spin can be identified in the call stack by the following routines: kksSearchChildList -> kkshgnc, where kksSearchChildList loops forever. This problem can also lead to internal errors such as: ORA-600 [kksSearchChildList1] ORA-600 [kksSearchChildList2] ORA-600 [kksSearchChildList3] ORA-600 [kkshgnc-nextchild]

Solution

Please execute both the actions in Step A and in Step B as follows to resolve this issue. A) As the patch for the initial bug introduces the problem described in unpublished Bug 8575528, download and apply  Patch 8575528 which superceeds the patch for Bug 6795880 Steps for obtaining the patch: AND B) Set the following instance parameter and restart the instance. Please make a note that this parameter is needed to enable the fix. Just applying Patch is not sufficient. When using an SPFILE, issue:

SQL> ALTER SYSTEM SET "_cursor_features_enabled"=10 scope=spfile;

and restart the instance. For PFILE usage, set following parameter in PFILE and restart the instance.

_cursor_features_enabled=10

The parameter is only necessary when installing the one-off fix. When installing the 10.2.0.5 or 11.1.0.7 patch sets there is no need for this parameter. Reference ORA-600 [kkshgnc-nextchild] With Wait For [kksfbc child completion] (Doc ID 943989.1)

相关推荐