BUG 13931044 – ORA-600 [13009], [5000], [1], [17]

在BUG 13931044 – ORA-600 [13009], [5000], [1], [17]中  相关的语句:
SELECT * FROM PART_BRANCH_PC_BATCH_VIEW2 WHERE PAB_BRA_BRANCH_CODE = :B1 FOR UPDATE
 
也是没有Nested Loop的,但是通过”_nlj_batching_enabled”=false 绕过了该问题, 所以还是建议先使一下使用“_nlj_batching_enabled”=false作为workaround的情况。
DIAGNOSTIC ANALYSIS
===================
The same batch job fails on several databases but does not reproduce at
will. The databases are not clones of eachother but are running the same
batch job.
The problem started after the database was upgraded from 10.2 to 11.2 via
datapump.
Underlying tables have been analyzed without problems.
The patch for bug 13117043 was applied but the problem continued.
Running with “_nlj_batching_enabled”=0 avoids the error but testing is still
underway to see if this can be used as a temporary workaround.
The query plan doesn’t change if set “_connect_by_use_union_all” =
old_plan_mode;
WORKAROUND?
===========
Yes
TECHNICAL IMPACT
================
Customer runs the same batch on multiple databases which includes select for
update statement – the batch fails on some of the databases
SELECT * FROM PART_BRANCH_PC_BATCH_VIEW2 WHERE PAB_BRA_BRANCH_CODE = :B1 FOR
UPDATE
RELATED ISSUES (bugs, forums, RFAs)
===================================
Select For Update Fails With Ora-600 [13009] Error On A Table With A
Recently Added Column (Doc ID 863779.1) –> solved in 11.2 and CT doesn’t
want to recreate the tables involved in the view called in the failing SQL
 

 

Oracle中与死锁Dead lock相关的BUG NOTE

This document was created manually to try and centralize the more common bugs relating to ORA-60 errors. It may not contain a
complete list of all bugs in all versions since newer bugs may need to be verified before inclusion. Please search My Oracle Support Portal with
neccessary keywords to get a list of all possible relevant documents.

This article is a consolidated effort to summarize top bugs reported specifically for the Dead lock error (This Note covers bugs reported versions
above 9.2.0.4) which have been fixed. It is directed towards Oracle Support Analysts and Oracle Customers to have an overview of various bugs logged
for the same error .

 

Details
Bugs Fixed in Version 9.2.0.5
Note 2796282.8 Bug 2796282 False deadlock possible using shared servers
Note 3001270.8 Bug 3001270 Deadlock between SMON and foreground process for dc_suers
Note 3030298.8 Bug 3030298 OERI:2103 from concurrent 'drop tablespace including datafiles
Note 3080929.8 Bug 3080929 ORA-4021 hang SMON self deadlock UNDO$ row cache lock
Note 3093080.8 Bug 3093080 ALTER TABLE ENABLE TABLE LOCK can cause a deadlock
Note 3271271.8 Bug 3271271 QMON can deadlock with job queue processes
Note 3009268.8 Bug 3009268 Recovery of DEAD prepared TX may deadlock with SMON
Note 2995746.8 Bug 2995746 Deadlock between session doing a GRANT
Note 2918838.8 Bug 2918838 Undetected deadlock for dc_tablespace_quotas
Bugs Fixed in Version 9.2.0.6
Note 3398485.8 Bug.3398485 Deadlock during on demand materialized view refresh (ORA-4020)
Note 2615271.8 Bug.2615271 Deadlock from concurrent GRANT and logon
Note 2014833.8 Bug.2014833 Deadlock possible from concurrent SELECT and TRUNCATE
Note 3320292.8 Bug.3320292 Parallel recompilation hangs when recompiling type generated for pipeline function
Note 3424721.8 Bug 3424721 deadlock ALTER INDEX REBUILD on partition with concurrent SQL
Note.3166756.8 Bug.3166756 Self deadlock (ORA-60) / OERI possible on LOB index update
Note 3605165.8 Bug.3605165 Hang/deadlock between sessions concurrently loading a cursor with INVALID trigger
Note 3717619.8 Bug.3717619 Deadlock/hang possible due to concurrent cursor loads referencing same INVALID trigger
Note 3562032.8 Bug.3562032 Cancelled ONLINE index rebuild can deadlock with DML session
Note 3381218.8 Bug.3381218 Deadlock involving 'library cache lock' X mode request
Bugs Fixed in Version 9.2.0.7
Note 3314850.8 Bug.3314850 Can deadlock with query rewrite sessions
Note 3261205.8 Bug.3261205 Hang / OERI[kxttdropobj-1] on parallel direct load to temporary table
Note 2883771.8 Bug.2883771 "WAITED TOO LONG FOR ROWCACHE ENQUEUE" when using Resource Manager in PLSQL
Note 3896974.8 Bug.3896974 creating DIMENSIONs from schemas simultaneously
Bugs Fixed in 9.2.0.8 10.1.0.5
Note 4114238.8 Bug 4114238 Deadlock between dc_users and dc_usernames row cache lock enabling FK
Note 4416907.8 Bug 4416907 ORA-4020 DO_DEFERRED_REPCAT_ADMIN concurrent SQL
Note 4329748.8 Bug 4329748 ORA-4020 / deadlock quiescing a replication group
Note 4029101.8 Bug 4029101 Concurrent CREATE TABLE / VIEW can deadlock (ORA-60)
Note 4275733.8 Bug 4275733 Deadlock between library cache lock and row cache lock from concurrent rename partition
Note 4313246.8 Bug 4313246 PLSQL execution can hold dc_users row cache lock leading to hang / deadlocks
Note 4185270.8 Bug.4185270 PMON "failed to acquire row cache enqueue" cleaning a dead process
Note 4446011.8 Bug.4446011 Hang with row cache lock deadlock from concurrent ALTER USER / TRUNCATE
Note 3987280.8 Bug.3987280 Concurrent GRANT / SET ROLE can hang / deadlock
Bugs Fixed in 10.1.0.4 and 10.2.0.1

Bugs Fixed in 10.2.0.2
Note 4153150.8 Bug.4153150 Deadlock on dc_rollback_segments from concurrent parallel load and undo segment creation
Note 4382653.8 Bug.4382653 Deadlock / ORA-4020 gathering statistics on indices
Note 4375798.8 Bug.4375798 ORA-60 deadlock from AQ enqueue
Note 4552067.8 Bug.4552067 Deadlock / ORA-4020 using TRUNCATE SQL against global temporary tables
Bugs Fixed in 10.2.0.3
Note 4627237.8 Bug.4627237 autonomous_transaction with DB link to shared server can self deadlock on DX
Note 4732503.8 Bug.4732503 Self-deadlock on TT enqueue
Note 4699610.8 Bug.4699610 can self deadlock waiting for MTTR state object which it holds
Note 5386881.8 Bug.5386881 ORA-60 deadlock from terminal recovery
Note 5363031.8 Bug.5363031 deadlock on broker metadata lock when FSFO is enabled
Bugs Fixed in 10.2.0.4
Note 4768022.8 Bug.4768022 ALTER TABLE can fail with ORA-60
Note 5907779.8 Bug.5907779 Self deadlock hang on "cursor: pin S wait on X" (typically from DBMS_STATS)
Note 5983020.8 Bug.5983020 MMON deadlock with user session executing ALTER USER
Note 5485914.8 Bug.5485914 Mutex self deadlock after DBMS_MONITOR.session_trace_enable
Note 5685189.8 Bug.5685189 Self deadlock on dc_objects after DBMS_SPACE.UNUSED_SPACE errors
Note 5557421.8 Bug.5557421 Self-deadlock (ORA-60) on FB enqueue if session killed during INSERT in ASSM
Note 5604698.8 Bug.5604698 Deadlock between 'library cache lock' and 'library cache pin' using Streams
Note 5415506.8 Bug.5415506 ORA-4020 when dbms_aqadm.purge_queue_table and select are run
Note 4587572.8 Bug.4587572 ORA-12801/ORA-60 possible from parallel DML with grouping sets
Note 5695131.8 Bug.5695131 HW enqueue deadlock / OERI:1153 from array insert with SAVE EXCEPTIONS to READ ONLY ASSM segment
<> Bug.5941601 TM deadlock from concurrent dbms_aqadm_sys.alter_subscriber
Note 5998048.8 Bug.5998048 Deadlock on COMMIT updating AUD$ / Performance degradation when FGA is enabled
Note 6057351.8 Bug.6057351 AWR deadlock between Mxxx processes during snapshot purging process
Bugs Fixed in Future Releases (11G)
Note 6368621.8 Bug.6368621 I/O slave creation time-outs, under extreme memory pressure
Note 6644122.8 Bug.6644122 ON COMMIT refresh deadlock (library cache pin V lock)
Note 5932196.8 Bug.5932196 Deadlock (ORA-4020) between MVIEW refresh and auto gather_stats_job
Note 4896424.8 Bug.4896424 Parallel DML can fail with ORA-60
Note 5476091.8 Bug.5476091 Ctrl-C ignored for sessions waiting for mutexes
Note 6618312.8 Bug.6618312 Deadlock between ON COMMIT materialized view refresh and query rewrite (library cache pin V lock deadlock)
Note 5554054.8 Bug.5554054 AQ JMS deadlock between threads
Note 6475688.8 Bug.6475688 Concurrent rewrite and on-commit refresh can deadlock (library cache pin ,lock)
For summary of bugs which could cause deadlock in RAC see Note 554567.1
References
NOTE:4416907.8 - Bug 4416907 - ORA-4020 from DO_DEFERRED_REPCAT_ADMIN with concurrent SQL
NOTE:4446011.8 - Bug 4446011 - Hang with row cache lock deadlock from concurrent ALTER USER / TRUNCATE
NOTE:4552067.8 - Bug 4552067 - Deadlock / ORA-4020 using TRUNCATE SQL against global temporary tables
NOTE:4587572.8 - Bug 4587572 - ORA-12801/ORA-60 possible from parallel DML with grouping sets
NOTE:4627237.8 - Bug 4627237 - autonomous_transaction with DB link to shared server can self deadlock on DX
NOTE:4699610.8 - Bug 4699610 - CKPT can self deadlock waiting for MTTR state object which it holds
NOTE:4732503.8 - Bug 4732503 - Self-deadlock on TT enqueue
NOTE:4768022.8 - Bug 4768022 - ALTER TABLE can fail with ORA-60
NOTE:4896424.8 - Bug 4896424 - Parallel DML can fail with ORA-60
NOTE:5363031.8 - Bug 5363031 - deadlock on broker metadata lock when FSFO is enabled
NOTE:5386881.8 - Bug 5386881 - ORA-60 deadlock from terminal recovery
NOTE:5415506.8 - Bug 5415506 - ORA-4020 when dbms_aqadm.purge_queue_table and select are run
NOTE:5476091.8 - Bug 5476091 - Ctrl-C ignored for sessions waiting for mutexes / Deadlock with "enq: PS" - superceded
NOTE:5485914.8 - Bug 5485914 - Mutex self deadlock on explain / trace of remote mapped SQL
NOTE:5554054.8 - Bug 5554054 - AQ JMS deadlock between threads
NOTE:5557421.8 - Bug 5557421 - Self-deadlock (ORA-60) on FB enqueue if session killed during INSERT in ASSM
NOTE:5604698.8 - Bug 5604698 - Deadlock between 'library cache lock' and 'library cache pin' using replication
NOTE:5685189.8 - Bug 5685189 - Self deadlock on dc_objects after DBMS_SPACE.UNUSED_SPACE errors
NOTE:5695131.8 - Bug 5695131 - HW enqueue deadlock / OERI:1153 from array insert with SAVE EXCEPTIONS to READ ONLY ASSM segment
NOTE:5907779.8 - Bug 5907779 - Self deadlock hang on "cursor: pin S wait on X" (typically from DBMS_STATS)
NOTE:5932196.8 - Bug 5932196 - Deadlock (ORA-4020) between MVIEW refresh and auto gather_stats_job
NOTE:5983020.8 - Bug 5983020 - MMON deadlock with user session executing ALTER USER
NOTE:5998048.8 - Bug 5998048 - Deadlock on COMMIT updating AUD$ / Performance degradation when FGA is enabled
NOTE:6057351.8 - Bug 6057351 - AWR deadlock between Mxxx processes during snapshot purging process
NOTE:6368621.8 - Bug 6368621 - I/O slave creation time-outs, under extreme memory pressure
NOTE:6475688.8 - Bug 6475688 - Concurrent rewrite and on-commit refresh can deadlock (library cache pin <--> lock)
NOTE:6618312.8 - Bug 6618312 - Deadlock between ON COMMIT materialized view refresh and query rewrite (library cache pin V lock deadlock)
NOTE:6644122.8 - Bug 6644122 - ON COMMIT refresh deadlock (library cache pin V lock)
BUG:2014833 - LOCKING ISSUE WITH USING PARTITIONS[This section is not visible to customers.]
BUG:2615271 - PLE1158.10:INSTALL WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK![This section is not visible to customers.]
BUG:2796282 - CONFLICTING DEADLOCK IDS FOR SESSIONS RESULT IN INCORRECT DEADLOCKS[This section is not visible to customers.]

BUG:2883771 - WAITED TOO LONG FOR ROWCACHE ENQUEUE WHEN USING RESOURCE MANAGER IN PL/SQL
BUG:2918838 - UNDETECTED DEADLOCK FOR DC_TABLESPACE_QUOTAS AMONG TWO PROCESSES
BUG:2995746 - DEAD LOCK BETWEEN SESSION DOING A GRANT AND OTHER SESSION PARSING A AGED CURSOR
BUG:3001270 - DEADLOCK BETWEEN SMON AND FOREGROUND PROCESS FOR OBJECT USER$[This section is not visible to customers.]
BUG:3009268 - SMON WAITS FOR A BUFFER WITH 'BUFFER BUSY WAIT' UNREASONABLY
BUG:3030298 - ORA-600[2103] OCCURED WHEN WE EXECUTED 'DROP TABLESPACE AND DATAFILES' ON PARALL
BUG:3080929 - STAR : WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK![This section is not visible to customers.]
BUG:3093080 - ALTER TABLE ENABLE TABLE LOCK CAN CAUSE A DEADLOCK[This section is not visible to customers.]
BUG:3166756 - FALSE DEAD LOCK WITH XA ORA-60 SIMILAR BUT NOT EXACT TO BUG1994858
BUG:3261205 - ORA-00600: [KXTTDROPOBJ-1], [0], [4229477] ON PIDL INTO TXN DURATION TEMP TABLE[This section is not visible to customers.]
BUG:3271271 - QMON CAN DEADLOCK WITH JOB QUEUE PROCESSES
BUG:3314850 - CRM - 9.2: CIRCULAR DEADLOCK BETWEEN 'DROP SUMMARY' AND SUMMARY REWRITE[This section is not visible to customers.]
BUG:3320292 - PARALLEL RECOMPILATION HANGS WHEN RECOMPILING TYPE GENERATED FOR PIPELINE FUNC[This section is not visible to
customers.]
BUG:3381218 - DEADLOCK BETWEEN 'LIBRARY CACHE PIN' AND 'LIBRARY CACHE LOCK'.
BUG:3398485 - DEADLOCK DURING ON DEMAND MATERIALIZED VIEW REFRESH ORA-04020
BUG:3424721 - SESSION HANGS WHEN PERFORMING REBUILD AND ANALYZE ON THE SAME INDEX PARTITION[This section is not visible to
customers.]
BUG:3540821 - ORA-4020 DEADLOCK DETECTED BY J000 AND M000[This section is not visible to customers.]
BUG:3562032 - SERVERS HANG IN TWO CONCURRENT RUNS: ALTER INDEX REBUILD ONLINE; AND UPDATE DML[This section is not visible to
customers.]
BUG:3605165 - DATABASE HANGING ISSUE.. SEEMS LIKE LIBRARY CACHE PIN WAITS
BUG:3717619 - DATABASE HANG DUE TO LIBRARY CACHE PIN WAITS AND LIBRARY CACHE LOAD LOCK WAIT[This section is not visible to customers.]
BUG:3756949 - SEQUENCES CAN DEADLOCK ON SPACE ALLOCATION FAILURE[This section is not visible to customers.]
BUG:3896974 - ORA-4020 CREATING DIMENSIONS FROM SCHEMAS SIMULTANEOUSLY
BUG:3975268 - GLOBAL ENQUEUE SERVICES DEADLOCK DETECTED[This section is not visible to customers.]
BUG:3987280 - CHANGING A ROLE WILL NOT ALLOW FURTHER LOGINS UNDER SPECFIC CIRCUMSTANCES
BUG:3990235 - DEADLOCK IN DISK DROP AND INSTANCE RECOVERY
BUG:4008775 - APPSPERF: DBMS_SPACE CALLED WITH DBMS_STATS[This section is not visible to customers.]
BUG:4029101 - CONCURRENT IMPDB DEADLOCK ORA-60[This section is not visible to customers.]
BUG:4114238 - DEADLOCK BETWEEN DC_USERS AND DC_USERNAMES ROW CACHE LOCK
BUG:4137000 - DEADLOCK 'LIBRARY CACHE LOCK' - 'ROW CACHE LOCK' DURING CONCURRENT SPLITTING
BUG:4153150 - SQL*LOADER HANGS WITH ROW CACHE LOCK (DC_ROLLBACK_SEGMENTS)[This section is not visible to customers.]
BUG:4185270 - PMON "FAILED TO ACQUIRE ROW CACHE ENQUEUE", PROCESS DEAD MOVING HW TEMPORARY SEG
BUG:4275733 - DEADLOCK BETWEEN LIBRARY CACHE LOCK AND ROW CACHE LOCK
BUG:4313246 - DEADLOCK BETWEEN DC_USERS AND DC_USERNAMES ROW CACHE LOCK
BUG:4375798 - ORA-00060: DEADLOCK DETECTED WHILE WAITING FOR RESOURCE[This section is not visible to customers.]
BUG:4382653 - ORA-4020 IS RAISED WITH SIMULTANEOUS DBMS_STAT.SET
BUG:4416907 - ORA-4020 FROM DO_DEFERRED_REPCAT_ADMIN WITH SIMULTANEOUS SELECTS[This section is not visible to customers.]
BUG:4446011 - HANG WITH ROW CACHE ENQUEUE LOCK
BUG:4552067 - DEADLOCKS USING TRUNCATE ON SESSION SPECIFIC GLOBAL TEMPORARY TABLES[This section is not visible to customers.]
BUG:4587572 - APPSST102 :ORA-12801/ORA-00060 IS RAISED FOR PARALLEL DML[This section is not visible to customers.]
BUG:4627237 - AUTONOMOUS_TRANSACTION WITH DBLINK TO SHARED SERVER CAN GET SELF DEADLOCK ON DX[This section is not visible to
customers.]
BUG:4699610 - SMON BLOCKING OTHER SESSIONS[This section is not visible to customers.]
BUG:4732503 - SELF-DEADLOCK TT ENQUEUE ON 9.2.0.7 SIMILAR TO 3425298
BUG:4768022 - ALTER TABLE FAILS WITH ORA-2050,ORA-60 IF TABLE HAS MVIEW, TRIGGER, DBLINK
BUG:4896424 - ORA-00060 ERRORS USING PARALLEL PROCESSING[This section is not visible to customers.]
BUG:5363031 - DEADLOCK ON BROKER METADATA LOCK WHEN FSFO IS ENABLED[This section is not visible to customers.]
BUG:5386881 - KRSMISRL_INTERNAL USES INCORRECT BRANCH INFO[This section is not visible to customers.]
BUG:5415506 - ORA-4020 OCCURS WHEN DBMS_AQADM.PURGE_QUEUE_TABLE AND SELECT ARE RUN
BUG:5476091 - ALTER INDEX REBUILD DEADLOCK: PROCESS HANGING WAITING FOR 'CURSOR: PIN X'
BUG:5485914 - MUTEX REPORTED SELF DEADLOCK AFTER DBMS_MONITOR.SESSION_TRACE_ENABLE
BUG:5554054 - DEADLOCK BETWEEN THREADS :AQJMSSESSION.REMOVECONSUMER AND AQJMSCONSUMER.DEQUEUE
BUG:5557421 - SELF-DEADLOCK OCCURS WHEN IMP SESSION IS KILLED[This section is not visible to customers.]
BUG:5604698 - DEADLOCK BETWEEN 'LIBRARY CACHE LOCK' AND 'LIBRARY CACHE PIN'
BUG:5685189 - GATHER AUTO MODE WAITING ON DR$IBE_CT_IMEDIA_SEARCH
BUG:5695131 - HW ENQUEUE DEADLOCK OCCURS WHILE INSERTING
BUG:5907779 - "CURSOR: PIN S WAIT ON X" RUNNING DBMS_STATS.GATHER_DATABASE_STATS_JOB_PROC

BUG:5932196 - DEADLOCK BETWEEN MV_REFRESH (DEL) AND AUTO GATHER_STATS_JOB[This section is not visible to customers.]
BUG:5941601 - TRANSACTION DEADLOCK / OJMS AND DBMS_AQADM_SYS.ALTER_SUBSCRIBER()
BUG:5983020 - MUTEX AND ROW CACHE DEADLOCK
BUG:5998048 - PERFORMANCE DEGRADATION WITH FGA ENABLED
BUG:6057351 - TWO BACKGROUND PROCESS THAT ARE LOCKING EACH OTHER OUT. M000 AND M001
BUG:6368621 - IO SLAVES DEAD LOCK PROBLEM IN 64BIT PLATFORMS.[This section is not visible to customers.]
BUG:6475688 - MV UPDATE CAUSES A LIBCACHE PIN <--> LOCK DEADLOCK
BUG:6618312 - MV UPDATE: LIBCACHE PIN <--> LOCK DEADLOCK EVEN WITH FIX FOR BUG 6475688[This section is not visible to customers.]
BUG:6644122 - LIBCACHE PIN <--> LOCK DEADLOCK EVEN WITH FIX FOR BUG 6618312[This section is not visible to customers.]
NOTE:2014833.8 - Bug 2014833 - Deadlock possible from concurrent SELECT and TRUNCATE
NOTE:2615271.8 - Bug 2615271 - Deadlock from concurrent GRANT and logon
NOTE:2796282.8 - Bug 2796282 - False deadlock possible using shared servers
NOTE:2883771.8 - Bug 2883771 - "WAITED TOO LONG FOR ROWCACHE ENQUEUE" when using Resource Manager in PLSQL
NOTE:2918838.8 - Bug 2918838 - Undetected deadlock for dc_tablespace_quotas among two processes
NOTE:2995746.8 - Bug 2995746 - Deadlock between session doing a GRANT and another session parsing an aged out cursor
NOTE:3001270.8 - Bug 3001270 - Deadlock between SMON and foreground process for dc_suers
NOTE:3009268.8 - Bug 3009268 - User sessions waiting for recovery of DEAD prepared TX may deadlock with SMON
NOTE:3030298.8 - Bug 3030298 - OERI:2103 from concurrent 'drop tablespace including datafiles'
NOTE:3080929.8 - Bug 3080929 - ORA-4021 / hang can occur due to SMON self deadlock on UNDO$ row cache lock
NOTE:3093080.8 - Bug 3093080 - ALTER TABLE ENABLE TABLE LOCK can cause a deadlock
NOTE:3166756.8 - Bug 3166756 - Self deadlock (ORA-60) / OERI possible on LOB index update
NOTE:3261205.8 - Bug 3261205 - Hang / OERI[kxttdropobj-1] on parallel direct load to temporary table
NOTE:3271271.8 - Bug 3271271 - QMON can deadlock with job queue processes
NOTE:3314850.8 - Bug 3314850 - DROP SUMMARY can deadlock with query rewrite sessions
NOTE:3320292.8 - Bug 3320292 - Parallel recompilation hangs when recompiling type generated for pipeline function
NOTE:3381218.8 - Bug 3381218 - Deadlock involving 'library cache lock' X mode request
NOTE:3398485.8 - Bug 3398485 - Deadlock during on demand materialized view refresh (ORA-4020)
NOTE:3424721.8 - Bug 3424721 - Hang/deadlock from ALTER INDEX REBUILD on partition with concurrent SQL
NOTE:3540821.8 - Bug 3540821 - ORA-4020 deadlock from concurrent ANALYZE index / query compilation against a cluster
NOTE:3562032.8 - Bug 3562032 - Cancelled ONLINE index rebuild can deadlock with DML session
NOTE:3605165.8 - Bug 3605165 - Hang/deadlock between sessions concurrently loading a cursor with INVALID trigger
NOTE:3717619.8 - Bug 3717619 - Deadlock/hang possible due to concurrent cursor loads referencing same INVALID trigger
NOTE:3756949.8 - Bug 3756949 - Sequences can deadlock on space allocation failure
NOTE:3896974.8 - Bug 3896974 - ORA-4020 creating DIMENSIONs from schemas simultaneously
NOTE:3975268.8 - Bug 3975268 - Deadlock possible after gathering statistics for certain SYS objects
NOTE:3987280.8 - Bug 3987280 - Concurrent GRANT / SET ROLE can hang / deadlock
NOTE:3990235.8 - Bug 3990235 - Deadlock in disk drop and instance recovery in ASM
NOTE:4008775.8 - Bug 4008775 - Self deadlock calling DBMS_SPACE / DBMS_STATS in same user call
NOTE:4029101.8 - Bug 4029101 - Concurrent CREATE TABLE / VIEW can deadlock (ORA-60)
NOTE:4114238.8 - Bug 4114238 - Deadlock between dc_users and dc_usernames row cache lock enabling FK
NOTE:4137000.8 - Bug 4137000 - Concurrent SPLIT PARTITION can deadlock / hang
NOTE:4153150.8 - Bug 4153150 - Deadlock on dc_rollback_segments from concurrent parallel load and undo segment creation
NOTE:4185270.8 - Bug 4185270 - PMON "failed to acquire row cache enqueue" cleaning a dead process
NOTE:4275733.8 - Bug 4275733 - Deadlock between library cache lock and row cache lock from concurrent rename partition
NOTE:4313246.8 - Bug 4313246 - PLSQL execution can hold dc_users row cache lock leading to hang / deadlocks
NOTE:4329748.8 - Bug 4329748 - ORA-4020 / deadlock quiescing a replication group
NOTE:4375798.8 - Bug 4375798 - ORA-60 deadlock from AQ enqueue
NOTE:4382653.8 - Bug 4382653 - Deadlock / ORA-4020 gathering statistics on indices

 

在表空间有足够free space的情况下出现ORA-1652

版本10.2.0.5之前存在这样的问题,当打开recyclebin回收站功能的情况下, Tablespace 上有足够的Free Space空闲空间,但是因为这些Free Space属于回收站中的对象,在并行INSERT数据 或者并行CTAS的情况下 PARALLEL启用的情况下可能遇到ORA-1652错误:

 

 

oracle@localhost:~$ oerr ora 1652
01652, 00000, "unable to extend temp segment by %s in tablespace %s"
// *Cause:  Failed to allocate an extent of the required number of blocks for
//          a temporary segment in the tablespace indicated.
// *Action: Use ALTER TABLESPACE ADD DATAFILE statement to add one or more
//          files to the tablespace indicated.

例如ORA-01652: unable to extend temp segment by 320 in tablespace MAC_TS

 

这一般是由于BUG 6977045 – ORA-1652 LMT SPACE NOT REALLOCATED CORRECTLY AFTER DROP TABLE, 该BUG 确认在版本 11.2中修复。

 

该BUG的原理是当CTAS with nologging是使用直接路径加载direct path load,Oracle一开始在针对的永久表空间上创建一个临时段继以加载数据。一旦这些操作完成,则临时段会被重命名并成为表的一部分。 当在该永久表空间上drop一张表,当打开回收站的情况下 该表被置入回收站recyclebin中,该段之前分配的空间由于本BUG的原因造成CTAS + PARALLEL + NOLOGGING时不计算为free space。  这导致了ORA-1652错误的触发。

 

目前针对该BUG 6977045 的off patch有10.2.0.4 、11.1.0.7和11.1.0.7.9 的版本:

 

Patch 6977045 ORA-1652 LMT SPACE NOT REALLOCATED CORRECTLY AFTER DROP TABLE

 

 

如果不想打补丁, 那么Workaround 可以是:

 

1. 关闭 回收站功能 recyclebin=off

2. 在CTAS PARALLEL NOLOGGING 前 purge recyclebin清理回收站

ORA-600:[ksnpost:ksnigb]错误一例

一套HP-UX Itanium上的10.2.0.3系统出现了ORA-00600: internal error code, arguments: [ksnpost:ksnigb], [], [], [], [], [],错误,相关的日志如下:

 

ORA-00600: internal error code, arguments: [kolaslGetLength-1], [], [], [], [], [], [], []

ORA-00600: internal error code, arguments: [ksnpost:ksnigb], [], [], [], [], [], [], []
ORA-00609: could not attach to incoming connection
ORA-12157: TNS:internal network communication error

ORA-27300: OS system dependent operation:fork failed with status: 12
ORA-27301: OS failure message: Not enough space
ORA-27302: failure occurred at: skgpspawn3

ORA-00600: internal error code, arguments: [kolaslGetLength-1], [], [], [], [], [], [], []
Current SQL statement for this session:
SELECT * FROM gv$sql

ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [ksnpost:ksnigb], [], [], [], [], [], [], []
ORA-00609: could not attach to incoming connection
ORA-12157: TNS:internal network communication error
Current SQL information unavailable - no session.

 

Mos上相关的Bug 信息:

 

Bug # 4634662 – Ora-600 [kolaslGetLength-1]
Bug # 7479468 – Ora-600 [ksnpost:ksnigb]

 

Issue 1)
This issue is described in the note 357016.1.Please apply the patch mentioned in the note 357016.1 to avoid this issue.

 

Issue 2)
This is due to OS resource limitation. You need to check with HP for this.We are running out of OS resources and hence
this issue is coming.
Also you can set the ulimit -a values to unlimited for oracle and root user to avoid this issue.

 

Bug 4634662 OERI:kolaslGetLength-1 from V$SQL in RAC
ORA-600[kolaslGetLength-1] selecting from V$SQL (of GV$SQL)
Range of versions believed to be affected Versions < 11
Versions confirmed as being affected

10.1.0.5
10.2.0.3

his issue is fixed in

10.2.0.3 Patch 5 on Windows Platforms
10.2.0.4 (Server Patch Set)
11.1.0.6 (Base Release)

on a RAC database with a varying width character set.

Applies to:
Oracle Server – Enterprise Edition – Version: 10.1.0.2 to 10.2.0.3 – Release: 10.1 to 10.2
Information in this document applies to any platform.
Symptoms

select * from gv$sql on a RAC enviornment

errors with:
ORA-00600: internal error code, arguments: [kolaslGetLength-1], [], [], [], [], [], [], [].

with a multibye characterset (ie:al32utf8, utf8 )
Note: This error has also been reported when select from SQLT$_GV$SQL_PLAN while running Sqlt Execute diagnostic utility – SQLTXPLAIN.SQLT$*

Cause
This is Bug 4634662

Details: ora-600[kolaslGetLength-1] received selecting from v$sql over a RAC db which has a varying width character set

Solution

Bug 4634662 is fixed in 10.2.0.4 and Rel 11.

To check if a patch exists for your platform, go to Metalink:

a) Click on Patches & Updates Folder.
b) Click on Simple Search.
c) Enter patch#: Patch 4634662
d) Select your O/S
e) Click Go.

ORA-600 [Ksnpost:Ksnigb] ORA-12157

Applies to:
Oracle Server – Enterprise Edition – Version: 10.2.0.4 and later [Release: 10.2 and later ]
Information in this document applies to any platform.
Symptoms

In the alert log is reported the following:

ORA-00600: internal error code, arguments: [ksnpost:ksnigb], [], [], [], [], [], [], []
ORA-00609: could not attach to incoming connection
ORA-12157: TNS:internal network communication error

Cause

ORA-600 [ksnpost:ksnigb] along with ORA-600 [729] errors are creating problem while creating new sessions.
All these point to insufficient memory or OS limits.

Bug 7479468 was raised for similar issue that was closed as there was not enough swap swap space hence was the problem.
Solution

Check the swap space in the system and increase if required.
References
BUG:7479468 – ORA-600 [KSNPOST:KSNIGB] AND ORA-12157

 

分析发现在10.2.0.3等版本上存在RAC中查询gv$sql视图会引发ORA-600[kolaslGetLength-1]错误的bug,该bug 可以通过实施补丁4634662来解决。

 

此外当有效内存不足或OS参数上限过小时可能导致Oracle无法成功创建新的session ,引发ORA-600[ksnpost:ksnigb]错误。

建议检查ulimit -a 的输出, 在HP-UX上不妨将stack size设置为unlimited(set the stack size to unlimited.)

$ulimit -a
time(seconds) unlimited
file(blocks) unlimited
data(kbytes) 1048576
stack(kbytes) 131072
memory(kbytes) unlimited
coredump(blocks) 4194303
nofiles(descriptors) 2048

ORA-00600[kjpsod1]&ORA-44203错误一例

一套HPUX-Itanium平台上版本为10.2.0.2 的系统出现ORA-00600: internal error code, arguments: [kjpsod1], [], [], [], [], [], [], [],并伴随有”ORA-44203: timeout waiting for lock on cursor”.错误,详细的日志如下:

 

Database get error
Errors in file /s01/admin/udump/prod_ora_14084.trc:
ORA-00600: internal error code, arguments: [kjpsod1], [], [], [], [], [], [], []
ORA-44203: timeout waiting for lock on cursor
ORA-44203: timeout waiting for lock on cursor

44203, 0000, "timeout waiting for lock on cursor"
// *Document : Yes
// *Cause    : A timeout occured while waiting for a cursor to be compiled.  
//             This is usually caused by the SQL parse requiring access to
//             system resources which are locked by concurrently executing
//             sessions.
// *Action   : Investigate possible causes of resource contention. If
//             neccessary, contact support for additional information
//             on how to diagnose this problem.
/////////////////////////////////////////////////////////////////////////////
//    Reserving 44301 - 44400 for DBMS_SERVICES errors
/////////////////////////////////////////////////////////////////////////////

 

 

与该Internal error相关的知识如下:

 

CAUSE DETERMINATION
===================
A fix for “ORA-00600: internal error code, arguments: [kjpsod1],” issue is in a patch 5169475.

CAUSE JUSTIFICATION
===================
A fix for “ORA-00600: internal error code, arguments: [kjpsod1],” issue is in a patch 5169475.

PROPOSED SOLUTION(S)
====================
Apply patch 5169475

PROPOSED SOLUTION JUSTIFICATION(S)
==================================
A fix for “ORA-00600: internal error code, arguments: [kjpsod1],” issue is in a patch 5169475.

SOLUTION / ACTION PLAN
======================
— To implement the solution, please execute the following steps::
Apply patch 5169475

KNOWLEDGE CONTENT
=================
Errors in file /s01/admin/udump/prod_ora_14084.trc:
ORA-00600: internal error code, arguments: [kjpsod1], [], [], [], [], [], [], []
ORA-44203: timeout waiting for lock on cursor
ORA-44203: timeout waiting for lock on cursor

Solution: Apply patch 5169475

 Bug 5169475  HPUX-Itanium: trace files may not dump all memory
 This note gives a brief overview of bug 5169475.
 The content was last updated on: 30-APR-2008
 Click here for details of each of the sections below.
Affects:

    Product (Component)    Oracle Server (Rdbms)
    Range of versions believed to be affected    Versions >= 10.2.0.2 but < 11
    Versions confirmed as being affected    

        10.2.0.2

    Platforms affected    

        HPUX Itanium 64bit

     It is believed to be a regression in default behaviour thus:
       Regression introduced in 10.2.0.2

Fixed:

    This issue is fixed in    

        10.2.0.3 (Server Patch Set)
        11.1.0.6 (Base Release)

Symptoms:

Related To:

    Diagnostic Output Problem / Improvement

    Miscellaneous

Description

    This problem is introduced in 10.2.0.2 on HPUX Itanium.

    Trace files produced on HPUX Itanium may not dump all
    memory , may show memory as inaccessible (“**********”)
    when it is accessible and may abort early due with
    false errors such as
      ERROR, BAD EXTENT ADDRESS IN DS(800000010021e098)
    due to incorrect response from the internal slrac()
    function.

    This can make it hard to progress a problem as the trace
    may omit essential information.

    Sub-Note:
      See bug 5918964 for a similar issue on HPUX PA-Risc.

 

解决方案是在10.2.0.2 的基础上打5169475补丁(Patch 5169475: SLRAC() IS UNRELIABLE ON HPUX – FALSE KGHU ERRORS AND KGH MESSAGES),或者升级到Patchset 10.2.0.5+ psu 10.2.0.5.5。

 

 

ORA-00600[kglhdunp2_2]错误一例

一套 AIX上的10.2.0.3 数据库出现了ORA-00600: internal error code, arguments: [kglhdunp2_2]错误,详细日志如下:

 

ORA-00600: internal error code, arguments: [kglhdunp2_2], [0x7000007A061F8A0], [
3], [0x7000007F4AEC160], [0x7000007A061F990], [0x7000007A06639A8], [1000], [18]
Sat Aug 20 05:11:26 2011
Fatal internal error happened while SMON was doing Unpin KGL handles with depend
ency.
Sat Aug 20 05:11:26 2011
Errors in file /u01/app/oracle/product/10.2.0/admin/bdump/prod_smon_4915426.trc:
ORA-00600: internal error code, arguments: [kglhdunp2_2], [0x7000007A061F8A0], [
3], [0x7000007F4AEC160], [0x7000007A061F990], [0x7000007A06639A8], [1000], [18]
SMON: terminating instance due to error 474
Instance terminated by SMON, pid = 4915426
Sat Aug 20 05:26:15 2011

ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [kglhdunp2_2], [0x7000007A061F8A0], [3],
[0x7000007F4AEC160], [0x7000007A061F990], [0x7000007A06639A8], [1000], [18]
----- Call Stack Trace -----

ksedst <- ksedmp <- ksfdmp <- kgerinv <- kgesinv
<- kgesin <- kglhdunp2 <- kglScanDependencyHa <- ndles4Unpin <- ktmmon
<- ktmSmonMain <- ksbrdp <- opirip <- opidrv <- sou2o
<- opimai_real <- main <- start

Stack trace matches Bug 7254367----
 kgesinv <- kgesin <- kglhdunp2 <- kglScanDependencyHa <- ndles4Unpin
 <- ktmmon <- ndles4Unpin <- ksbrdp <- opirip <- opidrv
 <- sou2o <- opimai_real <- main <- start

 

对比stack call 确认为Bug 7254367 – SMON crashes instance with OERI[kglhdunp2_2] (Doc ID 7254367.8)

 

Bug 7254367  SMON crashes instance with OERI[kglhdunp2_2]

Affects:

    Product (Component)    Oracle Server (Rdbms)
    Range of versions believed to be affected    Versions < 11
    Versions confirmed as being affected    

        10.2.0.4

    Platforms affected    Generic (all / most platforms affected)

Fixed:

    This issue is fixed in    

        10.2.0.3 Patch 30 on Windows Platforms
        10.2.0.4 Patch 14 on Windows Platforms
        10.2.0.5 (Server Patch Set)

Symptoms:

Related To:

    Internal Error May Occur (ORA-600)
    Instance May Crash
    ORA-600 [kglhdunp2_2]

    (None Specified)

Description

    The SMON process may fail due to an ORA-600 [kglhdunp2_2]
    leading to an instance crash.

ORA-600 [kglhdunp2_2]

PURPOSE:
  This article represents a partially published OERI note.

  It has been published because the ORA-600 error has been
  reported in at least one confirmed bug.

  Therefore, the SUGGESTIONS section of this article may help
  in terms of identifying the cause of the error.

  This specific ORA-600 error may be considered for full publication
  at a later date. If/when fully published, additional information
  will be available here on the nature of this error.

SUGGESTIONS:

  If the Known Issues section below does not help in terms of identifying
  a solution, please submit the trace files and alert.log to Oracle
  Support Services for further analysis.

  Known Issues:

  Bug# 7254367   See Note:7254367.8
      SMON crashes instance with OERI[kglhdunp2_2]
      Fixed: 10.2.0.5, 10.2.0.4.P14, 10.2.0.3.P30

  Bug# 3749490   See Note:3749490.8
      KGL linked lists may become corrupt if process killed at specific time
      Fixed: 9.2.0.6

  Bug# 3724548   See Note:3724548.8
      OERI[kglhdunp2_2] / OERI[1100] under high load
      Fixed: 9.2.0.6, 10.1.0.4, 10.2.0.1:

 

解决方案是升级到10.2.0.5 或者 在原AIX 10.2.0.3.0的基础上安装7254367补丁:

 

We are hitting the bug 7254367

It is fixed in 10.2.0.5

There is a patch available for 10.2.0.3.0 on AIX

The patch 7254367 is available via My Oracle Support

To implement the solution, please execute the following steps:
1) Please download and review the read me for Patch 7254367
2) Please apply Patch. 7254367 in a test environment.
3) Please retest the issue.
4) If the issue is resolved, please migrate the solution as appropriate to other environments.

If you are going to apply the latest patchset in the same release ( 10.2.0.5 patchset or any patch on 10.2.0.3 ) , the other things like SGA recommendations / settings do not change.
So please go ahead and apply the patch.

Applying latest patchset is strongly recommended .

Why latest Patch set?

a)Latest Patch set has resolved many Bugs
b)Interim patches are provided on latest Patch set on Supported releases
c)Interim Patches are “not” rigorously tested but Patch Sets are tested rigorously.
d)We always recommend latest Patch set.
e) Refer following note.

Article-ID: Note 742060.1
Title: Release Schedule of Current Database Patch Sets

To obtain latest patchset from metalink
1.1 Go to metalink
1.2 Click on patches and updates
1.3 Click “Quick Links to the Latest Patchsets, Mini Packs, and Maintenance Packs”
1.4 Choose Oracle Database
1.5 Choose Your operating System
1.6 Choose & click 10.2.0.5

We also recommend you to apply latest PSU ( patchset update ) on top of latest patchset to make the DB stable .

ORA-00600:[1112]内部错误&ROW CACHE ENQUEUE LOCK一例

一套AIX 上的9.2.0.6 2节点RAC系统出现了ORA-00600: internal error code, arguments: [1112], [], [], [], [], [], [], []内部错误伴随有ROW CACHE ENQUEUE LOCK并引发clusterware split-brain resolution,详细的日志及ass.awk输出如下:

 

ALERT LOG
=============
Sun Jun 19 09:06:24 2011
>>> WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK! pid=24
Sun Jun 19 09:06:29 2011
Errors in file /s01/admin/prod/udump/prod2_ora_1061088.trc:
ORA-00600: internal error code, arguments: [1112], [], [], [], [], [], [], []
Sun Jun 19 09:06:29 2011
Errors in file /s01/admin/prod/udump/prod2_ora_1061088.trc:
ORA-00600: internal error code, arguments: [1112], [], [], [], [], [], [], []
Sun Jun 19 09:06:30 2011
Errors in file /s01/admin/prod/udump/prod2_ora_1061088.trc:
ORA-00600: internal error code, arguments: [1112], [], [], [], [], [], [], []
Sun Jun 19 09:06:30 2011
Errors in file /s01/admin/prod/udump/prod2_ora_1061088.trc:
ORA-00600: internal error code, arguments: [1112], [], [], [], [], [], [], []
Sun Jun 19 09:06:31 2011
Errors in file /s01/admin/prod/udump/prod2_ora_1061088.trc:
ORA-00600: internal error code, arguments: [1112], [], [], [], [], [], [], []
Sun Jun 19 09:06:31 2011
Errors in file /s01/admin/prod/udump/prod2_ora_1061088.trc:
ORA-00600: internal error code, arguments: [1112], [], [], [], [], [], [], []
Sun Jun 19 09:08:06 2011
Waiting for clusterware split-brain resolution
Sun Jun 19 09:13:17 2011
ALTER SYSTEM SET event='10511 trace name context forever, level 1' SCOPE=SPFILE SID='*';
Sun Jun 19 09:14:44 2011
Trace dumping is performing id=[cdmp_20110619091444]
Sun Jun 19 09:18:05 2011
Errors in file /s01/admin/prod/bdump/prod2_lmon_422072.trc:
ORA-29740: evicted by member 1, group incarnation 9
Sun Jun 19 09:18:05 2011
LMON: terminating instance due to error 29740
Sun Jun 19 09:18:05 2011
Errors in file /s01/admin/prod/bdump/prod2_lms2_725312.trc:
ORA-29740: evicted by member , group incarnation
Sun Jun 19 09:18:05 2011
Errors in file /s01/admin/prod/bdump/prod2_lms7_1008288.trc:
ORA-29740: evicted by member , group incarnation
Instance terminated by LMON, pid = 422072
Sun Jun 19 09:21:16 2011
Starting ORACLE instance (normal)

TRACE FILE
==============
prod2_ora_1061088.trc
Oracle9i Enterprise Edition Release 9.2.0.6.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP and Oracle Data Mining options
JServer Release 9.2.0.6.0 - Production
ORACLE_HOME = /oracle/app/oracle/product/9.2
System name: AIX
Node name: tprod2
Release: 3
Version: 5
Machine: 00CE5E834C00
Instance name: prod2

*** 2011-06-19 09:06:28.931
================================
PROCESS DUMP FROM HANG ANALYZER:
================================
Current SQL statement for this session:
SELECT formatid, globalid, branchid FROM SYS.DBA_PENDING_TRANSACTIONS ORDER BY formatid, globalid, branchid
*** 2011-06-19 09:06:28.931
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedms+00dc bl ksedst 102905E64 ?
ksdxfdmp+0200 bl _ptrgl
ksdxcb+02d8 bl _ptrgl
sspuser+0084 bl 01FD7CA8
000044C0 ? 00000000
snttread+0028 bl 00009CFC
nttrd+0118 bl snttread FFFFFFFFFFFBBB3 ?
FFFFFFFFFFFBBA8 ?
FFFFFFFFFFFB2C0 ?
nsprecv+0984 bl _ptrgl
nsrdr+01d0 bl nsprecv 000000000 ? 110299C00 ?
000000000 ?
nsdo+1818 bl nsrdr 000000000 ? 000000000 ?
nioqrc+05c4 bl nsdo 1102A8098 ? 5500000055 ?
1102DFD20 ? 1102A8200 ?
FFFFFFFFFFFC4E0 ? 000000000 ?
300000003 ?
opikndf2+06a8 bl _ptrgl
opitsk+05fc bl _ptrgl
opiino+0798 bl opitsk 000000000 ? 000000000 ?
opiodr+08e8 bl _ptrgl
opidrv+032c bl opiodr 3C00000018 ? 4101F62A0 ?
FFFFFFFFFFFF8C0 ? 0A057DC60 ?
sou2o+0028 bl opidrv 3C0C000000 ? 4A0644B50 ?
FFFFFFFFFFFF8C0 ?
main+0138 bl 01FD7B5C
__start+0098 bl main 000000000 ? 000000000 ?

Repeat 2 times
----- End of Call Stack Trace -----
*** 2011-06-19 09:06:29.111
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedms+00dc bl ksedst 102905E64 ?
ksdxfdmp+0200 bl _ptrgl
ksdxcb+02d8 bl _ptrgl
sspuser+0084 bl 01FD7CA8
000044C0 ? 00000000
snttread+0028 bl 00009CFC
nttrd+0118 bl snttread FFFFFFFFFFFBBB3 ?
FFFFFFFFFFFBBA8 ?
FFFFFFFFFFFB2C0 ?
nsprecv+0984 bl _ptrgl
nsrdr+01d0 bl nsprecv 000000000 ? 110299C00 ?
000000000 ?
nsdo+1818 bl nsrdr 000000000 ? 000000000 ?
nioqrc+05c4 bl nsdo 1102A8098 ? 5500000055 ?
1102DFD20 ? 1102A8200 ?
FFFFFFFFFFFC4E0 ? 000000000 ?
300000003 ?
opikndf2+06a8 bl _ptrgl
opitsk+05fc bl _ptrgl
opiino+0798 bl opitsk 000000000 ? 000000000 ?
opiodr+08e8 bl _ptrgl
opidrv+032c bl opiodr 3C00000018 ? 4101F62A0 ?
FFFFFFFFFFFF8C0 ? 0A057DC60 ?
sou2o+0028 bl opidrv 3C0C000000 ? 4A0644B50 ?
FFFFFFFFFFFF8C0 ?
main+0138 bl 01FD7B5C
__start+0098 bl main 000000000 ? 000000000 ?
----- End of Call Stack Trace -----
*** 2011-06-19 09:06:29.133
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedms+00dc bl ksedst 102905E64 ?
ksdxfdmp+0200 bl _ptrgl
ksdxcb+02d8 bl _ptrgl
sspuser+0084 bl 01FD7CA8
000044C0 ? 00000000
snttread+0028 bl 00009CFC
nttrd+0118 bl snttread FFFFFFFFFFFBBB3 ?
FFFFFFFFFFFBBA8 ?
FFFFFFFFFFFB2C0 ?
nsprecv+0984 bl _ptrgl
nsrdr+01d0 bl nsprecv 000000000 ? 110299C00 ?
000000000 ?
nsdo+1818 bl nsrdr 000000000 ? 000000000 ?
nioqrc+05c4 bl nsdo 1102A8098 ? 5500000055 ?
1102DFD20 ? 1102A8200 ?
FFFFFFFFFFFC4E0 ? 000000000 ?
300000003 ?
opikndf2+06a8 bl _ptrgl
opitsk+05fc bl _ptrgl
opiino+0798 bl opitsk 000000000 ? 000000000 ?
opiodr+08e8 bl _ptrgl
opidrv+032c bl opiodr 3C00000018 ? 4101F62A0 ?
FFFFFFFFFFFF8C0 ? 0A057DC60 ?
sou2o+0028 bl opidrv 3C0C000000 ? 4A0644B50 ?
FFFFFFFFFFFF8C0 ?
main+0138 bl 01FD7B5C
__start+0098 bl main 000000000 ? 000000000 ?
----- End of Call Stack Trace -----
*** 2011-06-19 09:06:29.162
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedms+00dc bl ksedst 102905E64 ?
ksdxfdmp+0200 bl _ptrgl
ksdxcb+02d8 bl _ptrgl
sspuser+0084 bl 01FD7CA8
000044C0 ? 00000000
snttread+0028 bl 00009CFC
nttrd+0118 bl snttread FFFFFFFFFFFBBB3 ?
FFFFFFFFFFFBBA8 ?
FFFFFFFFFFFB2C0 ?
nsprecv+0984 bl _ptrgl
nsrdr+01d0 bl nsprecv 000000000 ? 110299C00 ?
000000000 ?
nsdo+1818 bl nsrdr 000000000 ? 000000000 ?
nioqrc+05c4 bl nsdo 1102A8098 ? 5500000055 ?
1102DFD20 ? 1102A8200 ?
FFFFFFFFFFFC4E0 ? 000000000 ?
300000003 ?
opikndf2+06a8 bl _ptrgl
opitsk+05fc bl _ptrgl
opiino+0798 bl opitsk 000000000 ? 000000000 ?
opiodr+08e8 bl _ptrgl
opidrv+032c bl opiodr 3C00000018 ? 4101F62A0 ?
FFFFFFFFFFFF8C0 ? 0A057DC60 ?
sou2o+0028 bl opidrv 3C0C000000 ? 4A0644B50 ?
FFFFFFFFFFFF8C0 ?
main+0138 bl 01FD7B5C
__start+0098 bl main 000000000 ? 000000000 ?
----- End of Call Stack Trace -----
*** 2011-06-19 09:06:29.175
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedms+00dc bl ksedst 102905E64 ?
ksdxfdmp+0200 bl _ptrgl
ksdxcb+02d8 bl _ptrgl
sspuser+0084 bl 01FD7CA8
000044C0 ? 00000000
snttread+0028 bl 00009CFC
nttrd+0118 bl snttread FFFFFFFFFFFBBB3 ?
FFFFFFFFFFFBBA8 ?
FFFFFFFFFFFB2C0 ?
nsprecv+0984 bl _ptrgl
nsrdr+01d0 bl nsprecv 000000000 ? 110299C00 ?
000000000 ?
nsdo+1818 bl nsrdr 000000000 ? 000000000 ?
nioqrc+05c4 bl nsdo 1102A8098 ? 5500000055 ?
1102DFD20 ? 1102A8200 ?
FFFFFFFFFFFC4E0 ? 000000000 ?
300000003 ?
opikndf2+06a8 bl _ptrgl
opitsk+05fc bl _ptrgl
opiino+0798 bl opitsk 000000000 ? 000000000 ?
opiodr+08e8 bl _ptrgl
opidrv+032c bl opiodr 3C00000018 ? 4101F62A0 ?
FFFFFFFFFFFF8C0 ? 0A057DC60 ?
sou2o+0028 bl opidrv 3C0C000000 ? 4A0644B50 ?
FFFFFFFFFFFF8C0 ?
main+0138 bl 01FD7B5C
__start+0098 bl main 000000000 ? 000000000 ?
----- End of Call Stack Trace -----
*** 2011-06-19 09:06:29.192
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedms+00dc bl ksedst 102905E64 ?
ksdxfdmp+0200 bl _ptrgl
ksdxcb+02d8 bl _ptrgl
sspuser+0084 bl 01FD7CA8
000044C0 ? 00000000
snttread+0028 bl 00009CFC
nttrd+0118 bl snttread FFFFFFFFFFFBBB3 ?
FFFFFFFFFFFBBA8 ?
FFFFFFFFFFFB2C0 ?
nsprecv+0984 bl _ptrgl
nsrdr+01d0 bl nsprecv 000000000 ? 110299C00 ?
000000000 ?
nsdo+1818 bl nsrdr 000000000 ? 000000000 ?
nioqrc+05c4 bl nsdo 1102A8098 ? 5500000055 ?
1102DFD20 ? 1102A8200 ?
FFFFFFFFFFFC4E0 ? 000000000 ?
300000003 ?
opikndf2+06a8 bl _ptrgl
opitsk+05fc bl _ptrgl
opiino+0798 bl opitsk 000000000 ? 000000000 ?
opiodr+08e8 bl _ptrgl
opidrv+032c bl opiodr 3C00000018 ? 4101F62A0 ?
FFFFFFFFFFFF8C0 ? 0A057DC60 ?
sou2o+0028 bl opidrv 3C0C000000 ? 4A0644B50 ?
FFFFFFFFFFFF8C0 ?
main+0138 bl 01FD7B5C
__start+0098 bl main 000000000 ? 000000000 ?
----- End of Call Stack Trace -----
Files currently opened by this process:
===================================================
PROCESS STATE
-------------
Process global information:
process: 700000676099520, call: 0, xact: 0, curses: 0, usrses: 700000673decd98
----------------------------------------
SO: 700000676099520, type: 2, owner: 0, flag: INIT/-/-/0x00
(process) Oracle pid=224, calls cur/top: 0/7000006c2ca3df8, flag: (0) -
int error: 0, call error: 0, sess error: 0, txn error 0
(post info) last post received: 0 0 50
last post received-location: kcbzww
last process to post me: 700000676119f00 7 0
last post sent: 0 0 21
last post sent-location: ksqrcl
last process posted by me: 700000676428258 1 0
(latch info) wait_event=0 bits=0
Process Group: DEFAULT, pseudo proc: 700000676cc19b0
O/S info: user: oracle, term: UNKNOWN, ospid: 1061088
OSD pid info: Unix process pid: 1061088, image: oracle@tprod2 (TNS V1-V3)
----------------------------------------

END OF PROCESS STATE
******************** Cursor Dump ************************
Current cursor: 2, pgadep: 0
pgactx: 7000006f8bc2d40 ctxcbk: 0 ctxqbc: 0 ctxrws: 700000716aecfd0
Explain plan:
Plan Table
--------
-------------------------------------------------------------------------------------------------------------------------
| Operation | Name | Rows | Bytes | Cost | TQ |IN-OUT| PQ Distrib |Pstart| Pstop |
-------------------------------------------------------------------------------------------------------------------------
| SELECT STATEMENT | | 0 | 0 | 0 | | | | | |
| SORT ORDER BY | | 0 | 0 | 0 | | | | | |
| VIEW | | 0 | 0 | 0 | | | | | |
| SORT UNIQUE | | 0 | 0 | 0 | | | | | |
| UNION-ALL | | 0 | 0 | 0 | | | | | |
| MINUS | | 0 | 0 | 0 | | | | | |
| SORT UNIQUE | | 0 | 0 | 0 | | | | | |
| VIEW | | 0 | 0 | 0 | | | | | |
| FIXED TABLE FULL | X$K2GTE2 | 0 | 0 | 0 | | | | | |
| SORT UNIQUE | | 0 | 0 | 0 | | | | | |
| NESTED LOOPS | | 0 | 0 | 0 | | | | | |
*** 2011-06-19 09:06:29.376
ksedmp: internal or fatal error

ORA-00600: internal error code, arguments: [1112], [], [], [], [], [], [], []
Current SQL statement for this session:
SELECT formatid, globalid, branchid FROM SYS.DBA_PENDING_TRANSACTIONS ORDER BY formatid, globalid, branchid
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
ksedmp+0148 bl ksedst 102905C84 ?
ksfdmp+0018 bl 01FD8148
kgeriv+0118 bl _ptrgl
kgesiv+0080 bl kgeriv 07FFFFFFC ? 800000000000000 ?
1000000000000000 ?
1800000000000000 ?
028828228 ?
ksesic0+005c bl kgesiv 7000006BE3BB328 ? 000010550 ?
7000006BE3AADD8 ? 10297D7E8 ?
FFFFFFFFFFF3A20 ?
kssadf_stage+0084 bl ksesic0 45800000458 ? 11007A2F8 ?
000000000 ? 000000000 ?
000000000 ? 70000000001DB80 ?
000000000 ? 700000703BBF040 ?
kqreqa+008c bl kssadf_stage 7000006BE3AADD8 ? 10297D7E8 ?
068A31055 ? 000006BB0 ?
000000001 ?
kqrpre1+06e4 bl kqreqa 000000001 ?
kqrpre+001c bl kqrpre1 BAC3F8E66 ? 000000001 ?
FFFFFFFFFFF4008 ? 1101F9A14 ?
1101F9A14 ? FFFFFFFFFFF4000 ?
07FFFFFFF ? 000000000 ?
kkdlobni+0058 bl kqrpre 100F29A04 ?
4222442400000000 ?
14DFD4B95 ?
166CCD19101F62A0 ?
000000002 ? 000000000 ?
FFFFFFFFFFF40C0 ?
xplObjnToName+0150 bl kkdlobni 9A0000009A ?
FFFFFFFFFFF4444 ? 000000000 ?
000000000 ?
xplPatchName+00a4 bl xplObjnToName 9AFFFF46F0 ?
FFFFFFFFFFF4444 ?
xplMakeRow+0190 bl xplPatchName 000000000 ? 000000000 ?
000000000 ?
xplFetchRow+00b4 bl _ptrgl
xplDumpRws+0604 bl xplFetchRow 1029CFB48 ? FFFFFFFFFFF4770 ?
1101F9A14 ?
curdmp+0164 bl xplDumpRws 102AE2A20 ?
ksedms+012c bl curdmp
ksdxfdmp+0200 bl _ptrgl
ksdxcb+02d8 bl _ptrgl
sspuser+0084 bl 01FD7CA8
000044C0 ? 00000000
snttread+0028 bl 00009CFC
nttrd+0118 bl snttread FFFFFFFFFFFBBB3 ?
FFFFFFFFFFFBBA8 ?
FFFFFFFFFFFB2C0 ?
nsprecv+0984 bl _ptrgl
nsrdr+01d0 bl nsprecv 000000000 ? 110299C00 ?
000000000 ?
nsdo+1818 bl nsrdr 000000000 ? 000000000 ?
nioqrc+05c4 bl

Blockers
~~~~~~~~

Above is a list of all the processes. If they are waiting for a resource
then it will be given in square brackets. Below is a summary of the
waited upon resources, together with the holder of that resource.
Notes:
~~~~~
o A process id of '???' implies that the holder was not found in the
systemstate. (The holder may have released the resource before we
dumped the state object tree of the blocking process).
o Lines with 'Enqueue conversion' below can be ignored *unless*
other sessions are waiting on that resource too. For more, see
http://dlsunuk11.uk.oracle.com/Public/TOOLS/Ass.html#enqcnv)

Resource Holder State
Latch 70000000000a4b8 115: Blocker
Latch 70000000000a4b8 210: Blocker
Latch 70000000000a4b8 270: Blocker
Latch 70000000000a4b8 406: Blocker
Latch 70000000000a4b8 614: Blocker
Latch 70000000000a4b8 626: Blocker
Latch 70000000000a4b8 882: Blocker
Latch 70000000000a4b8 1489: Blocker
Latch 70000000000a4b8 1617: Blocker
Latch 70000000000a4b8 1878: Blocker
Latch 70000000000a4b8 1916: Blocker
Latch 70000000000a4b8 1947: Blocker
Latch 70000000000a4b8 1963: Blocker
Latch 70000000000a4b8 2121: 2121: is waiting for Latch 700000675dae330
Latch 70000000000a4b8 2245: Blocker
Latch 70000000000a4b8 2351: Blocker
Latch 70000000000a4b8 2566: Blocker
Latch 70000000000a4b8 2585: Blocker
Latch 70000000000a4b8 2643: Blocker
Latch 70000000000a4b8 2773: 2773: is waiting for Latch 700000675daf3a8
Latch 70000000000a4b8 2791: Blocker
Latch 70000000000a4b8 2795: Blocker
Latch 70000000000a4b8 2966: Blocker
Latch 70000000000a4b8 2969: Blocker
Latch 700000675dadf50 ??? Blocker
Latch 700000675dadc68 ??? Blocker
Latch 700000675dadb70 ??? Blocker
Latch 7000006be3a6530 ??? Blocker
Latch 700000675dae808 ??? Blocker
Latch 700000675db0040 ??? Blocker
Latch 7000006d1d71138 ??? Blocker
Latch 700000675dad3b0 ??? Blocker
Latch 700000675dae330 ??? Blocker
Latch 7000006b2d4fd28 2211: Blocker
Latch 7000006b2d4fd28 2220: Blocker
Latch 7000006b2e5df68 2660: Blocker
Latch 7000006b2e5e3e8 2752: Blocker
Latch 7000006b2e5e3e8 2876: Blocker
Latch 7000006b2d06b28 ??? Blocker
Latch 7000006b2f9f928 ??? Blocker
Latch 7000006b2d4db68 ??? Blocker
Latch 7000006b2e5e868 ??? Blocker
Latch 7000006b2d4e6a8 ??? Blocker
Latch 7000006b2d4eb28 2434: Blocker
Latch 7000006b2d4eb28 2437: 2437: is waiting for 2434: 2437:
Latch 7000006b2d4f428 2925: Blocker
Latch 7000006b2d4f428 2948: Blocker
Latch 7000006b2d07428 ??? Blocker
Latch 7000006b2d4e588 ??? Blocker
Latch 7000006b2e5ece8 ??? Blocker
Latch 7000006b2d4efa8 ??? Blocker
Latch 7000006b2d07c08 ??? Blocker
Latch 7000006b2f9e968 ??? Blocker
Latch 700000675daf3a8 ??? Blocker
Latch 7000006b2a49f68 3198: Blocker
Latch 70000000001a968 ??? Blocker

Some of the above latches may be child latches. Please check the section
named 'Child Latch Report' below for further notes.

Blockers According to Tracefile Wait Info:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. This may not work for 64bit platforms. See bug 2902997 for details.
2. If the blocking process is shown as 0 then that session may no longer be
present.
3. If resources are held across code layers then sometimes the tracefile wait
info will not recognise the problem.

No blockers seen.

Object Names
~~~~~~~~~~~~
Latch 70000000000a4b8 enqueues
Latch 700000675dadf50 Child enqueue hash chains
Latch 700000675dadc68 Child enqueue hash chains
Latch 700000675dadb70 Child enqueue hash chains
Latch 7000006be3a6530 Child row cache objects
Latch 700000675dae808 Child enqueue hash chains
Latch 700000675db0040 Child enqueue hash chains
Latch 7000006d1d71138 Child library cache pin
Latch 700000675dad3b0 Child enqueue hash chains
Latch 700000675dae330 Child enqueue hash chains
Latch 7000006b2d4fd28 Child cache buffers chains
Latch 7000006b2e5df68 Child cache buffers chains
Latch 7000006b2e5e3e8 Child cache buffers chains
Latch 7000006b2d06b28 Child cache buffers chains
Latch 7000006b2f9f928 Child cache buffers chains
Latch 7000006b2d4db68 Child cache buffers chains
Latch 7000006b2e5e868 Child cache buffers chains
Latch 7000006b2d4e6a8 Child cache buffers chains
Latch 7000006b2d4eb28 Child cache buffers chains
Latch 7000006b2d4f428 Child cache buffers chains
Latch 7000006b2d07428 Child cache buffers chains
Latch 7000006b2d4e588 Child cache buffers chains
Latch 7000006b2e5ece8 Child cache buffers chains
Latch 7000006b2d4efa8 Child cache buffers chains
Latch 7000006b2d07c08 Child cache buffers chains
Latch 7000006b2f9e968 Child cache buffers chains
Latch 700000675daf3a8 Child enqueue hash chains
Latch 7000006b2a49f68 Child cache buffers chains
Latch 70000000001a968 Parent transaction allocation

Child Latch Report
~~~~~~~~~~~~~~~~~~
Some processes are being blocked waiting for child latches.

At the moment this script does not detect the blocker because the
child latch address differs to the parent latch address. To manually
detect the blocker please take the following steps :
1. Determine the TYPE of latch (Eg library cache) that is involved.
2. Search the source trace file for a target of :
holding.*Parent.*library cache
(Assuming we have a child library cache and have vi-like regular expressions)

If this shows nothing then the blocker may have released the resource
before we got to dump the state object tree of the blocked process.

A list of processes that hold parent latches is given below :

No processes found.

Summary of Wait Events Seen (count>10)
~~~~~~~~~~~~~~~~~~~~~~~~~~~
No wait events seen more than 10 times

 

 

ORA-00600:[1112]内部错误的相关知识如下:

 

ERROR:
ORA-600 [1112] [a] [b] [c] [d] [e]

VERSIONS:
versions 7.3 to 9.2

DESCRIPTION:

ORA-600 [1112] is getting raised while trying to add a
row cache enqueue to a transaction state object during
lookup of the default tablespace number during table
creation.

FUNCTIONALITY:
STATE OBJECT MANAGEMENT

IMPACT:
PROCESS FAILURE
NON CORRUPTIVE – No underlying data corruption.

Bug 2489130 – OERI:1112 can occur while dumping PROCESSSTATE informatio (Doc ID 2489130.8)
Bug 4126973: ORA-600[504] AND ORA-600[1112] OCCURED WHEN GETTING “ERRORSTACK”
Base Bug 2489130
Bug 3954753: ORA-600 [1112] AND SESSION CRASH

 

经过诊断发现该ORA-00600:[1112]内部错误是由Bug 2489130所引起的,而触发该Bug的直接原因是WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK!:

 

The cause for the ORA-00600 [1112] appears due to Bug 2489130
This error can occur on dumping of process state which is what occurred here.
The primary issue is the WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK!
This then triggers a system state and process state to be dumped due to nature of the problem.
The ORA-00600 [1112] gets dumped out when process state is done.

Stack for trace very similar to Bug 2489130 and this is only known bug on 9.2 like this with a fix.

A fix for bug 2489130 is included in the 9.2.0.7 patchset.
Recommend applying 9.2.0.8 patchset to have this and other bug fixes.
This would only prevent the ORA-00600 [1112] from occurring on state dumps.

 

解决方案是 优化SQL性能以避免出现WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK!, 或者至少升级数据库版本到9.2.0.8 这个推荐的patchset。

ORA-00600

ORA-00600 Internal Error 是我们在学习使用Oracle的过程中,必然会经历的一个站点。

很多同学一遇到ORA-00600 错误信息,就认为自己碰到了Oracle Database软件的Bug,实际上这一观点是不准确的。

ORA-00600可能由多种原因造成,包括软件漏洞、Bug、程序运行异常、内存讹误和数据讹误造成。

举例来说在数据异常恢复过程中常遇到的ORA-00600[2662](Block SCN is ahead of Current SCN) 和ORA-00600[4000](回滚段rollback数据块时发现rollback segment存在讹误)错误 均是数据讹误引起的而非bug 。

我们在分析ORA-00600 Internal Error, 定位具体故障的时候,从600 trace中能够找到的最为有用的信息就是600所附带的Argument信息:

 

实际600 Internal Error 的Argument 可以分成 2种:

 

a.   第一位是数字类型的Argument , 例如之前说的2662 和 4000 , 不同的数字代表不同的错误含义。 数字类型的argument 所代表的内部错误相对更为普遍、常见。  实际这些数字Argument 也是来源于 不同的Oracle Kernel Function内核函数,如kddummy_blkchk、kclchkinteg_2 等; 但是因为这些错误较为常见, 一方面为了照顾用户的使用体验( 用户对RDBMS软件的内核函数是不感兴趣的,当然可能我们感兴趣), 另一方面这些函数涉及到很多Oracle的内部原理,为了不让这些内核函数暴露在外, 所以Oracle开发部门对这些常见的Internal Error状态进行了编码,转换成数字代码的形式, 实际上这些数字代码形式的Argument 都有其与OERR类似的注释,这些注释没有被包含在oraus.msg中,但是在该msg文件中说明了这些注释仅仅是不公开, Oracle公司的员工是可以看到的:

 

 Programmer's Comments
 ---------------------
 If you wish to add comments regarding a message that should not be seen by
 the public, use "// *Comment: " as follows:

   e.g.
       32769, 00000, "incompatible SQL*Net version"
        *Cause: An attempt was made to use an older version of SQL*Net that
         is incompatible with current version of ORACLE.

 

数字编码Argument 的Internal error 如果不只打印出一位的Argument的话,那么后续几位的Argument 一般都是有其实际意义的,如ORA-00600[2662]的后续Argument 的含义为:

ARGUMENTS:
Arg [a] Current SCN WRAP
Arg [b] Current SCN BASE
Arg [c] dependent SCN WRAP
Arg [d] dependent SCN BASE
Arg [e] Where present this is the DBA where the dependent SCN came from.

这就便于Oracle Support 来诊断和解决这些Internal Error。对于数字类型的Argument ,Metalink上一般会公开其后续Argument的含义,且因为这些问题较为常见,所以一般都已经提供专门的Resolved Solution 或者 Workaround 方法来提供。

总而言之数字编码的ORA-00600 argument 一般我们可以通过 在Metalink 上搜索 ORA-00600 + 第一位 Argument ,或者使用<ORA-600/ORA-7445 Error Look-up Tool [ID 153788.1]>诊断工具页面来找到相关的有用Note。

 

b. 函数名形式的Argument 。 这类Argument 代表的Internal Error 相对于前一种要出现的频率低一些, Oracle开发部门尚来没有在相关版本中将这些Internal Error 编码。 这样我们就可以看到出现问题的完整Kernel Function Name , 可以使用ORA-600 + 第一位 Argument 在Metalink 上搜索来找到一些相关的Note , 但是函数名形式的Argument  往往不能精确定位到问题 ,因为 不同的错误原因 可能在同一个内核函数中引发不同的异常 , 而这个时候我们只能看到 函数名的Argument 信息。 更精确定位的 方式是找出 在调用这个函数时的 详细stack call , 我们来看一个ORA-600[KCBZ_CHECK_OBJD_TYP_1]的stack call:

 

ksedst()+40
ksedmp()+168
ksfdmp()+32
kgerinv()+152
kgeasnmierr()+88
kcbassertbd3()+204
kcbz_check_objd_typ
kcbzib()+
kcbgtcr()+
ktecgsc()+168
ktecgetsh()+196
ktecgshx()+40
kteinicnt1()+648
ktssdrbm_segment()+
ktssdro_segment()+3
ktssdt_segs()+1128
ktmmon()+3500
ktmSmonMain()+64
ksbrdp()+1276
opirip()+
opidrv()+1088
sou2o()+120
opimai_real()+496
main()+240
$START$()+

 

注意以上stack call中 只有 ktmSmonMain -> kcbassertbd3 这部分是有意义的, 开始部分的main()-> ksbrdp() 是很普通的入口函数 , 而从kgeasnmierr (Kernel generic Error ) 开始的代码是Oracle 报错层使用的函数 , 都是对定位问题没有帮助的。 将这部分有用的stack call 填入Metalink <ORA-600/ORA-7445 Error Look-up Tool [ID 153788.1]> 600问题诊断页面的 stack call 栏 会以较严格的筛选条件找出问题相关的Note:

 

 

针对ORA-00600 的解决 一般 Oracle Support 会给出  补丁修复 和 Workaround 绕过该问题的 2 类解决方案 , 当然也还是存在Oracle 研发部门无法在他们的环境中重现你所遇到的ORA-00600的可能性,这意味着部分600错误可能是官方无解的,也可能是Oracle Support 已经掌握某种Workaround 的方法, 但是没有在现有的Note 文档中提交的情况 , 当然这都是少数现象。

 

如果实在找不到可用的解决方案, 或者您的产品数据库有极高的服务等级要求,那么提交Service Request (SR) 有些老人还是习惯于称其为Tar的服务请求 , 可能是一种终极手段。 但是我不得不说一句 并非所有的问题 都是有解的 , 您使用的TV 电视机的制造商可以解决 所有其在使用环节中遇到的问题吗? 理论上是可以的 , 但是当解决一个问题的成本非常高时 , 制造商可能更情愿给你换一台电视 ,但是您的产品数据库 可以轻易更换吗?  这是一个值得深思的问题 , 也是RDBMS市场的 一条悖论。

 

 

 

来读读 由Maclean Liu 所编写的ORA-00600 Oracle Internal Error 的相关文章:

Oracle内部错误:ORA-00600:[4097]一例
Oracle内部错误:ORA-00600[15801], [1]一例
Oracle内部错误:ORA-00600:[6033]一例

Oracle内部错误:ORA-00600[OSDEP_INTERNAL]一例

Oracle内部错误:ORA-00600[kgskdecrstat1]一例

Oracle内部错误:ORA-00600[kfioTranslateIO03]一例

Oracle内部错误ORA-00600:[pfri.c: pfri8: plio mismatch ]一例

Oracle内部错误:ORA-00600[2608]一例

Oracle内部错误:ORA-00600[13013][5001]故障诊断一例

Oracle内部错误:ORA-00600[17175]一例

Oracle内部错误ORA-00600:[2667]一例

Oracle RAC内部错误:ORA-00600[keltnfy-ldmInit]一例

ORA-00600: INTERNAL ERROR CODE, ARGUMENTS: [729], [10992], [SPACE LEAK] Example

手工模拟Oracle数据块逻辑讹误引发,ORA-00600:[13013] [5001]一例

ORA-00600
[4400][48]错误一例

ORA-00600 [KCBZPB_1], [59033077], [4], [1], [] example

ORA-00600:[qctcte1]内部错误一例

ORA-00600
: internal error code, arguments: [15160]

ORA-00600
: internal error code, arguments: [kdsgrp1] example

Oracle内部错误:ORA-00600[25012]一例

ora-00600
:[17281], [1001]一例

ORA-00600
:[kclchkinteg_2]及[kjmsm_epc]内部错误一例

Oracle内部错误:ORA-00600[kccchb_3]一例

ORA-00600
: [qksrcBuildRwo]内部错误一例

ORA-00600
:[32695], [hash aggregation can’t be done]错误一例

ORA-00600
[6711]错误一例

ora-00600
[kkocxj:pjpCtx]内部错误一例

ORA-00600
[kcbz_check_objd_typ_3]错误一例

ORA-00600
:[15570]内部错误一例

ORA-00600
[3756]内部错误一例

ORA-00600
[kddummy_blkchk]错误一例

How to trigger ORA-00600,ORA-7445 by manual

ora-600 [17182]错误一例

Database Force open example

ora-600[qesmmCValStat4]一例

ORA-600 [kddummy_blkchk] [18038] 一例

Oracle内部错误:ORA-00600[kgskdecrstat1]一例

famous summary stack trace from Oracle Version 8.1.7.4.0 Bug Note

Oracle内部错误ORA-600:[1112]

一次Exadata上的ORA-600[kjbmprlst:shadow]故障分析
ORA-600 quick reference guide
ORA-00600[kglhdunp2_2]错误一例
ORA-00600:[kclchkinteg_2]及[kjmsm_epc]内部错误一例
ORA-00600: [7005], [192]内部错误一例
ORA-600 internal error[kqrfrpo]一例
ORA-600[4194]错误一例
How to trigger ORA-00600,ORA-7445 by manual
ORA-00600[kjpsod1]&ORA-44203错误一例


TRANSACTIONAL TEXT INDEX全文索引可能消耗大量PGA内存

在版本10.2中存在<BUG 6624968 – A QUERY AGAINST A TRANSACTIONAL TEXT INDEX CONSUMES HUGE PGA MEMORY>对于文本索引的查询可能引发PGA内存过量消耗, 如以下演示:

 

 

SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bi
PL/SQL Release 10.2.0.1.0 - Production
CORE    10.2.0.1.0      Production
TNS for Linux: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
SQL> 
SQL> 
SQL>  CREATE TABLE TESTTAB (COL1 NUMBER, COL2 VARCHAR2(500),
  2   CONSTRAINT PK_COL1 PRIMARY KEY (COL1));

Table created.

SQL>  CREATE INDEX CTXI ON TESTTAB (COL2)
  2   INDEXTYPE IS CTXSYS.CONTEXT PARAMETERS('TRANSACTIONAL');

Index created.

 BEGIN
 FOR CNT IN 1..5000 LOOP
 INSERT INTO TESTTAB VALUES
 (CNT,'123456789 123456789 123456789 123456789 123456789 ');
 IF MOD(CNT,500)=0 THEN COMMIT;
 END IF;
 END LOOP;
 END;
 /

PL/SQL procedure successfully completed.

SQL> conn maclean/oracle
Connected.

 SELECT COL1 FROM TESTTAB WHERE CONTAINS(COL2,'%2') > 0;

SQL> col name for a30
SQL> set linesize 140 pagesize 1400
SQL>  select ss.sid, sn.name, ss.value
  2   from v$session se, v$sesstat ss,v$statname sn
  3   where ss.STATISTIC#=sn.STATISTIC# and se.SID=ss.SID
  4   and se.USERNAME='MACLEAN' and sn.name like '%pga%';

       SID NAME                                VALUE
---------- ------------------------------ ----------
       159 session pga memory              330403416
       159 session pga memory max          331976280

 BEGIN
 FOR CNT IN 1..50000 LOOP
 INSERT INTO TESTTAB VALUES
 (CNT,'123456789 123456789 123456789 123456789 123456789 ');
 IF MOD(CNT,500)=0 THEN COMMIT;
 END IF;
 END LOOP;
 END;
 /	   

SQL> set linesize 140 pagesize 1400 
SQL>  select ss.sid, sn.name, ss.value
  2   from v$session se, v$sesstat ss,v$statname sn
  3   where ss.STATISTIC#=sn.STATISTIC# and se.SID=ss.SID
  4   and se.USERNAME='MACLEAN' and sn.name like '%pga%';

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                                983993944
       159 session pga memory max                                            985108056

SQL> 
SQL> /

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                                991071832
       159 session pga memory max                                            992185944

SQL> /

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                                993693272
       159 session pga memory max                                            994807384

SQL> /

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                               1000771160
       159 session pga memory max                                           1001885272

SQL> /

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                               1127648856
       159 session pga memory max                                           1128762968

SQL> /

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                               1130008152
       159 session pga memory max                                           1131122264

SQL> /

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                               1131974232
       159 session pga memory max                                           1133088344

SQL> /

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                               1133678168
       159 session pga memory max                                           1134792280

SQL> /

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                               1197641304
       159 session pga memory max                                           1198755416

SQL> /

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                               1200262744
       159 session pga memory max                                           1201376856

SQL> /

       SID NAME                                                                  VALUE
---------- ---------------------------------------------------------------- ----------
       159 session pga memory                                               1695321688
       159 session pga memory max                                           1696435800

 

 

该BUG已确认在版本10.2.0.4和11.1.0.7之前可以重复触发。 解决方法主要是达到最新的patchset

Oracle内部错误ORA-00600:[pfri.c: pfri8: plio mismatch ]一例

一套Linux x86-64上的11.2.0.1数据库出现ORA-00600:[pfri.c: pfri8: plio mismatch ],日志如下 :

 

ORA-00600: internal error code, arguments: [pfri.c: pfri8: plio mismatch ], [], [], [], [], [], [], [], [], [], [], []
ORA-04061: existing state of package body "APPS.OE_ORDER_UTIL" has been invalidated
ORA-04065: not executed, altered or dropped package body "APPS.OE_ORDER_UTIL"

 

经过和MOS沟通,确认为Bug: 9691456 11.2.0.2, 12.1.0.0 ORA-600 [pfri.c: pfri8: plio mismatch] with Editions:

 

Here is a direct hit on the error message from your alert.log:
APPS Packages Become Invalid With ORA-600 [pfri.c: pfri8: plio mismatch ] (Doc ID 1323867.1)

1323867.1 - APPS Packages Become Invalid With ORA-600 [pfri.c: pfri8: plio mismatch ]

Bug 9691456 - ORA-600 [pfri.c: pfri8: plio mismatch] with Editions

Bug 9691456  ORA-600 [pfri.c: pfri8: plio mismatch] with Editions
 This note gives a brief overview of bug 9691456.
 The content was last updated on: 18-NOV-2010
 Click here for details of each of the sections below.
Affects:

    Product (Component)	Oracle Server (Rdbms)
    Range of versions believed to be affected 	Versions BELOW 12.1
    Versions confirmed as being affected 	

        11.2.0.1 

    Platforms affected	Generic (all / most platforms affected)

Fixed:

    This issue is fixed in	

        12.1 (Future Release)
        11.2.0.2 (Server Patch Set) 

Description

    With Editions enabled some invalidation operation do not properly invalidate 
    stubs which can lead to problems such as ORA-600 [pfri.c: pfri8: plio mismatch].

 

解决方法是打到11.2.0.2 最新的patch set update.

沪ICP备14014813号-2

沪公网安备 31010802001379号