db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Matrigali <mikem_...@sbcglobal.net>
Subject What error action is taken when "ENVIRONMENTAL" errors are raised
Date Fri, 30 Mar 2007 19:09:46 GMT
I was trying to see if any error jumped out that may have caused the 
alter table problem found in the thread: Alter Table ADD Column throws 
column number exception

I went to SQLState.java and looked at any error that did not either have
an explicit severity set with an explicit severity association - so 
according to the documentation at the top of SQLState I eliminated the
following:

xxxxx.M
xxxxx.D
08xxx
xxxxx.C
40xxx or xxxxx.T
{2,3}xxxx, 42xxx,  07xxx  or xxxxx.S

I left the warnings which could be a problem if we raised them during
alter table after the store changes had gone to the log:
01

I was left with a set of exceptions with no explicit mapping, so my 
reading is that they default to ENVIRONMENTAL severity, but it is not
clear to me what action is taken if we raised this level.  For what I
am trying to tell do we back out the statement or not?

Here is a breakdown of the exceptions left over, anyone have any idea
if some documentation is missing about the errors or if some may need
an explicit severity setting?

Warning:
     String LANG_CONSTRAINT_DROPPED                  = "01500";
     String LANG_VIEW_DROPPED                        = "01501";
     String LANG_TRIGGER_DROPPED                     = "01502";
     String LANG_COL_NOT_NULL                        = "01503";
     String LANG_INDEX_DUPLICATE                     = "01504";
     String LANG_VALUE_TRUNCATED                     = "01505";
     String LANG_SYNONYM_UNDEFINED                   = "01522";
     String LANG_NULL_ELIMINATED_IN_SET_FUNCTION     = "01003";
     String LANG_PRIVILEGE_NOT_REVOKED               = "01006";
     String LANG_TOO_MANY_DYNAMIC_RESULTS_RETURNED   = "0100E";
     String NO_SCROLL_SENSITIVE_CURSORS              = "01J02";
     String LANG_TYPE_NOT_SERIALIZABLE               = "01J04";
     String UPGRADE_SPSRECOMPILEFAILED               = "01J05";
     String QUERY_NOT_QUALIFIED_FOR_UPDATABLE_RESULTSET = "01J06";
     String HOLDABLE_RESULT_SET_NOT_AVAILABLE        = "01J07";
     String INVALID_RESULTSET_TYPE                   = "01J08";
     String SCROLL_SENSITIVE_NOT_SUPPORTED           = "01J10";
     String UNABLE_TO_OBTAIN_MESSAGE_TEXT_FROM_SERVER  = "01J12";
     String NUMBER_OF_ROWS_TOO_LARGE_FOR_INT         = "01J13";
     String SQL_AUTHORIZATION_WITH_NO_AUTHENTICATION = "01J14";
     String CURSOR_OPERATION_CONFLICT                = "01001";

Documented as "internal" in SQLState
     String ROW_UPDATED = "rwupd";
     String ROW_DELETED = "02502";

"54" errors - not sure what severity action is taken:

     String LANG_DB2_STRING_CONSTANT_TOO_LONG       = "54002";
     String LANG_TOO_MANY_COLUMNS_IN_TABLE_OR_VIEW  = "54011";
     String LANG_TOO_MANY_ELEMENTS                  = "54004";
     String LANG_TOO_MANY_INDEX_KEY_COLS            = "54008";
     String LANG_TRIGGER_RECURSION_EXCEEDED         = "54038";
     String LANG_TOO_MANY_PARAMETERS_FOR_STORED_PROC= "54023";
     String LANG_CONCAT_STRING_OVERFLOW             = "54006";


"XML" errors - not sure what severity action is taken:
     String LANG_MISSING_XML_CLASSES                = "XML00";
     String LANG_UNEXPECTED_XML_EXCEPTION           = "XML01";

"XS" errors - not sure what severity action is taken:
     String STORE_XA_PROTOCOL_VIOLATION_SQLSTATE    = "XSAX0";
     String STORE_XA_XAER_DUPID_SQLSTATE            = "XSAX1";


"46" errors - not sure what severity action is taken:
     String SQLJ_INVALID_JAR                         = "46001";
     String SQLJ_SIGNATURE_INVALID                   = "46J01";
     String SQLJ_SIGNATURE_PARAMETER_COUNT           = "46J02";

other errors - not sure what severity action is taken:
     String COLUMN_NOT_FOUND                         = "S0022";
     String LANG_XML_QUERY_ERROR                     = "10000";
     String LANG_NO_ROW_FOUND                        = "02000";


Mime
View raw message