ORA-00600 : How to determine the reason for "sharing failure(s)" as reported by a trace file
(Doc ID 1457907.1)
Last updated on MARCH 12, 2021
Applies to:Oracle Database - Enterprise Edition - Version 126.96.36.199 to 188.8.131.52 [Release 8.0.3 to 12.1]
Oracle Database Cloud Schema Service - Version N/A and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Oracle Database Exadata Express Cloud Service - Version N/A and later
Information in this document applies to any platform.
Translating a sharing failure to its reason is very essential to determine the problem cause for errors such as
There are several ORA-00600 errors situation which would also report such sharing failure(s) in a trace
file, however the above ones are the most popular ones.
Oracle maintains a bit vector to store cursor sharing state.
Whenever a cursor sharing issue occurs and the bit vector is set the
resultant trace file will contain details about the cursor sharing issue.
The resultant trace file will contains details about the reason of
the sharing failure.
To check this, open the trace file and determine the current cursor:
Current cursor: 17, pgadep=0
Now, search for cursor #17:
curflg=cd fl2=0 par=0000000000000000 ses=c000000257409d98
sqltxt(c0000002566cfa78)=SELECT MAX(TA_PERIOD) FROM SRV_DRCR_DEVICE
parent=c000000248bf3408 maxchild=108 plk=c00000022e94c7a8 ppn=n
cursor instantiation=800003f7c003bd18 used=1236994347
clk=0000000000000000 ci=0000000000000000 pn=0000000000000000 ctx=0000000000000000
kgsccflg=0 llk[800003f7c003bd20,800003f7c003bd20] idx=0
xscflg=400024 fl2=40000000 fl3=2882080 fl4=2000
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document