I am facing this error, and due to this error, the whole system seems to be going down. After checking logs and all, I found out that one destination tables might be the problem.
This is the error:
MERGE INTO vacations vac
*
ERROR at line 1:
ORA-00600: internal error code, arguments: [kdtigetrow-2], [25], [40], [39],
[], [], [], [], [], [], [], []
This is the source table:
create table TEMP_VACATIONS
(
idd VARCHAR2(10),
start_date VARCHAR2(10),
end_date VARCHAR2(10),
day_count VARCHAR2(10),
vac_type VARCHAR2(10),
arrival_date DATE
)
This is the destination table:
create table VACATIONS
(
user_id NUMBER(10) not null,
start_date DATE not null,
end_date DATE not null,
days_count NUMBER(3) not null,
vacation_type INTEGER,
arrival_date VARCHAR2(20),
idd NUMBER(10)
)
alter table SPENT_VACATIONS
add constraint SPENT_VACATIONS$PK primary key (USER_ID, START_DATE)
using index
tablespace ARCV25
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 320K
next 1M
minextents 1
maxextents unlimited
);
and this is the script:
MERGE INTO vacations vac
USING temp_vacations tmpvac
ON (vac.user_id = TO_NUMBER(tmpvac.idd) AND vac.start_date = TO_DATE(tmpvac.start_date, 'dd.mm.yyyy') AND vac.end_date = TO_DATE(tmpvac.end_date, 'dd.mm.yyyy'))
WHEN NOT MATCHED THEN
INSERT (vac.user_id, vac.start_date, vac.end_date, vac.days_count, vac.vacation_type, vac.arrival_date)
VALUES (TO_NUMBER(tmpvac.idd), TO_DATE(tmpvac.start_date, 'dd.mm.yyyy'), TO_DATE(tmpvac.end_date, 'dd.mm.yyyy'), tmpvac.day_count, tmpvac.vac_type, TO_CHAR(tmpvac.arrival_date, 'dd.mm.yyyy'))
LOG ERRORS INTO stara.migration_err('File: STARA_EHR.SPOLO.TXT => merge operation => annual_vacations') REJECT LIMIT UNLIMITED;
COMMIT;
The oracle version is:
Oracle Database 11g Release 11.2.0.2.0
Is it possible that this error comes during type conversation (char => date or char => number) ?
How can I fix that internal error as well? Do I need to rollback the database to previous backup?
Thanks in advance.
ORA-00600 is Oracle's generic code for signalling unexpected internal behaviour (i.e. bugs). The standard advice is to contact Oracle Support, as by the nature of these things, they tend to be very specific to database version, platform and a whole host of other variables. There is a distinct possibility that you need a patch to fix this problem, or perhaps just an upgrade to the latest version.
Of course, if you don't have a Support contract that advice is not very useful. Unfortunately it's hard for us to be more helpful. There should be further information in the Alert Log, and there may be a trace file too. You'll probably have to ask a DBA to help you with it.
Otherwise you can try searching the internet. The first parameter indicates the specific event i.e.
[kdtigetrow-2]. I did find this article on a blog but the writer's scenario appears to be very different from your own.