ORA-00600: internal error code, arguments: [13030], [20]

Hi all!
This days I faced some ORA-600 as per below in a database:

ORA-00600: internal error code, arguments: [13030], [20], [], [], [], [], [], [], [], [], []

Checking for error in Database I find it was related to a pretty complex UPDATE, as per:

adrci> show problem

ADR Home = /u01/app/oracle/diag/rdbms/proddb/PRODDB1:
*************************************************************************
PROBLEM_ID           PROBLEM_KEY                                                 LAST_INCIDENT        LASTINC_TIME                             
-------------------- ----------------------------------------------------------- -------------------- ---------------------------------------- 
[...]     
25                   ORA 600 [13030]                                             4041252              2017-03-23 11:40:52.805000 -07:00       

adrci> show incident

ADR Home = /u01/app/oracle/diag/rdbms/proddb/PRODDB1:
*************************************************************************
INCIDENT_ID          PROBLEM_KEY                                                 CREATE_TIME                              
-------------------- ----------------------------------------------------------- ----------------------------------------      
4041252              ORA 600 [13030]                                             2017-03-23 11:40:52.805000 -07:00       

adrci> show incident -mode detail -p "incident_id=4041252"

ADR Home = /u01/app/oracle/diag/rdbms/proddb/PRODDB1:
*************************************************************************

**********************************************************
INCIDENT INFO RECORD 1
**********************************************************
   INCIDENT_ID                   4041252
   STATUS                        ready
   CREATE_TIME                   2017-03-23 11:40:52.805000 -07:00
   PROBLEM_ID                    25
   CLOSE_TIME                    
   FLOOD_CONTROLLED              none
   ERROR_FACILITY                ORA
   ERROR_NUMBER                  600
   ERROR_ARG1                    13030
   ERROR_ARG2                    20
   ERROR_ARG3                    
   ERROR_ARG4                    
   ERROR_ARG5                    
   ERROR_ARG6                    
   ERROR_ARG7                    
   ERROR_ARG8                    
   ERROR_ARG9                    
   ERROR_ARG10                   
   ERROR_ARG11                   
   ERROR_ARG12                   
   SIGNALLING_COMPONENT          DML
   SIGNALLING_SUBCOMPONENT       
   SUSPECT_COMPONENT             
   SUSPECT_SUBCOMPONENT          
   ECID                          
   IMPACTS                       0
   PROBLEM_KEY                   ORA 600 [13030]
   FIRST_INCIDENT                1230677
   FIRSTINC_TIME                 2016-03-21 08:27:00.578000 -07:00
   LAST_INCIDENT                 4041252
   LASTINC_TIME                  2017-03-23 11:40:52.805000 -07:00
   IMPACT1                       0
   IMPACT2                       0
   IMPACT3                       0
   IMPACT4                       0
   KEY_NAME                      ProcId
   KEY_VALUE                     510.194
   KEY_NAME                      Client ProcId
   KEY_VALUE                     oracle@dbserver (TNS V1-V3).14177_140097497932416
   KEY_NAME                      PQ
   KEY_VALUE                     (16777298, 1490288680)
   KEY_NAME                      Service
   KEY_VALUE                     my_service
   KEY_NAME                      SID
   KEY_VALUE                     10201.34330
   KEY_NAME                      Module
   KEY_VALUE                     httpd.worker@appserver (TNS V1-V3)
   OWNER_ID                      1
   INCIDENT_FILE                 /u01/app/oracle/diag/rdbms/proddb/proddb1/incident/incdir_4041252/proddb1_ora_14177_i4041252.trc
   OWNER_ID                      1
   INCIDENT_FILE                 /u01/app/oracle/diag/rdbms/proddb/proddb1/incident/incdir_4041252/proddb1_m003_11588_i4041252_a.trc
   OWNER_ID                      1
   INCIDENT_FILE                 /u01/app/oracle/diag/rdbms/proddb/proddb1/incident/incdir_4041252/proddb1_m004_11638_i4041252_a.trc
   OWNER_ID                      1
   INCIDENT_FILE                 /u01/app/oracle/diag/rdbms/proddb/proddb1/trace/proddb1_ora_14177.trc

adrci> 
oraproddb >cat /u01/app/oracle/diag/rdbms/proddb/proddb1/incident/incdir_4041252/proddb1_ora_14177_i4041252.trc |head -80
Dump file /u01/app/oracle/diag/rdbms/proddb/proddb1/incident/incdir_4041252/proddb1_ora_14177_i4041252.trc
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, Oracle Label Security,
OLAP, Advanced Analytics and Real Application Testing options
ORACLE_HOME = /u01/app/oracle/product/12.1.0/dbhome_1
System name:	Linux
Node name:	dbserver
Release:	3.8.13-118.4.2.el7uek.x86_64
Version:	#2 SMP Tue Mar 22 20:46:48 PDT 2016
Machine:	x86_64
Instance name: proddb1
Redo thread mounted by this instance: 1
Oracle process number: 510
Unix process pid: 14177, image: oracle@dbserver


*** 2017-03-23 11:40:52.808
*** SESSION ID:(10201.34330) 2017-03-23 11:40:52.808
*** CLIENT ID:() 2017-03-23 11:40:52.808
*** SERVICE NAME:(my_service) 2017-03-23 11:40:52.808
*** MODULE NAME:(httpd.worker@appserver (TNS V1-V3)) 2017-03-23 11:40:52.808
*** CLIENT DRIVER:() 2017-03-23 11:40:52.808
*** ACTION NAME:() 2017-03-23 11:40:52.808
 
[TOC00000]
Jump to table of contents
Dump continued from file: /u01/app/oracle/diag/rdbms/proddb/proddb1/trace/proddb1_ora_14177.trc
[TOC00001]
ORA-00600: internal error code, arguments: [13030], [20], [], [], [], [], [], [], [], [], [], []

[TOC00001-END]
[TOC00002]
========= Dump for incident 4041252 (ORA 600 [13030]) ========

*** 2017-03-23 11:40:52.808
dbkedDefDump(): Starting incident default dumps (flags=0x2, level=3, mask=0x0)
[TOC00003]
----- Current SQL Statement for this session (sql_id=6bmdmwcp9fs23) -----
UPDATE MY_TABLE SET COLUMN1 = 
OWNER.GET_CALC_SOMETHING(PAR1,PAR2,PAR3), COLUMNT2 = OWNER.GET_CALC_SOMETHING_ELSE(PAR1,PAR2,PAR3,PAR4), ....
[TOC00004]
----- PL/SQL Stack -----
----- PL/SQL Call Stack -----
  object      line  object
  handle    number  name
0x6d184fbc88      1406  package body OWNER.GET_CALC_SOMETHING
0x3f5953db70       657  package body OWNER.GEN
0x40a0d0bfb8       205  package body OWNER.PKG
0x6d1e91a828        33  anonymous block
[TOC00004-END]
[TOC00003-END]

[TOC00005]
----- Call Stack Trace -----
calling              call     entry                argument values in hex      
location             type     point                (? means dubious value)     
-------------------- -------- -------------------- ----------------------------
skdstdst()+45        call     kgdsdst()            7FFD97064498 000000002
                                                   7FFD97045ED0 ? 7FFD97045FE8 ?
                                                   7FFD97063CC8 ? 000000082 ?
ksedst()+119         call     skdstdst()           7FFD97064498 000000000
                                                   000000001 7FFD97045FE8 ?
                                                   7FFD97063CC8 ? 000000082 ?
dbkedDefDump()+1119  call     ksedst()             000000000 000000000 ?
                                                   000000001 ? 7FFD97045FE8 ?
                                                   7FFD97063CC8 ? 000000082 ?
ksedmp()+261         call     dbkedDefDump()       000000003 000000002
                                                   000000001 ? 7FFD97045FE8 ?
                                                   7FFD97063CC8 ? 000000082 ?
ksfdmp()+89          call     ksedmp()             0000003EB 000000002 ?
                                                   000000001 ? 000000002
                                                   7FFD97063CC8 ? 000000082 ?
dbgexPhaseII()+1845  call     ksfdmp()             7F6AFD960CA0 0000003EB
                                                   000000001 ? 000000002 ?
                                                   7FFD97063CC8 ? 000000082 ?
dbgexProcessError()  call     dbgexPhaseII()       7F6AFD920648 7F6AFD8C9A48
+2539                                              7FFD97068EA0 000000002 ?
                                                   7FFD97063CC8 ? 000000082 ?
dbgeExecuteForError  call     dbgexProcessError()  7F6AFD920648 7F6AFD8C9A48
()+110                                             000000001 000000000
                                                   7FFD97063CC8 ? 000000082 ?

After researching a bit about, found MOS Ora-00600 [13030], [20] During Update Statement Using V$ tables (Doc ID 1400439.1), pointing to inconsistent source of data (like v$ views) or other situations in SQL like changing values in comparison columns or row to be updated does not exist.

Turns out that, investigating with development, we discovered it was using gv$session in one of the functions used. We basically had to change the SQL.

So, review your SQL if you are hitting this… 😉

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from grepOra

Subscribe now to keep reading and get access to the full archive.

Continue reading