Re: symbolic ORA-XXXX names and classes of such
From: joel garry <joel-garry_at_home.com>
Date: Mon, 8 Jun 2009 11:04:00 -0700 (PDT)
Message-ID: <102a0f28-e064-422d-a8cb-2f568a274aff_at_j32g2000yqh.googlegroups.com>
On Jun 6, 10:43 pm, m..._at_pixar.com wrote:
> I'm adding code to my application to make it TAF-aware. TAF
> an excellent feature and I haven't had much problem getting
> the extra error checking in place.
>
> 1. Is there some place where symbolic names for the ORA-XXXXX
> codes are defined?
>
> 2. Is there some grouping or categorizing, such as "this is
> the set of all ORA errors you can get on a connect and
> that would benefit from a retry".
>
> My code currently looks as per below, and I would like to
> be able to remove a bit of the hardcoded numbers. I've built
> up these numbers by trial and error.
>
> Many TIA!
> Mark
>
> # connect to the database, and retry on fixable exceptions
> try:
> conn=cx_Oracle.connect(connstr)
> except cx_Oracle.DatabaseError,e:
> # ORA-01033: ORACLE initialization or shutdown in progress
> # ORA-12537: TNS:connection closed
> # ORA-12528: TNS:listener: all appropriate instances are blocking
> # new connections
> # ORA-12521: TNS:listener does not currently know of instance
> # requested in connect descriptor
> # ORA-12520: TNS:listener could not find available handler for
> # requested type of server
>
> if e.message.code in [1033,12537,12528,12521,12520]:
> print 'RETRYING:', e.message.message.strip()
> ...
> --
> Mark Harrison
> Pixar Animation Studios
Date: Mon, 8 Jun 2009 11:04:00 -0700 (PDT)
Message-ID: <102a0f28-e064-422d-a8cb-2f568a274aff_at_j32g2000yqh.googlegroups.com>
On Jun 6, 10:43 pm, m..._at_pixar.com wrote:
> I'm adding code to my application to make it TAF-aware. TAF
> an excellent feature and I haven't had much problem getting
> the extra error checking in place.
>
> 1. Is there some place where symbolic names for the ORA-XXXXX
> codes are defined?
>
> 2. Is there some grouping or categorizing, such as "this is
> the set of all ORA errors you can get on a connect and
> that would benefit from a retry".
>
> My code currently looks as per below, and I would like to
> be able to remove a bit of the hardcoded numbers. I've built
> up these numbers by trial and error.
>
> Many TIA!
> Mark
>
> # connect to the database, and retry on fixable exceptions
> try:
> conn=cx_Oracle.connect(connstr)
> except cx_Oracle.DatabaseError,e:
> # ORA-01033: ORACLE initialization or shutdown in progress
> # ORA-12537: TNS:connection closed
> # ORA-12528: TNS:listener: all appropriate instances are blocking
> # new connections
> # ORA-12521: TNS:listener does not currently know of instance
> # requested in connect descriptor
> # ORA-12520: TNS:listener could not find available handler for
> # requested type of server
>
> if e.message.code in [1033,12537,12528,12521,12520]:
> print 'RETRYING:', e.message.message.strip()
> ...
> --
> Mark Harrison
> Pixar Animation Studios
find $ORACLE_HOME -name *msg
You will find many more messages than you could ever possibly deal with, since Oracle has been building them up for decades. The oraus.msg is perhaps what you want to peruse, maybe something in $OH/ network/mesg. Couldn't begin to answer the second question, besides suggesting empirical research.
Metalink and some other web sites like http://www.ora-error.com/ have the generic definitions also. Metalink may have some troubleshooting type docs, search for troubleshooting taf, troubleshooting sql oracle~net, etc. There's just so many obscure things that rarely happen...
jg
-- _at_home.com is bogus. http://ultraviolet.org/blog/2009/04/01/spam-from-spaceReceived on Mon Jun 08 2009 - 13:04:00 CDT