From bcfdbd1903d8f9c9f6bce39ec71353c737c3f116 Mon Sep 17 00:00:00 2001 From: Daniele Varrazzo Date: Mon, 15 Feb 2010 01:07:28 +0000 Subject: [PATCH] Error codes updated to include all errors between PostgreSQL 8.1 and 8.4. --- lib/errorcodes.py | 121 +++++++++++++++++++++++++++------------------- 1 file changed, 70 insertions(+), 51 deletions(-) diff --git a/lib/errorcodes.py b/lib/errorcodes.py index 2f9c7aab..30110fd4 100644 --- a/lib/errorcodes.py +++ b/lib/errorcodes.py @@ -26,9 +26,11 @@ This module contains symbolic names for all PostgreSQL error codes. # # Based on: # -# http://www.postgresql.org/docs/8.1/static/errcodes-appendix.html +# http://www.postgresql.org/docs/8.4/static/errcodes-appendix.html # +# autogenerated data: do not edit below this point. + # Error classes CLASS_SUCCESSFUL_COMPLETION = '00' CLASS_WARNING = '01' @@ -41,6 +43,7 @@ CLASS_INVALID_TRANSACTION_INITIATION = '0B' CLASS_LOCATOR_EXCEPTION = '0F' CLASS_INVALID_GRANTOR = '0L' CLASS_INVALID_ROLE_SPECIFICATION = '0P' +CLASS_CASE_NOT_FOUND = '20' CLASS_CARDINALITY_VIOLATION = '21' CLASS_DATA_EXCEPTION = '22' CLASS_INTEGRITY_CONSTRAINT_VIOLATION = '23' @@ -71,16 +74,16 @@ CLASS_PL_PGSQL_ERROR = 'P0' CLASS_INTERNAL_ERROR = 'XX' # Class 00 - Successful Completion -SUCCESSFUL_COMPLETION = '00' +SUCCESSFUL_COMPLETION = '00000' # Class 01 - Warning WARNING = '01000' -DYNAMIC_RESULT_SETS_RETURNED = '0100C' -IMPLICIT_ZERO_BIT_PADDING = '01008' NULL_VALUE_ELIMINATED_IN_SET_FUNCTION = '01003' -PRIVILEGE_NOT_GRANTED = '01007' -PRIVILEGE_NOT_REVOKED = '01006' STRING_DATA_RIGHT_TRUNCATION = '01004' +PRIVILEGE_NOT_REVOKED = '01006' +PRIVILEGE_NOT_GRANTED = '01007' +IMPLICIT_ZERO_BIT_PADDING = '01008' +DYNAMIC_RESULT_SETS_RETURNED = '0100C' DEPRECATED_FEATURE = '01P01' # Class 02 - No Data (this is also a warning class per the SQL standard) @@ -92,10 +95,10 @@ SQL_STATEMENT_NOT_YET_COMPLETE = '03000' # Class 08 - Connection Exception CONNECTION_EXCEPTION = '08000' -CONNECTION_DOES_NOT_EXIST = '08003' -CONNECTION_FAILURE = '08006' SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION = '08001' +CONNECTION_DOES_NOT_EXIST = '08003' SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTION = '08004' +CONNECTION_FAILURE = '08006' TRANSACTION_RESOLUTION_UNKNOWN = '08007' PROTOCOL_VIOLATION = '08P01' @@ -119,49 +122,61 @@ INVALID_GRANT_OPERATION = '0LP01' # Class 0P - Invalid Role Specification INVALID_ROLE_SPECIFICATION = '0P000' +# Class 20 - Case Not Found +CASE_NOT_FOUND = '20000' + # Class 21 - Cardinality Violation CARDINALITY_VIOLATION = '21000' # Class 22 - Data Exception DATA_EXCEPTION = '22000' -ARRAY_SUBSCRIPT_ERROR = '2202E' -CHARACTER_NOT_IN_REPERTOIRE = '22021' -DATETIME_FIELD_OVERFLOW = '22008' -DIVISION_BY_ZERO = '22012' +STRING_DATA_RIGHT_TRUNCATION = '22001' +NULL_VALUE_NO_INDICATOR_PARAMETER = '22002' +NUMERIC_VALUE_OUT_OF_RANGE = '22003' +NULL_VALUE_NOT_ALLOWED = '22004' ERROR_IN_ASSIGNMENT = '22005' +INVALID_DATETIME_FORMAT = '22007' +DATETIME_FIELD_OVERFLOW = '22008' +INVALID_TIME_ZONE_DISPLACEMENT_VALUE = '22009' ESCAPE_CHARACTER_CONFLICT = '2200B' -INDICATOR_OVERFLOW = '22022' +INVALID_USE_OF_ESCAPE_CHARACTER = '2200C' +INVALID_ESCAPE_OCTET = '2200D' +ZERO_LENGTH_CHARACTER_STRING = '2200F' +MOST_SPECIFIC_TYPE_MISMATCH = '2200G' +NOT_AN_XML_DOCUMENT = '2200L' +INVALID_XML_DOCUMENT = '2200M' +INVALID_XML_CONTENT = '2200N' +INVALID_XML_COMMENT = '2200S' +INVALID_XML_PROCESSING_INSTRUCTION = '2200T' +INVALID_INDICATOR_PARAMETER_VALUE = '22010' +SUBSTRING_ERROR = '22011' +DIVISION_BY_ZERO = '22012' +INVALID_ARGUMENT_FOR_NTILE_FUNCTION = '22014' INTERVAL_FIELD_OVERFLOW = '22015' +INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTION = '22016' +INVALID_CHARACTER_VALUE_FOR_CAST = '22018' +INVALID_ESCAPE_CHARACTER = '22019' +INVALID_REGULAR_EXPRESSION = '2201B' INVALID_ARGUMENT_FOR_LOGARITHM = '2201E' INVALID_ARGUMENT_FOR_POWER_FUNCTION = '2201F' INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTION = '2201G' -INVALID_CHARACTER_VALUE_FOR_CAST = '22018' -INVALID_DATETIME_FORMAT = '22007' -INVALID_ESCAPE_CHARACTER = '22019' -INVALID_ESCAPE_OCTET = '2200D' -INVALID_ESCAPE_SEQUENCE = '22025' -NONSTANDARD_USE_OF_ESCAPE_CHARACTER = '22P06' -INVALID_INDICATOR_PARAMETER_VALUE = '22010' +INVALID_ROW_COUNT_IN_LIMIT_CLAUSE = '2201W' +INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSE = '2201X' INVALID_LIMIT_VALUE = '22020' +CHARACTER_NOT_IN_REPERTOIRE = '22021' +INDICATOR_OVERFLOW = '22022' INVALID_PARAMETER_VALUE = '22023' -INVALID_REGULAR_EXPRESSION = '2201B' -INVALID_TIME_ZONE_DISPLACEMENT_VALUE = '22009' -INVALID_USE_OF_ESCAPE_CHARACTER = '2200C' -MOST_SPECIFIC_TYPE_MISMATCH = '2200G' -NULL_VALUE_NOT_ALLOWED = '22004' -NULL_VALUE_NO_INDICATOR_PARAMETER = '22002' -NUMERIC_VALUE_OUT_OF_RANGE = '22003' -STRING_DATA_LENGTH_MISMATCH = '22026' -STRING_DATA_RIGHT_TRUNCATION = '22001' -SUBSTRING_ERROR = '22011' -TRIM_ERROR = '22027' UNTERMINATED_C_STRING = '22024' -ZERO_LENGTH_CHARACTER_STRING = '2200F' +INVALID_ESCAPE_SEQUENCE = '22025' +STRING_DATA_LENGTH_MISMATCH = '22026' +TRIM_ERROR = '22027' +ARRAY_SUBSCRIPT_ERROR = '2202E' FLOATING_POINT_EXCEPTION = '22P01' INVALID_TEXT_REPRESENTATION = '22P02' INVALID_BINARY_REPRESENTATION = '22P03' BAD_COPY_FILE_FORMAT = '22P04' UNTRANSLATABLE_CHARACTER = '22P05' +NONSTANDARD_USE_OF_ESCAPE_CHARACTER = '22P06' # Class 23 - Integrity Constraint Violation INTEGRITY_CONSTRAINT_VIOLATION = '23000' @@ -178,12 +193,12 @@ INVALID_CURSOR_STATE = '24000' INVALID_TRANSACTION_STATE = '25000' ACTIVE_SQL_TRANSACTION = '25001' BRANCH_TRANSACTION_ALREADY_ACTIVE = '25002' -HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVEL = '25008' INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTION = '25003' INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTION = '25004' NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTION = '25005' READ_ONLY_SQL_TRANSACTION = '25006' SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTED = '25007' +HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVEL = '25008' NO_ACTIVE_SQL_TRANSACTION = '25P01' IN_FAILED_SQL_TRANSACTION = '25P02' @@ -205,10 +220,10 @@ INVALID_TRANSACTION_TERMINATION = '2D000' # Class 2F - SQL Routine Exception SQL_ROUTINE_EXCEPTION = '2F000' -FUNCTION_EXECUTED_NO_RETURN_STATEMENT = '2F005' MODIFYING_SQL_DATA_NOT_PERMITTED = '2F002' PROHIBITED_SQL_STATEMENT_ATTEMPTED = '2F003' READING_SQL_DATA_NOT_PERMITTED = '2F004' +FUNCTION_EXECUTED_NO_RETURN_STATEMENT = '2F005' # Class 34 - Invalid Cursor Name INVALID_CURSOR_NAME = '34000' @@ -239,44 +254,43 @@ INVALID_SCHEMA_NAME = '3F000' # Class 40 - Transaction Rollback TRANSACTION_ROLLBACK = '40000' -TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATION = '40002' SERIALIZATION_FAILURE = '40001' +TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATION = '40002' STATEMENT_COMPLETION_UNKNOWN = '40003' DEADLOCK_DETECTED = '40P01' # Class 42 - Syntax Error or Access Rule Violation SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION = '42000' -SYNTAX_ERROR = '42601' INSUFFICIENT_PRIVILEGE = '42501' -CANNOT_COERCE = '42846' -GROUPING_ERROR = '42803' -INVALID_FOREIGN_KEY = '42830' +SYNTAX_ERROR = '42601' INVALID_NAME = '42602' +INVALID_COLUMN_DEFINITION = '42611' NAME_TOO_LONG = '42622' -RESERVED_NAME = '42939' -DATATYPE_MISMATCH = '42804' -INDETERMINATE_DATATYPE = '42P18' -WRONG_OBJECT_TYPE = '42809' +DUPLICATE_COLUMN = '42701' +AMBIGUOUS_COLUMN = '42702' UNDEFINED_COLUMN = '42703' +UNDEFINED_OBJECT = '42704' +DUPLICATE_OBJECT = '42710' +DUPLICATE_ALIAS = '42712' +DUPLICATE_FUNCTION = '42723' +AMBIGUOUS_FUNCTION = '42725' +GROUPING_ERROR = '42803' +DATATYPE_MISMATCH = '42804' +WRONG_OBJECT_TYPE = '42809' +INVALID_FOREIGN_KEY = '42830' +CANNOT_COERCE = '42846' UNDEFINED_FUNCTION = '42883' +RESERVED_NAME = '42939' UNDEFINED_TABLE = '42P01' UNDEFINED_PARAMETER = '42P02' -UNDEFINED_OBJECT = '42704' -DUPLICATE_COLUMN = '42701' DUPLICATE_CURSOR = '42P03' DUPLICATE_DATABASE = '42P04' -DUPLICATE_FUNCTION = '42723' DUPLICATE_PREPARED_STATEMENT = '42P05' DUPLICATE_SCHEMA = '42P06' DUPLICATE_TABLE = '42P07' -DUPLICATE_ALIAS = '42712' -DUPLICATE_OBJECT = '42710' -AMBIGUOUS_COLUMN = '42702' -AMBIGUOUS_FUNCTION = '42725' AMBIGUOUS_PARAMETER = '42P08' AMBIGUOUS_ALIAS = '42P09' INVALID_COLUMN_REFERENCE = '42P10' -INVALID_COLUMN_DEFINITION = '42611' INVALID_CURSOR_DEFINITION = '42P11' INVALID_DATABASE_DEFINITION = '42P12' INVALID_FUNCTION_DEFINITION = '42P13' @@ -284,6 +298,9 @@ INVALID_PREPARED_STATEMENT_DEFINITION = '42P14' INVALID_SCHEMA_DEFINITION = '42P15' INVALID_TABLE_DEFINITION = '42P16' INVALID_OBJECT_DEFINITION = '42P17' +INDETERMINATE_DATATYPE = '42P18' +INVALID_RECURSION = '42P19' +WINDOWING_ERROR = '42P20' # Class 44 - WITH CHECK OPTION Violation WITH_CHECK_OPTION_VIOLATION = '44000' @@ -325,6 +342,8 @@ LOCK_FILE_EXISTS = 'F0001' # Class P0 - PL/pgSQL Error PLPGSQL_ERROR = 'P0000' RAISE_EXCEPTION = 'P0001' +NO_DATA_FOUND = 'P0002' +TOO_MANY_ROWS = 'P0003' # Class XX - Internal Error INTERNAL_ERROR = 'XX000'