Ora 00600 internal error code arguments kdsgrp1

ora-00600 kdsgrp1

При  select приложение падает с ошибкой ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], [].

Чтение нужно начать с ORA-600 [kdsgrp1] (Doc ID 285586.1) здесь собраны все известные баги. Так же есть статья Causes and Solutions for ora-600 [kdsgrp1] (Doc ID 1332252.1) где рассматриваются основные причины ORA-00600 kdsgrp1.

В моем случае, причина ошибки — поврежденный индекс (index corruption) — это сразу видно по файлу трассировки.

Для разрешения ситуации нужно удалить и заново пересоздать поврежденный индекс.

В alert логе для этой ошибки есть запись, которая указывает на файл трассировки

Mon Feb 20 16:57:17 2012
Errors in file d:oracleproduct10.2.0adminudumpdump_ora_6984.trc:
ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], []

В файле трассировки есть что-то типа (можно искать по «SESSION ID»)

*** 2012-02-20 16:57:17.079
*** ACTION NAME:() 2012-02-20 16:57:17.016
*** MODULE NAME:(TOAD 9.0.1.8) 2012-02-20 16:57:17.016
*** SERVICE NAME:(ud) 2012-02-20 16:57:17.016
*** SESSION ID:(131.893) 2012-02-20 16:57:17.016
row 0141c319.1e continuation at
file# 5 block# 115481 slot 31 not found
**************************************************
KDSTABN_GET: 0 ..... ntab: 1
curSlot: 31 ..... nrows: 32
**************************************************
*** 2012-02-20 16:57:17.094
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], []
Current SQL statement for this session:
SELECT
ROWID, ID, RE_ID, TYPE_CODE,
DEPT_ID, DIF_PURPOSE
FROM REG_RT.RE_PURPOSES Tbl
Where
re_id = 81653029
check trace file d:oracleproduct10.2.0db_1rdbmstraceud_ora_0.trc for preloading .sym file messages
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
_ksedst+38 CALLrel _ksedst1+0 0 1
_ksedmp+898 CALLrel _ksedst+0 0
_ksfdmp+14 CALLrel _ksedmp+0 3
_kgerinv+140 CALLreg 00000000 E66A3E0 3
_kgeasnmierr+19 CALLrel _kgerinv+0 E66A3E0 DA80020 3A29FF0 0
EEECD08
_kdsgrp+733 CALLrel _kgeasnmierr+0 E66A3E0 DA80020 3A29FF0 0
_kdsfbr+174 CALLrel _kdsgrp+0 8977480 0 8977480
_qertbFetchByRowID+ CALLrel _kdsfbr+0 8977480 4CC7610 0 1 0 0
840 8977428 0
_kpofrws+235 CALL??? 00000000 271BD4CC 127F4B4 EEED1A4 1F4
_opifch2+7757 CALLrel _kpofrws+0 5355CD4 271BEAD8 127F4B4
EEED1A4 1F4
_opifch+51 CALLrel _opifch2+0 89 5 EEED2C8
_opiodr+1286 CALLreg 00000000 5 2 EEEF68C
_ttcpip+853 CALLreg 00000000 5 2 EEEF68C 2
_opitsk+1107 CALL??? 00000000
_opiino+1087 CALLrel _opitsk+0 0 0
_opiodr+1286 CALLreg 00000000 3C 4 EEEFC28
_opidrv+819 CALLrel _opiodr+0 3C 4 EEEFC28 0
_sou2o+45 CALLrel _opidrv+0 3C 4 EEEFC28
_opimai_real+112 CALLrel _sou2o+0 EEEFC1C 3C 4 EEEFC28
_opimai+92 CALLrel _opimai_real+0 2 EEEFC54
_OracleThreadStart@ CALLrel _opimai+0
4+726
7C824826 CALLreg 00000000

В выделеном тексте видно что поврежден блок 115481 файла 5. С помощью запроса выявляем поврежденный индекс и пересоздаем его.

SELECT tablespace_name, segment_type, owner, segment_name
FROM dba_extents
WHERE file_id = <file_id>
and <block_id> between block_id AND block_id + blocks - 1;

SELECT tablespace_name, segment_type, owner, segment_name
FROM dba_extents
WHERE file_id = 5
and 115481 between block_id AND block_id + blocks - 1;

Запись ORA-00600 kdsgrp1 впервые появилась Dmitry Bobrovsky Blog

— Author: Dmitry Bobrovsky Google

One of my clients has a database job that runs weekly in the early hours of the morning. I have a cron job configured on their server to check the database alert log for errors on a regular basis and email me with any that it finds.

This morning when I checked my emails there was one from that job reporting the following:

Errors in file /u01/app/oracle/10.2/rdbms/log/<SID>_ora_194248.trc:

ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], [] Wed May 27 03:17:28 2015

ORA-00600 errors are internal Oracle errors and on the Oracle support site they have a tool where you can enter the arguments for the error (in this case kdsgrp1) and see if there is anything on the Oracle support site about it.

I duly did this and it returned a whole range of known bugs and issues. The one that looked likely to be most relevant for my situation was one that said the “error is thrown when a fetch operation fails to find the expected row.”

It also said this could be caused by any of the following:

  • Lost writes
  • Parallel DML issues
  • Index corruption
  • Data block corruption
  • Consistent read [CR] issues
  • Buffer cache corruption

As the client had recently had a disk failure which resulted in us having to recreate some indexes, I immediately suspected index corruption to be the cause.

The first thing to do in this situation is to examine the trace file named in the alert log and determine the SQL that caused the ORA-00600 [kdsgrp1] error.

A good way to do this is to open the trace file and search for the text “Plan Table”. This will show you the Explain Plan for the SQL that was being executed when the error occurred.

In this case, it was a select statement that was doing a “table access by index rowid”. Armed with the index name from this Explain Plan, I could then check the index for corruption.

The way to check for index corruption is to use the

analyze index <index_name> validate structure;

command which I ran using sqlplus and I immediately received the ORA-00600 [kdsgrp1] error, confirming a problem with the index.

I used PL/SQL Developer to generate the SQL statement to create the offending index. Then I dropped the index and recreated it using this SQL statement I’d just generated. I then re-analyzed the index, this time with no problems.

Содержание

  1. Ora 00600 internal error code arguments kdsgrp1
  2. Database Startup Fails with ORA-00600: internal error code, arguments: [kdsgrp1] (Doc ID 2237293.1)
  3. Applies to:
  4. Symptoms
  5. Changes
  6. Cause
  7. To view full details, sign in with your My Oracle Support account.
  8. Don’t have a My Oracle Support account? Click to get started!
  9. Detailed Steps for Troubleshooting ORA-00600 [kdsgrp1] (Doc ID 1492150.1)
  10. Applies to:
  11. Purpose
  12. Troubleshooting Steps
  13. To view full details, sign in with your My Oracle Support account.
  14. Don’t have a My Oracle Support account? Click to get started!
  15. Spatial Query Fails With ORA-00600 [kdsgrp1] (Doc ID 2057125.1)
  16. Applies to:
  17. Symptoms
  18. Changes
  19. Cause
  20. To view full details, sign in with your My Oracle Support account.
  21. Don’t have a My Oracle Support account? Click to get started!
  22. ORA-00600 [kdsgrp1] In Database Alert Log
  23. ORA-00600 [kdsgrp1]

Ora 00600 internal error code arguments kdsgrp1

При select приложение падает с ошибкой ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], [].

Чтение нужно начать с ORA-600 [kdsgrp1] (Doc ID 285586.1) здесь собраны все известные баги. Так же есть статья Causes and Solutions for ora-600 [kdsgrp1] (Doc ID 1332252.1) где рассматриваются основные причины ORA-00600 kdsgrp1.

В моем случае, причина ошибки — поврежденный индекс (index corruption) — это сразу видно по файлу трассировки.

Для разрешения ситуации нужно удалить и заново пересоздать поврежденный индекс.

В alert логе для этой ошибки есть запись, которая указывает на файл трассировки

Mon Feb 20 16:57:17 2012
Errors in file d:oracleproduct10.2.0adminudumpdump_ora_6984.trc:
ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], []

В файле трассировки есть что-то типа (можно искать по «SESSION ID»)

*** 2012-02-20 16:57:17.079
*** ACTION NAME:() 2012-02-20 16:57:17.016
*** MODULE NAME:(TOAD 9.0.1.8) 2012-02-20 16:57:17.016
*** SERVICE NAME:(ud) 2012-02-20 16:57:17.016
*** SESSION ID:(131.893) 2012-02-20 16:57:17.016
row 0141c319.1e continuation at
file# 5 block# 115481 slot 31 not found
**************************************************
KDSTABN_GET: 0 . ntab: 1
curSlot: 31 . nrows: 32
**************************************************
*** 2012-02-20 16:57:17.094
ksedmp: internal or fatal error
ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], []
Current SQL statement for this session:
SELECT
ROWID, ID, RE_ID, TYPE_CODE,
DEPT_ID, DIF_PURPOSE
FROM REG_RT.RE_PURPOSES Tbl
Where
re_id = 81653029
check trace file d:oracleproduct10.2.0db_1rdbmstraceud_ora_0.trc for preloading .sym file messages
—— Call Stack Trace ——
calling call entry argument values in hex
location type point (? means dubious value)
——————— ——— ——————— —————————-
_ksedst+38 CALLrel _ksedst1+0 0 1
_ksedmp+898 CALLrel _ksedst+0 0
_ksfdmp+14 CALLrel _ksedmp+0 3
_kgerinv+140 CALLreg 00000000 E66A3E0 3
_kgeasnmierr+19 CALLrel _kgerinv+0 E66A3E0 DA80020 3A29FF0 0
EEECD08
_kdsgrp+733 CALLrel _kgeasnmierr+0 E66A3E0 DA80020 3A29FF0 0
_kdsfbr+174 CALLrel _kdsgrp+0 8977480 0 8977480
_qertbFetchByRowID+ CALLrel _kdsfbr+0 8977480 4CC7610 0 1 0 0
840 8977428 0
_kpofrws+235 CALL. 00000000 271BD4CC 127F4B4 EEED1A4 1F4
_opifch2+7757 CALLrel _kpofrws+0 5355CD4 271BEAD8 127F4B4
EEED1A4 1F4
_opifch+51 CALLrel _opifch2+0 89 5 EEED2C8
_opiodr+1286 CALLreg 00000000 5 2 EEEF68C
_ttcpip+853 CALLreg 00000000 5 2 EEEF68C 2
_opitsk+1107 CALL. 00000000
_opiino+1087 CALLrel _opitsk+0 0 0
_opiodr+1286 CALLreg 00000000 3C 4 EEEFC28
_opidrv+819 CALLrel _opiodr+0 3C 4 EEEFC28 0
_sou2o+45 CALLrel _opidrv+0 3C 4 EEEFC28
_opimai_real+112 CALLrel _sou2o+0 EEEFC1C 3C 4 EEEFC28
_opimai+92 CALLrel _opimai_real+0 2 EEEFC54
_OracleThreadStart@ CALLrel _opimai+0
4+726
7C824826 CALLreg 00000000

В выделеном тексте видно что поврежден блок 115481 файла 5. С помощью запроса выявляем поврежденный индекс и пересоздаем его.

Источник

Database Startup Fails with ORA-00600: internal error code, arguments: [kdsgrp1] (Doc ID 2237293.1)

Last updated on JANUARY 04, 2021

Applies to:

Symptoms

Database startup Fails with ORA-00600: internal error code, arguments: [kdsgrp1] and ORA-1092

Total System Global Area 1068937216 bytes
Fixed Size 2235208 bytes
Variable Size 784336056 bytes
Database Buffers 276824064 bytes
Redo Buffers 5541888 bytes
Database mounted.
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [],
[], [], [], [], []
Process ID: 1747472
Session ID: 265 Serial number: 3

Alert log shows the below information

Call stack :-ktgRunStmt1В ktsmg_summary_turВ ktsmg_summary_undoinfoВ ktusmout_online_ut В ktusmiut_init_ut

Changes

Cause

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

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.

Oracle offers a comprehensive and fully integrated stack of cloud applications and platform services. For more information about Oracle (NYSE:ORCL), visit oracle.com. пїЅ Oracle | Contact and Chat | Support | Communities | Connect with us | | | | Legal Notices | Terms of Use

Источник

Detailed Steps for Troubleshooting ORA-00600 [kdsgrp1] (Doc ID 1492150.1)

Last updated on JANUARY 30, 2022

Applies to:

Purpose

This document provides detailed steps for troubleshooting the ORA-00600 [kdsgrp1] internal error.It contains information from other documents including the documents shown in the references section.

Instructions for the Reader

First, please review Document 1332252.1 — Causes and Solutions for ora-00600 [kdsgrp1]. It is an excellent document which explains the error and possible causes/solutions for this particular error.

Troubleshooting Steps

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

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.

Oracle offers a comprehensive and fully integrated stack of cloud applications and platform services. For more information about Oracle (NYSE:ORCL), visit oracle.com. пїЅ Oracle | Contact and Chat | Support | Communities | Connect with us | | | | Legal Notices | Terms of Use

Источник

Spatial Query Fails With ORA-00600 [kdsgrp1] (Doc ID 2057125.1)

Last updated on FEBRUARY 12, 2019

Applies to:

Symptoms

Database reporting the following error(s) in the alert.log:

The internal error is raised for a Spatial query:

and the call stack trace is rather generic for this ORA-600:

Checking for TABLE/INDEX inconsistency :-
В
analyze table validate structure cascade;
В
table is analyzed successfully.

Changes

Cause

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

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.

Oracle offers a comprehensive and fully integrated stack of cloud applications and platform services. For more information about Oracle (NYSE:ORCL), visit oracle.com. пїЅ Oracle | Contact and Chat | Support | Communities | Connect with us | | | | Legal Notices | Terms of Use

Источник

ORA-00600 [kdsgrp1] In Database Alert Log

ORA-00600 [kdsgrp1]

One of my clients has a database job that runs weekly in the early hours of the morning. I have a cron job configured on their server to check the database alert log for errors on a regular basis and email me with any that it finds.

This morning when I checked my emails there was one from that job reporting the following:

Errors in file /u01/app/oracle/10.2/rdbms/log/ _ora_194248.trc:

ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [], [] Wed May 27 03:17:28 2015

ORA-00600 errors are internal Oracle errors and on the Oracle support site they have a tool where you can enter the arguments for the error (in this case kdsgrp1) and see if there is anything on the Oracle support site about it.

I duly did this and it returned a whole range of known bugs and issues. The one that looked likely to be most relevant for my situation was one that said the “error is thrown when a fetch operation fails to find the expected row.”

It also said this could be caused by any of the following:

  • Lost writes
  • Parallel DML issues
  • Index corruption
  • Data block corruption
  • Consistent read [CR] issues
  • Buffer cache corruption

As the client had recently had a disk failure which resulted in us having to recreate some indexes, I immediately suspected index corruption to be the cause.

The first thing to do in this situation is to examine the trace file named in the alert log and determine the SQL that caused the ORA-00600 [kdsgrp1] error.

A good way to do this is to open the trace file and search for the text “Plan Table”. This will show you the Explain Plan for the SQL that was being executed when the error occurred.

In this case, it was a select statement that was doing a “table access by index rowid”. Armed with the index name from this Explain Plan, I could then check the index for corruption.

The way to check for index corruption is to use the

analyze index validate structure;

command which I ran using sqlplus and I immediately received the ORA-00600 [kdsgrp1] error, confirming a problem with the index.

I used PL/SQL Developer to generate the SQL statement to create the offending index. Then I dropped the index and recreated it using this SQL statement I’d just generated. I then re-analyzed the index, this time with no problems.

Источник

Runtime Errors         DBSQL_SQL_ERROR
Exception              CX_SY_OPEN_SQL_DB
Date and Time          16.01.2019 10:43:16

Short text
There is no help text for this runtime error
Either the text was inadvertently deleted or the release of
the kernel differs from that of the database.
Refer to the Note system for further information on
this runtime error.

Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class ‘CX_SY_OPEN_SQL_DB’, was not caught
in
procedure “MA_DTEL_TABL_MCID_SEL” “(FORM)”, nor was it propagated by a RAISING
clause.
Since the caller of the procedure could not have anticipated that the
exception would occur, the current program is terminated.
The reason for the exception is:
Description not available
Parameters:
P1 “DD03L”
P2 “SQL code: 600”
P3 “SQL message: ORA-00600: internal error code, arguments: [kdsgrp1], [], [],
[], [], [], [], [], [], [], [], []”
P4 “SQL dbsl rc: 99″
P5 ” ”
P6 ” ”
P7 ” ”
P8 ” ”
P9 ” ”

This error normally occur  because of the INDEX or table structure is in consistent mode.
Analyze the index structure and tables.
If index structure is failed in analyze , drop the index and recreate the index.

please ensure it is shadow instance or Default instance.

Step:0

SQL> select INDEX_NAME from dba_indexes where table_name=’DD03L~’;
INDEX_NAME
——————————————————————————–
DD03L^0
DD03L^7
DD03L^6
DD03L^2
DD03L^3
DD03L^4
DD03L^5
DD03L^1

SQL> ANALYZE INDEX sapsr3.”DD03L^1″ VALIDATE STRUCTURE ONLINE;
Index analyzed.

ANALYZE INDEX sapsr3.”DD03L^1″ VALIDATE STRUCTURE ONLINE
*
ERROR at line 1:
ORA-00600: internal error code, arguments: [kdsgrp1], [], [], [], [], [], [],
[], [], [], [], []

Step:1
SQL> set pagesize 0

SQL> set long 90000

SQL> SELECT DBMS_METADATA.GET_DDL(‘INDEX’,’DD03L^1′,’SAPSR3′) from dual;

 CREATE  INDEX “SAPSR3”.”DD03L^1″ ON “SAPSR3″.”DD03L~” (“TABNAME”, “AS4LOCAL”, “POSITION”, “AS4VERS”)
PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 299630592 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE “PSAPSR3740”;

Step:2

SQL> DROP INDEX “SAPSR3”.”DD03L^1″;

     Index dropped
Step:3

SQL> CREATE  INDEX “SAPSR3”.”DD03L^1″ ON “SAPSR3″.”DD03L~” (“TABNAME”, “AS4LOCAL”, “POSITION”, “AS4VERS”)
PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 299630592 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE “PSAPSR3740”;

  Index created.

Step:4

SQL> ANALYZE INDEX sapsr3.”DD03L^1″ VALIDATE STRUCTURE ONLINE;
Index analyzed.

Ошибка ORA-0600 является внутренним кодом ошибки для программных исключений Oracle. Её возникновение указывает на то, что процесс столкнулся на низком уровне с неожиданным условием.

Ошибка ORA-0600 включает список аргументов в квадратных скобках:

ORA-00600 "internal error code, arguments: [%a], [%b], [%c], [%d], [%e]"

Первым аргументом является внутренний номер сообщения или символьная строка.  Этот аргумент и номер версии базы данных является первостепенным в идентификации первопричины и потенциального воздействия на базу данных. Остальные аргументы используются, что бы предоставить дополнительную информацию (например, значения внутренних переменных и т.д.).

В зависимости от вида первого аргумента, в Oracle имеются два типа ошибок ORA-0600:

  • первый аргумент является числом, которое отражает исходный компонент или слой, в котором происходит ошибка.
  • первый аргумент является мнемоникой, которая указывает на исходный модуль, где произошла ошибка. Этот  тип внутренней ошибки более предпочтителен в настоящее время.

Категории ошибок ORA-0600 ранжированные по номеру

В следующей таблице приведена информация относительно внутренних числовых кодов ошибок ORA-0600, используемых в Oracle.

Читать далее…

Категории ошибок ORA-0600 ранжированные по мнемонике

Следующая таблица детализирует возможные мнемоники ошибок ORA-0600.

Читать далее…

Справочник ошибок ORA-0600

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

Последствия:

Сбой процесса, возможный сбой экземпляра.

Версия:

от 6.0 до 9.2

Причины возникновения:

Попытка освободить state object, хотя он уже находиться в свободных списках. Нарушение целостности в памяти SGA или из-за bug в плохом управлении state objects.

Действия:

Проанализировать дамп PMON, установить заплатки на bug.

ORA-00600: internal error code, arguments: [4193], [a], [b]

Аргументы:

[a] – Номер изменения (SCN) записи в серменте отката (Undo), [b] SCN записи в журнале повторного выполнения (Redo)

Последствия:

Сбой процесса, возможное повреждение сегмента отката, невозможность продолжения наката журналов на STANDBY.

Версия:

от 6.0 до 10.1

Источник:

KERNEL TRANSACTION UNDO

Причины возникновения:

Было обнаружено несоответствие между журнальной записью и записью в сегменте отката.

Действия:

Перейти на новую версию Oracle (10.2.0.5, 11.2.0.1); Восстановить экземпляр из резервной копии.

ORA-00600: internal error code, arguments: [12333], [a], [b],[c],[d]

Последствия:

Отказ процесса. Физического искажения нет.

Версия:

от 6.0 до 9.2

Источник:

USER/ORACLE INTERFACE LAYER

Причины возникновения:

В результате сетевой ошибки получены плохие данные, приложение клиента послало неправильные данные, данные в сетевом буфере были записаны поверх, всевозможные bug (столбцы LONG).

Действия:

Проверить сетевое соединение и настройки NLS, заменить версию клиента Net на более новую.

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

Последствия:

Физического искажения нет.

Версия:

от 8.0 до 10.2

Причины возникновения:

Возникает при удалении строк из таблицы, в случаях когда запись уже удалена. Такое обычно происходит если в таблице есть внешний ключ на столбец в этой же таблице. По своей сути не является полноценной ошибкой.

Действия:

Переделать внешний ключ.

ORA-00600: internal error code, arguments: [15419], [a]

Последствия:

Отказ процесса. Физического искажения нет.

Версия:

от 7.0 до 10.1

Источник:

Kernel Kompilation pl/sql Compiler

Причины возникновения:

Всевозможные bug. Для большей информации смотреть дополнительные ошибки в trc файле. Bug: 2829071, 2588469, 2437995

Действия:

Установить заплатки на bug. Если не помогает, модифицируйте PL/SQL код.

ORA-00600: internal error code, arguments: [15735], [a], [b]

Аргумент:

[a] — значение parallel_execution_message_size в котором нуждается запрос, [b] — текущее значение parallel_execution_message_size

Последствия:

Ошибка с записью в trace файл. Физического искажения нет.

Версия:

от 10.1 до 10.2

Причины возникновения:

BUG:5462624.

Действия:

Открыть trc файл ошибки. Найти sql оператор. Для таблиц этого оператора выполнить запрос select table_name, degree from dba_tables where table_name = ». Выбрать таблицы у которых degree ‘1’. Выполнить для каждой таблицы команду alter table noparallel. В качестве второго способа можно порекомендовать увеличить значение параметра parallel_execution_message_size.

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

Последствия:

Сбой процесса, повреждения данных нет.

Версия:

от 8.0 до 10.1

Источник:

Kernel Generic Library cache Subordinate set/cache manager

Причины возникновения:

Была произведена попытка получить подчиненный элемент, но при поиске, куча памяти для данного элемента не была закреплена.

Действия:

Установить заплатки на bug.

ORA-00600: internal error code, arguments: [17090],[a], [b],[c],[d]

Последствия:

Отказ процесса. Физического искажения нет.

Версия:

от 7.0 до 8.1

Источник:

GENERIC CODE LAYER

Причины возникновения:

Всевозможные bug.

Действия:

Уничтожьте сеанс и связанный с ним процесс.

ORA-00600: internal error code, arguments: [17271], [instantiation space leak]

Последствия:

Сбой процесса.  Повреждения данных нет.

Версия:

до 10.2.0.5

Источник:

Kernel Generic Instantiation manager

Причины возникновения:

Исключение возникает при попытке Oracle деинстанцировать (уничтожить экземпляр) разделяемый объект (курсор) во время выхода из сеанса. В этот момент, Oracle проходит связанный список разделяемых объектов для деинстанцирования,  и находит, что объект был помечен как не разделяемый. Этого не должно быть,  поэтому возникает исключение. Может проявляться при работе с распределёнными базами данных.

Действия:

Игнорировать ошибку. Если ошибка повторяется, то идентифицировать курсор в trace файле и переделать, или поставить последний патч Oracle закрывающий баги.

ORA-00600: internal error code, arguments: [25012], [a], [b]

Аргумент:

[a] — номер табличного пространства, [b] — относительный номер файла БД

Последствия:

Возможно физическое искажение.

Версия:

от 8.0 до 10.1

Источник:

KERNEL FILE MANAGEMENT TABLESPACE COMPONENT

Причины возникновения:

Всевозможные bug ( 4305391, 3915343, 3900237, 3771508, 3751874, 3430832, 3258674, 3150268, 3070856, 2531519, 2526334, 2287815, 2214167, 2212389, 2189615, 2184731, 1968815, 1949273, 1872985).

Действия:

Установить заплатки на bug.

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

Последствия:

Повреждение данных.

Версия:

До 10.2.0.5

Причины возникновения:

Ошибка возникает если в объекте (таблице) присутствуют логически повреждённые блоки.  Выполнение команд (TRUNCATE, INSERT и т.д.) применительно к  объекту приводит к этой ошибке.

Действия:

Пересоздание объекта.

ORA-00600: internal error code, arguments: [pfri.c: pfri8: plio mismatch ]

Причины возникновения:

Несоответствие создания экземпляра PL/SQL объекта. Вероятнее всего возникает из-за инвалидации PL/SQL объекта  (bug 9691456, зафиксирован в 11.2.0.2). Проявлялась в триггере на версии 10.2.0.5.

Действия:

Приведение PL/SQL объекта в нормальный статус.

Fix ORA-00600 Internal Error Code

Oracle database is the most popular database among the database industry because of its accuracy and performance. It is a Relational database management system (RDBMS) and capable to store and manage lots of new entries in a sufficient manner and why so it is one of popular database.

The majority of getting errors related to Oracle database increases if you do not have enough knowledge of Oracle. Yes, it is a fact and due to having less knowledge of using Oracle database, users get different errors messages and one of them is the ora-00600 internal error code.

One more issue with this error is that it can normally generate along with arguments encloses in a square bracket, and here occurs the critical situation because the meaning of these enclosed arguments alters with the version of the database. It is very difficult for a database administrator to verify the reason for the database error. This error also gets more difficult when more than one ORA-00600 error occurs because due to this the generated trace files and log files become large in number.

If you are the one who got this error then do not worry, you have come to the right place. I am saying so because here you will get to know how to fix ora-00600 internal error code.

Why ORA-00600 Error Occurs?

There are several causes due to which ORA_00600 internal error code occurs. It is a generic internal error number to execute Oracle program. This error indicates that the process has some unexpected conditions. The first argument is internal message number and the other arguments are several names, character strings and numbers. However, the number may change the meaning of different Oracle versions. Here are some of the reasons of getting this error:

#1: File Corruption: When an Oracle supported file has been corrupted then you may get ora-00600 internal error code.

#2: Timeouts: While connecting with the database the timeout occurred or the query runs for a long time and timeout occurs then this internal error code takes place.

#3: Failed Data Checks In the Memory: Due to the failed data checks in the memory, ora-00600 internal error code occurs.

#4: Hardware/Memory/IO: When the hardware is incompatible or the memory is full in Oracle version and you still work on it may cause this error to take place.

#5: Incorrectly Restored Files: When the Oracle files are restored in an improper way then this error will occur.

There are several reasons for ORA-00600 error like compatibility issues to database block error. Sometimes, this kind of error remains unsolvable. However, it is quite difficult to find the root cause of this error.

Several reasons are there ways with the help of which you will be able to fix ora-00600 internal error code. Here, I have tried my best to let you know how to resolve ora-00600 internal error code. Here are some of the major solutions you should try:

Fix #1: Writes Error Message In Alert Log & Trace File

The very first option you can try to fix ora-00600 internal error code is to write error message and trace file in alert.log file. The Oracle engine will write the error in alert.log file. The trace file location will find in alert.log file.

Fix #2: Try Other Solutions Based On Error Code Examples

You may get several errors reported within the space of a few minutes that starts with the ORA-00600 error. Well, apart from fixing ora-00600 error, you can check trace files and alert logs. Another solution you can try is to find the source of the issue is important. Most of the time, you will not be able to find the source by checking the alert or trace the alert logs. Also, these errors will not give you clear information about what has happened with the server.

Here are some great examples that might help the Oracle developers or users and DBAs to restore this issue:

Example #1:

ORA-00600: internal error code, arguments: [kxtotolc_lobopt], [], [], [], [], [], [], [], [], [], [], []
00600. 00000 –  “internal error code, arguments: [%s], [%s], [%s], [%s], [%s], [%s], [%s], [%s]”

Cause of this error: This example is the generic internal error number for Oracle program exceptions. Also, this error indicates that a process has encountered an exceptional condition.

How To Fix This Issue

If you are updating or inserting the CLOB column value as null with the use of merge statement and the merge the statement table has trigger. The same null CLOB column value if you try to update or insert CLOB value in another table with the use of trigger then you will get ora-00600 internal error code. You will also notice that the session is closed automatically, you will also get this error in both Oracle 11g as well as 12c.

Below are the steps to fix this issue:

  • First of all, you have to create a table CLOB_ table(sno number, c_clob clob);
  • Next, you have to create table table test_Clob_table_stg as select * from test_Clob_table;
  • After this, you are required to create a trigger on Clob_table table and then you have to insert data in staging table test_Clob_table_stg using trigger:

CREATE OR REPLACE trigger test_Clob_table_trg AFTER INSERT ON Clob_table
FOR EACH ROW
DECLARE
BEGIN
INSERT INTO test_Clob_table_stg VALUES(:new.sno,:new.c_clob);
EXCEPTION
WHEN others THEN
NULL;
END;
/

  • You have to then run the below query.

MERGE INTO Clob_table a USING (
select 1 AS sno, null AS C_CLOB from dual) b
ON (a.sno = b.sno)
WHEN MATCHED THEN
UPDATE SET C_CLOB = b.C_CLOB
WHEN NOT MATCHED THEN
INSERT (a.sno,a.C_CLOB) VALUES (b.sno,b.C_CLOB);

Example #2:

Error Code:

ORA-00600: internal error code, arguments: [15851], [3], [3499], [2], [1], [], [], [], [], [], [], []
ORA-00600: internal error code, arguments: [15851], [3], [3499], [2], [1], [], [], [], [], [], [], []
ORA-06502: PL/SQL: numeric or value error: character string buffer too small
ORA-06512: at “SIEBEL_ODS.MS_CCM_UTILITIES”, line 2866
ORA-04088: error during execution of trigger ‘SIEBEL_ODS.MS_CCM_TI_INVESTIGATION’
00600. 00000 –  “internal error code, arguments: [%s], [%s], [%s], [%s], [%s], [%s], [%s], [%s]”

Cause of this example: This example is the generic internal error number for Oracle program exceptions. This error message indicates that a process has encountered an exceptional condition.

How To Fix This Issue:

The other function used in trigger has variable size issue because you got this error, this trigger has created on merge statement table that is sued in “_P” package. This error won’t track the error log tables until if you run all the statement outside of the package, you get error in si_application_error_log.

Example #3:

SQL Error: ORA-00600: internal error code, arguments: [13013], [5001], [158796], [30437895], [0], [30437895], [17], [], [], [], [], []

How To Fix This Issue:

You can create index on one table for improving the performance of query, on same table you are updating data in some stages.

This will work and improve the performance in local examples and customer testing examples, but users get ora-00600 internal error code in UAT after applying the patch, whenever users has done update statement stage flow. You will get the below update statement highlighted in trace file with the error message, it helped users to debug the issue and also you will get some more information in alert log for an internal error.

Query to trace file with error message:

UPDATE MS_ITC_AUDIT_V SET STATUS = ’38’, AUDIT_STATUS = ’38’ WHERE AUDIT_ID = :B1 AND INSTANCE_ID = (SELECT MAX(INSTANCE_ID) FROM MS_ITC_AUDIT_V WHERE AUDIT_ID = :B1 );

Ultimate Solution: Try Oracle File Repair Tool To Fix ORA-00600 Internal Error Code

Apart from all these solutions that are mentioned above, if you are unable to fix ora-00600 error then you can try Oracle File Repair Tool. This tool will allow you to fix this error and recover Oracle database easily. This tool has some great features that will let you know how to fix ora-00600 internal error code. I am sure that you will not get disappointed after trying this tool. All you have to do is to download and install this tool and follow the step by step instructions to fix and recover oracle database that shows ora-00600 internal error code.

Steps To Fix ORA-00600 Internal error Code

Step 1: Search the Initial screen of Stellar Phoenix Oracle Repair & Recovery with a pop-up window showing options to select or search corrupt Oracle databases on your computer.

1

Step 2: Click Scan File to initiate the scan process after selecting the oracle database. The recoverable database objects get listed in left-side pane.

2

Step 3: Click an object to see its preview.

3

Step 4: : Click Start Repair in the icon bar to start the repair process. A pop-up window is displayed which show the steps needed to perform further. Click next and continue.

4

Step 5: Give the user name, password and path of the blank database where you want to save the repaired database objects.

5

Step 6: Repairing and restoring various database objects after establishing a connection with blank oracle database.

6

Final Words

I hope after going through this blog and trying the ways to fix ora-00600 internal error code, you will be able to fix it and recover the Oracle database easily. I have tried my best to provide you the best solution I can. Hope these will not let you down in any manner. All the best to you.

Jacob Martin is a technology enthusiast having experience of more than 4 years with great interest in database administration. He is expertise in related subjects like SQL database, Access, Oracle & others. Jacob has Master of Science (M.S) degree from the University of Dallas. He loves to write and provide solutions to people on database repair. Apart from this, he also loves to visit different countries in free time.

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Ora 00600 internal error code arguments 733
  • Ora 00442 oracle database express edition xe single instance violation error
  • Ora 00257 ошибка архивации пока свободно только внутр соединение
  • Ora 00257 archiver error connect as sysdba only until resolved
  • Ora 00205 error in identifying control file check alert log for more info

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии