Oracle: символические имена и логическая группировка для кодов ORA-XXXXX? - PullRequest
1 голос
/ 08 июня 2009

Итак, я собираюсь добавить обработку TAF (отказоустойчивость кластера) к некоторому коду базы данных, и я получаю похожие куски кода, которые выглядят так:

        try:
            ... some database code...
        except cx_Oracle.DatabaseError,e:
            # ORA-25401: can not continue fetches
            # ORA-25402: transaction must roll back
            # ORA-25408: can not safely replay call
            if e.message.code in (25401,25402,25408):
                print 'node going down, restarting transaction...'
                conn.rollback()
                continue
            else:
                raise(e)
  1. Есть ли места, где я могу взять некоторые символические названия для этих кодов?
  2. Есть ли источники логических групп кодов возврата? то есть это те, которые связаны с ошибкой транзакции из-за сбоя узла, и при повторной попытке будут перенаправлены на другой узел и успешно выполнены.

обновление: получается, что ответы - нет и нет.

Ответы [ 3 ]

1 голос
/ 01 июля 2009

вы проверяли http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28370/errors.htm? есть список предопределенных исключений, которые вы можете использовать. Кроме того, вы можете определить пользовательские исключения, которые связывают логическое имя с кодом ошибки.

Группировка ошибок AFAIK невозможна.

Надеюсь, это поможет, Ronald

0 голосов
/ 15 июля 2009

Конечно, вы можете, при установке Oracle linux / unix вы можете использовать oerr утилиту. На окнах есть несколько альтернатив ( 1 , 2 ) - не уверен, что они одинаковы -.

Ссылки:

0 голосов
/ 08 июня 2009

Для перевода кодов ошибок Oracle по одному попробуйте http://www.ora -code.com / или http://www.dba -oracle.com / oracle_news / 2004_11_10_easy_lookup_error_codes.htm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...