Авг 242011
 

Сегодня обнаружил такую ошибку в alert log:

ORA-00600: internal error code, arguments: [18095], [0x9C96A09A8], [], [], [], [], [], []

Поиск по металинку дал номер бага: Bug 4939224.
Кратко: ошибку можно игнорировать.
Если интересна причина, прошу под кат.

Сначала дадим пару определений.

  1. Автономная транзакция

    Это "транзакция внутри транзакции", выполняемая независимо от родительской транзакции (уровень вложенности может быть любым, насколько позволяют ресурсы). Т.е. если в родительской транзакции мы сделаем rollback после того как отработает автономная, откатятся только изменения, выполненные родительской. Вот отличная статья, объясняющая "на пальцах" сущность явления.

  2. Распределённая транзакция

    Это транзакция, в теле которой обновляются данные не только в локальной базе, но и в удалённых базах (через dblink).

Что такое распределённая автономная транзакция, думаю, понятно: это вложенная транзакция, обновляющая данные локально и в удалённой БД.
Так вот, ошибка ORA-00600 [18095] возникает в случае, если при работе автономной распределённой транзакции аварийно завершается (например, происходит разрыв соединения с клиентом или убивается процесс) родительская транзакция. При этом все изменения откатываются как на локальной базе, так и на удалённой, и поводов для беспокойства у администратора нет.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">

(обязательно)

(обязательно)