Error: ORA-00600: internal error code, arguments: [kqd-objerror$], [U], [0], [88], [BIN$19274/1NYszgRAAUT/pFYw==$0], [],
When: While purging recyclebin for a user or purging dba_recyclebin
SQL> purge recyclebin;
purge recyclebin
*
ERROR at line 1:
ORA-00600: internal error code, arguments: [kqd-objerror$], [U], [0], [88], [BIN$19274/1NYszgRAAUT/pFYw==$0], [], [], [], [], [], [], []
Analysis:
Very much surprised by error like this, only clue was the hexa binary object_name specified in the error
As like any other DBA have started searching for more details of the object…
SQL> select OWNER,OBJECT_NAME,ORIGINAL_NAME,OPERATION,BASE_OBJECT,PURGE_OBJECT ,CAN_PURGE from dba_recyclebin where OBJECT_NAME like '%1NYszgRAAUT%';
OWNER OBJECT_NAME ORIGINAL_NAM OPERATION BASE_OBJECT PURGE_OBJECT CAN
-------- ---------------------------- --------------------- --------------------- ---------------------- ------------ ---
CE3 BIN$19274/1NYszgRAAUT/pFYw==$0 D_SR_NODE DROP 151579 151856 NO
Got few details like Original object name & object id’s of the original as well as hexa binary object which was not recoverable although
An attempt was made to drop the object (type was trigger in my case)
SQL> drop trigger "BIN$19274/1NYszgRAAUT/pFYw==$0";
drop trigger "BIN$19274/1NYszgRAAUT/pFYw==$0"
*
ERROR at line 1:
ORA-00603: ORACLE server session terminated by fatal error
ORA-00600: internal error code, arguments: [kqd-objerror$], [U], [0], [88], [BIN$19274/1NYszgRAAUT/pFYw==$0], [], [], [], [], [], [], []
Process ID: 25839
Session ID: 164 Serial number: 10469
Oh! Got the same error
Finally got the solution after hunting on Google!
Solution:
Insert the object id’s found from dba_recyclebin into sys.objerror$, so that object causing error can be bypassed during purge recyclebin
SQL> show user
USER is "SYS"
SQL> insert into sys.objerror$ values(151579);
1 row created.
SQL> insert into sys.objerror$ values(151856);
1 row created.
SQL> select * from dba_objects where object_id='151579';
no rows selected
SQL> select * from dba_objects where object_id='151856';
no rows selected
SQL> commit;
Commit complete.
SQL> conn CE3/test_333
Connected.
SQL> purge recyclebin;
Recyclebin purged.
SQL> conn / as sysdba
Connected.
SQL> purge dba_recyclebin;
DBA Recyclebin purged.
Thanks. It worked well. I had several hundreds of objects giving this error while clearing DBA_RECYCLEBIN. I had inserted object ids of all the records in dba_recyclebin and purge. It worked well. Excellent post.
ReplyDeleteThanks For Reply Kamal !
DeleteThank you for the post ! Helped me a lot to fix my issue on 11.2.0.3.
ReplyDeleteRegards,
Cosmin
Thanks for the solution. it worked for me. Though the issue for me was also in a trigger. What might be causing this issue?
ReplyDeleteStill I am getting the issues :(
ReplyDeleteSQL> select OWNER,OBJECT_NAME,ORIGINAL_NAME,OPERATION,BASE_OBJECT,PURGE_OBJECT ,CAN_PURGE from dba_recyclebin where OBJECT_NAME like '%BIN$71yQGVgDADzgQwqBJgKp1A%';
OWNER OBJECT_NAME ORIGINAL_NAME OPERATION BASE_OBJECT PURGE_OBJECT CAN
------------------------------ ------------------------------ -------------------------------- --------- ----------- ------------ ---
CAS BIN$71yQGVgDADzgQwqBJgKp1A==$0 AR_PH_ARC_UNDO_DT DROP 20108 30668 NO
SQL> insert into sys.objerror$ values(20108);
1 row created.
SQL> insert into sys.objerror$ values(30668);
1 row created.
SQL> commit;
Commit complete.
SQL> purge dba_recyclebin;
purge dba_recyclebin
*
ERROR at line 1:
ORA-00603: ORACLE server session terminated by fatal error
ORA-00600: internal error code, arguments: [kqd-objerror$], [U], [0], [49], [BIN$71yQGVgLADzgQwqBJgKp1A==$0], [], [], [], [], [], [], []
Process ID: 8781984
Session ID: 92 Serial number: 29
Above error has been resolved with the same steps mentioned in the article. there was multiple object in recycle bin to whose entry was required to add into sys.objerror$ . Later on it was resolved. Thanks for useful information.
ReplyDeleteSQL> purge dba_recyclebin;
purge dba_recyclebin
*
ERROR at line 1:
ORA-00603: ORACLE server session terminated by fatal error
ORA-00600: internal error code, arguments: [kqd-objerror$], [U], [0], [49], [BIN$71yQGVbBADzgQwqBJgKp1A==$0], [], [], [], [], [], [], []
Process ID: 39190750
Session ID: 12 Serial number: 13
SQL> conn / as sysdba
Connected.
SQL> select OWNER,OBJECT_NAME,ORIGINAL_NAME,OPERATION,BASE_OBJECT,PURGE_OBJECT ,CAN_PURGE from dba_recyclebin where OBJECT_NAME like '%BIN$71yQGVbBADzgQwqBJgKp1A%';
OWNER OBJECT_NAME ORIGINAL_NAME OPERATION BASE_OBJECT PURGE_OBJECT CAN
------------------------------ ------------------------------ -------------------------------- --------- ----------- ------------ ---
CAS BIN$71yQGVbBADzgQwqBJgKp1A==$0 AR_PDI_UNDO_DT DROP 20070 30672 NO
SQL> insert into sys.objerror$ values(20070);
insert into sys.objerror$ values(30672);
1 row created.
SQL> SQL>
1 row created.
SQL> commit;
Commit complete.
SQL> purge dba_recyclebin;
DBA Recyclebin purged.
SQL> exit
Thanks for the solution! I got this error while dropping an user.
ReplyDeleteThanks Ajay. Great work..
ReplyDeletesaved my day! Thanks
ReplyDeleteHi Ajay,
ReplyDeleteI am facing the same issue on 10g DB and I am trying to resolve it using above approach. But the table sys.objerror$ does not exist in 10g database.
Hope You are using sysdba account to perform this activity or you have system view permissions. Also check if all db option components are valid like utlrp ..
Delete