Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/psycopg2/errorcodes.py: 95%

314 statements  

« prev     ^ index     » next       coverage.py v6.4.4, created at 2023-07-17 14:22 -0600

1"""Error codes for PostgreSQL 

2 

3This module contains symbolic names for all PostgreSQL error codes. 

4""" 

5# psycopg2/errorcodes.py - PostgreSQL error codes 

6# 

7# Copyright (C) 2006-2019 Johan Dahlin <jdahlin@async.com.br> 

8# Copyright (C) 2020-2021 The Psycopg Team 

9# 

10# psycopg2 is free software: you can redistribute it and/or modify it 

11# under the terms of the GNU Lesser General Public License as published 

12# by the Free Software Foundation, either version 3 of the License, or 

13# (at your option) any later version. 

14# 

15# In addition, as a special exception, the copyright holders give 

16# permission to link this program with the OpenSSL library (or with 

17# modified versions of OpenSSL that use the same license as OpenSSL), 

18# and distribute linked combinations including the two. 

19# 

20# You must obey the GNU Lesser General Public License in all respects for 

21# all of the code used other than OpenSSL. 

22# 

23# psycopg2 is distributed in the hope that it will be useful, but WITHOUT 

24# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 

25# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 

26# License for more details. 

27# 

28# Based on: 

29# 

30# https://www.postgresql.org/docs/current/static/errcodes-appendix.html 

31# 

32 

33 

34def lookup(code, _cache={}): 

35 """Lookup an error code or class code and return its symbolic name. 

36 

37 Raise `KeyError` if the code is not found. 

38 """ 

39 if _cache: 

40 return _cache[code] 

41 

42 # Generate the lookup map at first usage. 

43 tmp = {} 

44 for k, v in globals().items(): 

45 if isinstance(v, str) and len(v) in (2, 5): 

46 # Strip trailing underscore used to disambiguate duplicate values 

47 tmp[v] = k.rstrip("_") 

48 

49 assert tmp 

50 

51 # Atomic update, to avoid race condition on import (bug #382) 

52 _cache.update(tmp) 

53 

54 return _cache[code] 

55 

56 

57# autogenerated data: do not edit below this point. 

58 

59# Error classes 

60CLASS_SUCCESSFUL_COMPLETION = '00' 

61CLASS_WARNING = '01' 

62CLASS_NO_DATA = '02' 

63CLASS_SQL_STATEMENT_NOT_YET_COMPLETE = '03' 

64CLASS_CONNECTION_EXCEPTION = '08' 

65CLASS_TRIGGERED_ACTION_EXCEPTION = '09' 

66CLASS_FEATURE_NOT_SUPPORTED = '0A' 

67CLASS_INVALID_TRANSACTION_INITIATION = '0B' 

68CLASS_LOCATOR_EXCEPTION = '0F' 

69CLASS_INVALID_GRANTOR = '0L' 

70CLASS_INVALID_ROLE_SPECIFICATION = '0P' 

71CLASS_DIAGNOSTICS_EXCEPTION = '0Z' 

72CLASS_CASE_NOT_FOUND = '20' 

73CLASS_CARDINALITY_VIOLATION = '21' 

74CLASS_DATA_EXCEPTION = '22' 

75CLASS_INTEGRITY_CONSTRAINT_VIOLATION = '23' 

76CLASS_INVALID_CURSOR_STATE = '24' 

77CLASS_INVALID_TRANSACTION_STATE = '25' 

78CLASS_INVALID_SQL_STATEMENT_NAME = '26' 

79CLASS_TRIGGERED_DATA_CHANGE_VIOLATION = '27' 

80CLASS_INVALID_AUTHORIZATION_SPECIFICATION = '28' 

81CLASS_DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXIST = '2B' 

82CLASS_INVALID_TRANSACTION_TERMINATION = '2D' 

83CLASS_SQL_ROUTINE_EXCEPTION = '2F' 

84CLASS_INVALID_CURSOR_NAME = '34' 

85CLASS_EXTERNAL_ROUTINE_EXCEPTION = '38' 

86CLASS_EXTERNAL_ROUTINE_INVOCATION_EXCEPTION = '39' 

87CLASS_SAVEPOINT_EXCEPTION = '3B' 

88CLASS_INVALID_CATALOG_NAME = '3D' 

89CLASS_INVALID_SCHEMA_NAME = '3F' 

90CLASS_TRANSACTION_ROLLBACK = '40' 

91CLASS_SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION = '42' 

92CLASS_WITH_CHECK_OPTION_VIOLATION = '44' 

93CLASS_INSUFFICIENT_RESOURCES = '53' 

94CLASS_PROGRAM_LIMIT_EXCEEDED = '54' 

95CLASS_OBJECT_NOT_IN_PREREQUISITE_STATE = '55' 

96CLASS_OPERATOR_INTERVENTION = '57' 

97CLASS_SYSTEM_ERROR = '58' 

98CLASS_SNAPSHOT_FAILURE = '72' 

99CLASS_CONFIGURATION_FILE_ERROR = 'F0' 

100CLASS_FOREIGN_DATA_WRAPPER_ERROR = 'HV' 

101CLASS_PL_PGSQL_ERROR = 'P0' 

102CLASS_INTERNAL_ERROR = 'XX' 

103 

104# Class 00 - Successful Completion 

105SUCCESSFUL_COMPLETION = '00000' 

106 

107# Class 01 - Warning 

108WARNING = '01000' 

109NULL_VALUE_ELIMINATED_IN_SET_FUNCTION = '01003' 

110STRING_DATA_RIGHT_TRUNCATION_ = '01004' 

111PRIVILEGE_NOT_REVOKED = '01006' 

112PRIVILEGE_NOT_GRANTED = '01007' 

113IMPLICIT_ZERO_BIT_PADDING = '01008' 

114DYNAMIC_RESULT_SETS_RETURNED = '0100C' 

115DEPRECATED_FEATURE = '01P01' 

116 

117# Class 02 - No Data (this is also a warning class per the SQL standard) 

118NO_DATA = '02000' 

119NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNED = '02001' 

120 

121# Class 03 - SQL Statement Not Yet Complete 

122SQL_STATEMENT_NOT_YET_COMPLETE = '03000' 

123 

124# Class 08 - Connection Exception 

125CONNECTION_EXCEPTION = '08000' 

126SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTION = '08001' 

127CONNECTION_DOES_NOT_EXIST = '08003' 

128SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTION = '08004' 

129CONNECTION_FAILURE = '08006' 

130TRANSACTION_RESOLUTION_UNKNOWN = '08007' 

131PROTOCOL_VIOLATION = '08P01' 

132 

133# Class 09 - Triggered Action Exception 

134TRIGGERED_ACTION_EXCEPTION = '09000' 

135 

136# Class 0A - Feature Not Supported 

137FEATURE_NOT_SUPPORTED = '0A000' 

138 

139# Class 0B - Invalid Transaction Initiation 

140INVALID_TRANSACTION_INITIATION = '0B000' 

141 

142# Class 0F - Locator Exception 

143LOCATOR_EXCEPTION = '0F000' 

144INVALID_LOCATOR_SPECIFICATION = '0F001' 

145 

146# Class 0L - Invalid Grantor 

147INVALID_GRANTOR = '0L000' 

148INVALID_GRANT_OPERATION = '0LP01' 

149 

150# Class 0P - Invalid Role Specification 

151INVALID_ROLE_SPECIFICATION = '0P000' 

152 

153# Class 0Z - Diagnostics Exception 

154DIAGNOSTICS_EXCEPTION = '0Z000' 

155STACKED_DIAGNOSTICS_ACCESSED_WITHOUT_ACTIVE_HANDLER = '0Z002' 

156 

157# Class 20 - Case Not Found 

158CASE_NOT_FOUND = '20000' 

159 

160# Class 21 - Cardinality Violation 

161CARDINALITY_VIOLATION = '21000' 

162 

163# Class 22 - Data Exception 

164DATA_EXCEPTION = '22000' 

165STRING_DATA_RIGHT_TRUNCATION = '22001' 

166NULL_VALUE_NO_INDICATOR_PARAMETER = '22002' 

167NUMERIC_VALUE_OUT_OF_RANGE = '22003' 

168NULL_VALUE_NOT_ALLOWED_ = '22004' 

169ERROR_IN_ASSIGNMENT = '22005' 

170INVALID_DATETIME_FORMAT = '22007' 

171DATETIME_FIELD_OVERFLOW = '22008' 

172INVALID_TIME_ZONE_DISPLACEMENT_VALUE = '22009' 

173ESCAPE_CHARACTER_CONFLICT = '2200B' 

174INVALID_USE_OF_ESCAPE_CHARACTER = '2200C' 

175INVALID_ESCAPE_OCTET = '2200D' 

176ZERO_LENGTH_CHARACTER_STRING = '2200F' 

177MOST_SPECIFIC_TYPE_MISMATCH = '2200G' 

178SEQUENCE_GENERATOR_LIMIT_EXCEEDED = '2200H' 

179NOT_AN_XML_DOCUMENT = '2200L' 

180INVALID_XML_DOCUMENT = '2200M' 

181INVALID_XML_CONTENT = '2200N' 

182INVALID_XML_COMMENT = '2200S' 

183INVALID_XML_PROCESSING_INSTRUCTION = '2200T' 

184INVALID_INDICATOR_PARAMETER_VALUE = '22010' 

185SUBSTRING_ERROR = '22011' 

186DIVISION_BY_ZERO = '22012' 

187INVALID_PRECEDING_OR_FOLLOWING_SIZE = '22013' 

188INVALID_ARGUMENT_FOR_NTILE_FUNCTION = '22014' 

189INTERVAL_FIELD_OVERFLOW = '22015' 

190INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTION = '22016' 

191INVALID_CHARACTER_VALUE_FOR_CAST = '22018' 

192INVALID_ESCAPE_CHARACTER = '22019' 

193INVALID_REGULAR_EXPRESSION = '2201B' 

194INVALID_ARGUMENT_FOR_LOGARITHM = '2201E' 

195INVALID_ARGUMENT_FOR_POWER_FUNCTION = '2201F' 

196INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTION = '2201G' 

197INVALID_ROW_COUNT_IN_LIMIT_CLAUSE = '2201W' 

198INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSE = '2201X' 

199INVALID_LIMIT_VALUE = '22020' 

200CHARACTER_NOT_IN_REPERTOIRE = '22021' 

201INDICATOR_OVERFLOW = '22022' 

202INVALID_PARAMETER_VALUE = '22023' 

203UNTERMINATED_C_STRING = '22024' 

204INVALID_ESCAPE_SEQUENCE = '22025' 

205STRING_DATA_LENGTH_MISMATCH = '22026' 

206TRIM_ERROR = '22027' 

207ARRAY_SUBSCRIPT_ERROR = '2202E' 

208INVALID_TABLESAMPLE_REPEAT = '2202G' 

209INVALID_TABLESAMPLE_ARGUMENT = '2202H' 

210DUPLICATE_JSON_OBJECT_KEY_VALUE = '22030' 

211INVALID_ARGUMENT_FOR_SQL_JSON_DATETIME_FUNCTION = '22031' 

212INVALID_JSON_TEXT = '22032' 

213INVALID_SQL_JSON_SUBSCRIPT = '22033' 

214MORE_THAN_ONE_SQL_JSON_ITEM = '22034' 

215NO_SQL_JSON_ITEM = '22035' 

216NON_NUMERIC_SQL_JSON_ITEM = '22036' 

217NON_UNIQUE_KEYS_IN_A_JSON_OBJECT = '22037' 

218SINGLETON_SQL_JSON_ITEM_REQUIRED = '22038' 

219SQL_JSON_ARRAY_NOT_FOUND = '22039' 

220SQL_JSON_MEMBER_NOT_FOUND = '2203A' 

221SQL_JSON_NUMBER_NOT_FOUND = '2203B' 

222SQL_JSON_OBJECT_NOT_FOUND = '2203C' 

223TOO_MANY_JSON_ARRAY_ELEMENTS = '2203D' 

224TOO_MANY_JSON_OBJECT_MEMBERS = '2203E' 

225SQL_JSON_SCALAR_REQUIRED = '2203F' 

226SQL_JSON_ITEM_CANNOT_BE_CAST_TO_TARGET_TYPE = '2203G' 

227FLOATING_POINT_EXCEPTION = '22P01' 

228INVALID_TEXT_REPRESENTATION = '22P02' 

229INVALID_BINARY_REPRESENTATION = '22P03' 

230BAD_COPY_FILE_FORMAT = '22P04' 

231UNTRANSLATABLE_CHARACTER = '22P05' 

232NONSTANDARD_USE_OF_ESCAPE_CHARACTER = '22P06' 

233 

234# Class 23 - Integrity Constraint Violation 

235INTEGRITY_CONSTRAINT_VIOLATION = '23000' 

236RESTRICT_VIOLATION = '23001' 

237NOT_NULL_VIOLATION = '23502' 

238FOREIGN_KEY_VIOLATION = '23503' 

239UNIQUE_VIOLATION = '23505' 

240CHECK_VIOLATION = '23514' 

241EXCLUSION_VIOLATION = '23P01' 

242 

243# Class 24 - Invalid Cursor State 

244INVALID_CURSOR_STATE = '24000' 

245 

246# Class 25 - Invalid Transaction State 

247INVALID_TRANSACTION_STATE = '25000' 

248ACTIVE_SQL_TRANSACTION = '25001' 

249BRANCH_TRANSACTION_ALREADY_ACTIVE = '25002' 

250INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTION = '25003' 

251INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTION = '25004' 

252NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTION = '25005' 

253READ_ONLY_SQL_TRANSACTION = '25006' 

254SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTED = '25007' 

255HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVEL = '25008' 

256NO_ACTIVE_SQL_TRANSACTION = '25P01' 

257IN_FAILED_SQL_TRANSACTION = '25P02' 

258IDLE_IN_TRANSACTION_SESSION_TIMEOUT = '25P03' 

259 

260# Class 26 - Invalid SQL Statement Name 

261INVALID_SQL_STATEMENT_NAME = '26000' 

262 

263# Class 27 - Triggered Data Change Violation 

264TRIGGERED_DATA_CHANGE_VIOLATION = '27000' 

265 

266# Class 28 - Invalid Authorization Specification 

267INVALID_AUTHORIZATION_SPECIFICATION = '28000' 

268INVALID_PASSWORD = '28P01' 

269 

270# Class 2B - Dependent Privilege Descriptors Still Exist 

271DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXIST = '2B000' 

272DEPENDENT_OBJECTS_STILL_EXIST = '2BP01' 

273 

274# Class 2D - Invalid Transaction Termination 

275INVALID_TRANSACTION_TERMINATION = '2D000' 

276 

277# Class 2F - SQL Routine Exception 

278SQL_ROUTINE_EXCEPTION = '2F000' 

279MODIFYING_SQL_DATA_NOT_PERMITTED_ = '2F002' 

280PROHIBITED_SQL_STATEMENT_ATTEMPTED_ = '2F003' 

281READING_SQL_DATA_NOT_PERMITTED_ = '2F004' 

282FUNCTION_EXECUTED_NO_RETURN_STATEMENT = '2F005' 

283 

284# Class 34 - Invalid Cursor Name 

285INVALID_CURSOR_NAME = '34000' 

286 

287# Class 38 - External Routine Exception 

288EXTERNAL_ROUTINE_EXCEPTION = '38000' 

289CONTAINING_SQL_NOT_PERMITTED = '38001' 

290MODIFYING_SQL_DATA_NOT_PERMITTED = '38002' 

291PROHIBITED_SQL_STATEMENT_ATTEMPTED = '38003' 

292READING_SQL_DATA_NOT_PERMITTED = '38004' 

293 

294# Class 39 - External Routine Invocation Exception 

295EXTERNAL_ROUTINE_INVOCATION_EXCEPTION = '39000' 

296INVALID_SQLSTATE_RETURNED = '39001' 

297NULL_VALUE_NOT_ALLOWED = '39004' 

298TRIGGER_PROTOCOL_VIOLATED = '39P01' 

299SRF_PROTOCOL_VIOLATED = '39P02' 

300EVENT_TRIGGER_PROTOCOL_VIOLATED = '39P03' 

301 

302# Class 3B - Savepoint Exception 

303SAVEPOINT_EXCEPTION = '3B000' 

304INVALID_SAVEPOINT_SPECIFICATION = '3B001' 

305 

306# Class 3D - Invalid Catalog Name 

307INVALID_CATALOG_NAME = '3D000' 

308 

309# Class 3F - Invalid Schema Name 

310INVALID_SCHEMA_NAME = '3F000' 

311 

312# Class 40 - Transaction Rollback 

313TRANSACTION_ROLLBACK = '40000' 

314SERIALIZATION_FAILURE = '40001' 

315TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATION = '40002' 

316STATEMENT_COMPLETION_UNKNOWN = '40003' 

317DEADLOCK_DETECTED = '40P01' 

318 

319# Class 42 - Syntax Error or Access Rule Violation 

320SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATION = '42000' 

321INSUFFICIENT_PRIVILEGE = '42501' 

322SYNTAX_ERROR = '42601' 

323INVALID_NAME = '42602' 

324INVALID_COLUMN_DEFINITION = '42611' 

325NAME_TOO_LONG = '42622' 

326DUPLICATE_COLUMN = '42701' 

327AMBIGUOUS_COLUMN = '42702' 

328UNDEFINED_COLUMN = '42703' 

329UNDEFINED_OBJECT = '42704' 

330DUPLICATE_OBJECT = '42710' 

331DUPLICATE_ALIAS = '42712' 

332DUPLICATE_FUNCTION = '42723' 

333AMBIGUOUS_FUNCTION = '42725' 

334GROUPING_ERROR = '42803' 

335DATATYPE_MISMATCH = '42804' 

336WRONG_OBJECT_TYPE = '42809' 

337INVALID_FOREIGN_KEY = '42830' 

338CANNOT_COERCE = '42846' 

339UNDEFINED_FUNCTION = '42883' 

340GENERATED_ALWAYS = '428C9' 

341RESERVED_NAME = '42939' 

342UNDEFINED_TABLE = '42P01' 

343UNDEFINED_PARAMETER = '42P02' 

344DUPLICATE_CURSOR = '42P03' 

345DUPLICATE_DATABASE = '42P04' 

346DUPLICATE_PREPARED_STATEMENT = '42P05' 

347DUPLICATE_SCHEMA = '42P06' 

348DUPLICATE_TABLE = '42P07' 

349AMBIGUOUS_PARAMETER = '42P08' 

350AMBIGUOUS_ALIAS = '42P09' 

351INVALID_COLUMN_REFERENCE = '42P10' 

352INVALID_CURSOR_DEFINITION = '42P11' 

353INVALID_DATABASE_DEFINITION = '42P12' 

354INVALID_FUNCTION_DEFINITION = '42P13' 

355INVALID_PREPARED_STATEMENT_DEFINITION = '42P14' 

356INVALID_SCHEMA_DEFINITION = '42P15' 

357INVALID_TABLE_DEFINITION = '42P16' 

358INVALID_OBJECT_DEFINITION = '42P17' 

359INDETERMINATE_DATATYPE = '42P18' 

360INVALID_RECURSION = '42P19' 

361WINDOWING_ERROR = '42P20' 

362COLLATION_MISMATCH = '42P21' 

363INDETERMINATE_COLLATION = '42P22' 

364 

365# Class 44 - WITH CHECK OPTION Violation 

366WITH_CHECK_OPTION_VIOLATION = '44000' 

367 

368# Class 53 - Insufficient Resources 

369INSUFFICIENT_RESOURCES = '53000' 

370DISK_FULL = '53100' 

371OUT_OF_MEMORY = '53200' 

372TOO_MANY_CONNECTIONS = '53300' 

373CONFIGURATION_LIMIT_EXCEEDED = '53400' 

374 

375# Class 54 - Program Limit Exceeded 

376PROGRAM_LIMIT_EXCEEDED = '54000' 

377STATEMENT_TOO_COMPLEX = '54001' 

378TOO_MANY_COLUMNS = '54011' 

379TOO_MANY_ARGUMENTS = '54023' 

380 

381# Class 55 - Object Not In Prerequisite State 

382OBJECT_NOT_IN_PREREQUISITE_STATE = '55000' 

383OBJECT_IN_USE = '55006' 

384CANT_CHANGE_RUNTIME_PARAM = '55P02' 

385LOCK_NOT_AVAILABLE = '55P03' 

386UNSAFE_NEW_ENUM_VALUE_USAGE = '55P04' 

387 

388# Class 57 - Operator Intervention 

389OPERATOR_INTERVENTION = '57000' 

390QUERY_CANCELED = '57014' 

391ADMIN_SHUTDOWN = '57P01' 

392CRASH_SHUTDOWN = '57P02' 

393CANNOT_CONNECT_NOW = '57P03' 

394DATABASE_DROPPED = '57P04' 

395IDLE_SESSION_TIMEOUT = '57P05' 

396 

397# Class 58 - System Error (errors external to PostgreSQL itself) 

398SYSTEM_ERROR = '58000' 

399IO_ERROR = '58030' 

400UNDEFINED_FILE = '58P01' 

401DUPLICATE_FILE = '58P02' 

402 

403# Class 72 - Snapshot Failure 

404SNAPSHOT_TOO_OLD = '72000' 

405 

406# Class F0 - Configuration File Error 

407CONFIG_FILE_ERROR = 'F0000' 

408LOCK_FILE_EXISTS = 'F0001' 

409 

410# Class HV - Foreign Data Wrapper Error (SQL/MED) 

411FDW_ERROR = 'HV000' 

412FDW_OUT_OF_MEMORY = 'HV001' 

413FDW_DYNAMIC_PARAMETER_VALUE_NEEDED = 'HV002' 

414FDW_INVALID_DATA_TYPE = 'HV004' 

415FDW_COLUMN_NAME_NOT_FOUND = 'HV005' 

416FDW_INVALID_DATA_TYPE_DESCRIPTORS = 'HV006' 

417FDW_INVALID_COLUMN_NAME = 'HV007' 

418FDW_INVALID_COLUMN_NUMBER = 'HV008' 

419FDW_INVALID_USE_OF_NULL_POINTER = 'HV009' 

420FDW_INVALID_STRING_FORMAT = 'HV00A' 

421FDW_INVALID_HANDLE = 'HV00B' 

422FDW_INVALID_OPTION_INDEX = 'HV00C' 

423FDW_INVALID_OPTION_NAME = 'HV00D' 

424FDW_OPTION_NAME_NOT_FOUND = 'HV00J' 

425FDW_REPLY_HANDLE = 'HV00K' 

426FDW_UNABLE_TO_CREATE_EXECUTION = 'HV00L' 

427FDW_UNABLE_TO_CREATE_REPLY = 'HV00M' 

428FDW_UNABLE_TO_ESTABLISH_CONNECTION = 'HV00N' 

429FDW_NO_SCHEMAS = 'HV00P' 

430FDW_SCHEMA_NOT_FOUND = 'HV00Q' 

431FDW_TABLE_NOT_FOUND = 'HV00R' 

432FDW_FUNCTION_SEQUENCE_ERROR = 'HV010' 

433FDW_TOO_MANY_HANDLES = 'HV014' 

434FDW_INCONSISTENT_DESCRIPTOR_INFORMATION = 'HV021' 

435FDW_INVALID_ATTRIBUTE_VALUE = 'HV024' 

436FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTH = 'HV090' 

437FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIER = 'HV091' 

438 

439# Class P0 - PL/pgSQL Error 

440PLPGSQL_ERROR = 'P0000' 

441RAISE_EXCEPTION = 'P0001' 

442NO_DATA_FOUND = 'P0002' 

443TOO_MANY_ROWS = 'P0003' 

444ASSERT_FAILURE = 'P0004' 

445 

446# Class XX - Internal Error 

447INTERNAL_ERROR = 'XX000' 

448DATA_CORRUPTED = 'XX001' 

449INDEX_CORRUPTED = 'XX002'