mirror of
https://github.com/psycopg/psycopg2.git
synced 2025-02-07 12:50:32 +03:00
errorcodes map updated to PostgreSQL 9.1
This commit is contained in:
parent
880aa07a58
commit
29932c488f
1
NEWS
1
NEWS
|
@ -8,6 +8,7 @@ What's new in psycopg 2.4.3
|
||||||
- Lazy import of the slow uuid module, thanks to Marko Kreen.
|
- Lazy import of the slow uuid module, thanks to Marko Kreen.
|
||||||
- Fixed NamedTupleCursor.executemany() (ticket #65).
|
- Fixed NamedTupleCursor.executemany() (ticket #65).
|
||||||
- Fixed --static-libpq setup option (ticket #64).
|
- Fixed --static-libpq setup option (ticket #64).
|
||||||
|
- 'errorcodes' map updated to PostgreSQL 9.1.
|
||||||
|
|
||||||
|
|
||||||
What's new in psycopg 2.4.2
|
What's new in psycopg 2.4.2
|
||||||
|
|
|
@ -86,6 +86,7 @@ CLASS_OBJECT_NOT_IN_PREREQUISITE_STATE = '55'
|
||||||
CLASS_OPERATOR_INTERVENTION = '57'
|
CLASS_OPERATOR_INTERVENTION = '57'
|
||||||
CLASS_SYSTEM_ERROR = '58'
|
CLASS_SYSTEM_ERROR = '58'
|
||||||
CLASS_CONFIGURATION_FILE_ERROR = 'F0'
|
CLASS_CONFIGURATION_FILE_ERROR = 'F0'
|
||||||
|
CLASS_FOREIGN_DATA_WRAPPER_ERROR = 'HV'
|
||||||
CLASS_PL_PGSQL_ERROR = 'P0'
|
CLASS_PL_PGSQL_ERROR = 'P0'
|
||||||
CLASS_INTERNAL_ERROR = 'XX'
|
CLASS_INTERNAL_ERROR = 'XX'
|
||||||
|
|
||||||
|
@ -319,6 +320,8 @@ INVALID_OBJECT_DEFINITION = '42P17'
|
||||||
INDETERMINATE_DATATYPE = '42P18'
|
INDETERMINATE_DATATYPE = '42P18'
|
||||||
INVALID_RECURSION = '42P19'
|
INVALID_RECURSION = '42P19'
|
||||||
WINDOWING_ERROR = '42P20'
|
WINDOWING_ERROR = '42P20'
|
||||||
|
COLLATION_MISMATCH = '42P21'
|
||||||
|
INDETERMINATE_COLLATION = '42P22'
|
||||||
|
|
||||||
# Class 44 - WITH CHECK OPTION Violation
|
# Class 44 - WITH CHECK OPTION Violation
|
||||||
WITH_CHECK_OPTION_VIOLATION = '44000'
|
WITH_CHECK_OPTION_VIOLATION = '44000'
|
||||||
|
@ -347,6 +350,7 @@ QUERY_CANCELED = '57014'
|
||||||
ADMIN_SHUTDOWN = '57P01'
|
ADMIN_SHUTDOWN = '57P01'
|
||||||
CRASH_SHUTDOWN = '57P02'
|
CRASH_SHUTDOWN = '57P02'
|
||||||
CANNOT_CONNECT_NOW = '57P03'
|
CANNOT_CONNECT_NOW = '57P03'
|
||||||
|
DATABASE_DROPPED = '57P04'
|
||||||
|
|
||||||
# Class 58 - System Error (errors external to PostgreSQL itself)
|
# Class 58 - System Error (errors external to PostgreSQL itself)
|
||||||
IO_ERROR = '58030'
|
IO_ERROR = '58030'
|
||||||
|
@ -357,6 +361,35 @@ DUPLICATE_FILE = '58P02'
|
||||||
CONFIG_FILE_ERROR = 'F0000'
|
CONFIG_FILE_ERROR = 'F0000'
|
||||||
LOCK_FILE_EXISTS = 'F0001'
|
LOCK_FILE_EXISTS = 'F0001'
|
||||||
|
|
||||||
|
# Class HV - Foreign Data Wrapper Error (SQL/MED)
|
||||||
|
FDW_ERROR = 'HV000'
|
||||||
|
FDW_OUT_OF_MEMORY = 'HV001'
|
||||||
|
FDW_DYNAMIC_PARAMETER_VALUE_NEEDED = 'HV002'
|
||||||
|
FDW_INVALID_DATA_TYPE = 'HV004'
|
||||||
|
FDW_COLUMN_NAME_NOT_FOUND = 'HV005'
|
||||||
|
FDW_INVALID_DATA_TYPE_DESCRIPTORS = 'HV006'
|
||||||
|
FDW_INVALID_COLUMN_NAME = 'HV007'
|
||||||
|
FDW_INVALID_COLUMN_NUMBER = 'HV008'
|
||||||
|
FDW_INVALID_USE_OF_NULL_POINTER = 'HV009'
|
||||||
|
FDW_INVALID_STRING_FORMAT = 'HV00A'
|
||||||
|
FDW_INVALID_HANDLE = 'HV00B'
|
||||||
|
FDW_INVALID_OPTION_INDEX = 'HV00C'
|
||||||
|
FDW_INVALID_OPTION_NAME = 'HV00D'
|
||||||
|
FDW_OPTION_NAME_NOT_FOUND = 'HV00J'
|
||||||
|
FDW_REPLY_HANDLE = 'HV00K'
|
||||||
|
FDW_UNABLE_TO_CREATE_EXECUTION = 'HV00L'
|
||||||
|
FDW_UNABLE_TO_CREATE_REPLY = 'HV00M'
|
||||||
|
FDW_UNABLE_TO_ESTABLISH_CONNECTION = 'HV00N'
|
||||||
|
FDW_NO_SCHEMAS = 'HV00P'
|
||||||
|
FDW_SCHEMA_NOT_FOUND = 'HV00Q'
|
||||||
|
FDW_TABLE_NOT_FOUND = 'HV00R'
|
||||||
|
FDW_FUNCTION_SEQUENCE_ERROR = 'HV010'
|
||||||
|
FDW_TOO_MANY_HANDLES = 'HV014'
|
||||||
|
FDW_INCONSISTENT_DESCRIPTOR_INFORMATION = 'HV021'
|
||||||
|
FDW_INVALID_ATTRIBUTE_VALUE = 'HV024'
|
||||||
|
FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTH = 'HV090'
|
||||||
|
FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIER = 'HV091'
|
||||||
|
|
||||||
# Class P0 - PL/pgSQL Error
|
# Class P0 - PL/pgSQL Error
|
||||||
PLPGSQL_ERROR = 'P0000'
|
PLPGSQL_ERROR = 'P0000'
|
||||||
RAISE_EXCEPTION = 'P0001'
|
RAISE_EXCEPTION = 'P0001'
|
||||||
|
|
|
@ -30,7 +30,7 @@ def main():
|
||||||
filename = sys.argv[1]
|
filename = sys.argv[1]
|
||||||
|
|
||||||
file_start = read_base_file(filename)
|
file_start = read_base_file(filename)
|
||||||
classes, errors = fetch_errors(['8.1', '8.2', '8.3', '8.4', '9.0'])
|
classes, errors = fetch_errors(['8.1', '8.2', '8.3', '8.4', '9.0', '9.1'])
|
||||||
|
|
||||||
f = open(filename, "w")
|
f = open(filename, "w")
|
||||||
for line in file_start:
|
for line in file_start:
|
||||||
|
@ -70,12 +70,22 @@ def parse_errors(url):
|
||||||
else: # it's an error
|
else: # it's an error
|
||||||
errcode = tr.tt.string.encode("ascii")
|
errcode = tr.tt.string.encode("ascii")
|
||||||
assert len(errcode) == 5
|
assert len(errcode) == 5
|
||||||
errlabel = tr('td')[1].string.replace(" ", "_").encode("ascii")
|
|
||||||
|
tds = tr('td')
|
||||||
|
if len(tds) == 3:
|
||||||
|
errlabel = tds[1].string.replace(" ", "_").encode("ascii")
|
||||||
|
|
||||||
# double check the columns are equal
|
# double check the columns are equal
|
||||||
cond_name = tr('td')[2].string.upper().encode("ascii")
|
cond_name = tds[2].string.upper().encode("ascii")
|
||||||
assert errlabel == cond_name, tr
|
assert errlabel == cond_name, tr
|
||||||
|
|
||||||
|
elif len(tds) == 2:
|
||||||
|
# found in PG 9.1 beta3 docs
|
||||||
|
errlabel = tds[1].tt.string.upper().encode("ascii")
|
||||||
|
|
||||||
|
else:
|
||||||
|
assert False, tr
|
||||||
|
|
||||||
errors[class_][errcode] = errlabel
|
errors[class_][errcode] = errlabel
|
||||||
|
|
||||||
return classes, errors
|
return classes, errors
|
||||||
|
|
Loading…
Reference in New Issue
Block a user