Skip to content

PostgreSQL Error Mapping

This page lists how native PostgreSQL database or driver errors are represented as TsSqlErrorReason values. The table uses the same row catalog and row order as the other native database pages, so a - means this semantic case is not currently mapped for PostgreSQL.

Database error shows the values exposed through databaseErrorCode and databaseErrorNumber when both are available. Connector-only signals include the connector inline. SQL_UNKNOWN is intentionally the last row.

Exact mapper-known codes are listed individually. Broad class, range, or message-pattern fallbacks are kept when the mapper intentionally handles an open-ended family of errors; if the same native code appears in more than one row, the driver message determines the final mapped reason.

Category Reason Database error Filled fields
Constraints SQL_CONSTRAINT_VIOLATED
constraintType
unique
unique_violation / 23505: unique constraint violation constraintType
constraintName when inferred
tableName when inferred
columnName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Constraints SQL_CONSTRAINT_VIOLATED
constraintType
not null
not_null_violation / 23502: not null constraint violation constraintType
constraintName when inferred
tableName when inferred
columnName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Constraints SQL_CONSTRAINT_VIOLATED
constraintType
foreign key
foreign_key_violation / 23503: foreign key constraint violation constraintType
constraintName when inferred
tableName when inferred
columnName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Constraints SQL_CONSTRAINT_VIOLATED
constraintType
check
check_violation / 23514: check constraint violation
with_check_option_violation / 44000: check constraint violation
constraintType
constraintName when inferred
tableName when inferred
columnName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Constraints SQL_CONSTRAINT_VIOLATED
constraintType
exclusion
exclusion_violation / 23P01: exclusion constraint violation constraintType
constraintName when inferred
tableName when inferred
columnName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Constraints SQL_CONSTRAINT_VIOLATED
constraintType
restrict
restrict_violation / 23001: restrict constraint violation constraintType
constraintName when inferred
tableName when inferred
columnName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Constraints SQL_CONSTRAINT_VIOLATED integrity_constraint_violation / 23000: constraint violation
transaction_integrity_constraint_violation / 40002: constraint violation
23: constraint violation
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Values SQL_INVALID_VALUE
errorType
too long
string_data_right_truncation / 22001: too long
string_data_length_mismatch / 22026: too long
file_name_too_long / 58P03: too long
errorType
tableName when inferred
columnName when inferred
typeName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Values SQL_INVALID_VALUE
errorType
out of range
numeric_value_out_of_range / 22003: out of range
datetime_field_overflow / 22008: out of range
interval_field_overflow / 22015: out of range
indicator_overflow / 22022: out of range
errorType
tableName when inferred
columnName when inferred
typeName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Values SQL_INVALID_VALUE
errorType
invalid value
SQLSTATE class 22: invalid value
22 (Bun SQL): invalid value
data_exception / 22000: invalid value
error_in_assignment / 22005: invalid value
invalid_character_value_for_cast / 22018: invalid value
invalid_parameter_value / 22023: invalid value
invalid_time_zone_displacement_value / 22009: invalid value
most_specific_type_mismatch / 2200G: invalid value
floating_point_exception / 22P01: invalid value
invalid_text_representation / 22P02: invalid value
fdw_invalid_attribute_value / HV024: invalid value
fdw_invalid_data_type / HV004: invalid value
fdw_invalid_data_type_descriptors / HV006: invalid value
fdw_invalid_string_length_or_buffer_length / HV090: invalid value
fdw_invalid_string_format / HV00A: invalid value
errorType
tableName when inferred
columnName when inferred
typeName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Values SQL_INVALID_VALUE
errorType
invalid format
22006: invalid format
invalid_datetime_format / 22007: invalid format
escape_character_conflict / 2200B: invalid format
zero_length_character_string / 2200F: invalid format
invalid_escape_character / 22019: invalid format
invalid_argument_for_logarithm / 2201E: invalid format
invalid_argument_for_power_function / 2201F: invalid format
invalid_argument_for_width_bucket_function / 2201G: invalid format
invalid_row_count_in_limit_clause / 2201W: invalid format
invalid_row_count_in_result_offset_clause / 2201X: invalid format
array_subscript_error / 2202E: invalid format
invalid_argument_for_ntile_function / 22014: invalid format
invalid_argument_for_nth_value_function / 22016: invalid format
invalid_escape_octet / 2200D: invalid format
invalid_escape_sequence / 22025: invalid format
nonstandard_use_of_escape_character / 22P06: invalid format
invalid_indicator_parameter_value / 22010: invalid format
invalid_preceding_or_following_size / 22013: invalid format
invalid_tablesample_argument / 2202H: invalid format
invalid_tablesample_repeat / 2202G: invalid format
invalid_use_of_escape_character / 2200C: invalid format
substring_error / 22011: invalid format
trim_error / 22027: invalid format
unterminated_c_string / 22024: invalid format
invalid_binary_representation / 22P03: invalid format
bad_copy_file_format / 22P04: invalid format
errorType
tableName when inferred
columnName when inferred
typeName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Values SQL_INVALID_VALUE
errorType
invalid encoding
character_not_in_repertoire / 22021: invalid encoding
untranslatable_character / 22P05: invalid encoding
errorType
tableName when inferred
columnName when inferred
typeName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Values SQL_INVALID_VALUE
errorType
invalid json
duplicate_json_object_key_value / 22030: invalid json
invalid_argument_for_sql_json_datetime_function / 22031: invalid json
invalid_json_text / 22032: invalid json
invalid_sql_json_subscript / 22033: invalid json
more_than_one_sql_json_item / 22034: invalid json
no_sql_json_item / 22035: invalid json
non_numeric_sql_json_item / 22036: invalid json
non_unique_keys_in_a_json_object / 22037: invalid json
singleton_sql_json_item_required / 22038: invalid json
sql_json_array_not_found / 22039: invalid json
sql_json_member_not_found / 2203A: invalid json
sql_json_number_not_found / 2203B: invalid json
sql_json_object_not_found / 2203C: invalid json
too_many_json_array_elements / 2203D: invalid json
too_many_json_object_members / 2203E: invalid json
sql_json_scalar_required / 2203F: invalid json
sql_json_item_cannot_be_cast_to_target_type / 2203G: invalid json
errorType
tableName when inferred
columnName when inferred
typeName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Values SQL_INVALID_VALUE
errorType
invalid xml
not_an_xml_document / 2200L: invalid xml
invalid_xml_document / 2200M: invalid xml
invalid_xml_content / 2200N: invalid xml
invalid_xml_comment / 2200S: invalid xml
invalid_xml_processing_instruction / 2200T: invalid xml
errorType
tableName when inferred
columnName when inferred
typeName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Values SQL_INVALID_VALUE
errorType
invalid regular expression
invalid_regular_expression / 2201B: invalid regular expression errorType
tableName when inferred
columnName when inferred
typeName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Values SQL_INVALID_VALUE
errorType
null not allowed
null_value_no_indicator_parameter / 22002: null not allowed
null_value_not_allowed / 22004: null not allowed
null_value_not_allowed / 39004: null not allowed
errorType
tableName when inferred
columnName when inferred
typeName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Values SQL_INVALID_VALUE
errorType
sequence limit
sequence_generator_limit_exceeded / 2200H: sequence limit errorType
tableName when inferred
columnName when inferred
typeName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Parameters SQL_INVALID_PARAMETER
parameterErrorType
missing
protocol_violation / 08P01: missing parameter when the bind message indicates a missing parameter
undefined_parameter / 42P02: missing parameter
parameterErrorType
parameterName when inferred
parameterIndex when inferred
expectedParameterCount when inferred
actualParameterCount when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Parameters SQL_INVALID_PARAMETER
parameterErrorType
too many
MAX_PARAMETERS_EXCEEDED (postgres.js): too many parameter
ERR_POSTGRES_TOO_MANY_PARAMETERS (Bun SQL): too many parameter
parameterErrorType
parameterName when inferred
parameterIndex when inferred
expectedParameterCount when inferred
actualParameterCount when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Parameters SQL_INVALID_PARAMETER
parameterErrorType
wrong count
@electric-sql/pglite offset/limit argument-count messages: wrong count parameter parameterErrorType
parameterName when inferred
parameterIndex when inferred
expectedParameterCount when inferred
actualParameterCount when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Parameters SQL_INVALID_PARAMETER
parameterErrorType
invalid name
- -
Parameters SQL_INVALID_PARAMETER
parameterErrorType
invalid index
- -
Parameters SQL_INVALID_PARAMETER
parameterErrorType
invalid type
@electric-sql/pglite option type messages: invalid type parameter parameterErrorType
parameterName when inferred
parameterIndex when inferred
expectedParameterCount when inferred
actualParameterCount when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Parameters SQL_INVALID_PARAMETER
parameterErrorType
invalid value
UNDEFINED_VALUE (postgres.js): invalid value parameter parameterErrorType
parameterName when inferred
parameterIndex when inferred
expectedParameterCount when inferred
actualParameterCount when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Parameters SQL_INVALID_PARAMETER
parameterErrorType
invalid binding
NOT_TAGGED_CALL (postgres.js): invalid binding parameter
ERR_POSTGRES_INVALID_QUERY_BINDING (Bun SQL): invalid binding parameter
ERR_POSTGRES_NOT_TAGGED_CALL (Bun SQL): invalid binding parameter
parameterErrorType
parameterName when inferred
parameterIndex when inferred
expectedParameterCount when inferred
actualParameterCount when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Parameters SQL_INVALID_PARAMETER
parameterErrorType
not bindable
- -
Parameters SQL_INVALID_PARAMETER
parameterErrorType
already bound
- -
Parameters SQL_INVALID_PARAMETER protocol_violation / 08P01: invalid parameter when the bind message contains parameter-count details
fdw_dynamic_parameter_value_needed / HV002: invalid parameter
fdw_invalid_column_number / HV008: invalid parameter
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object not found SQL_OBJECT_NOT_FOUND
objectType
database
invalid_catalog_name / 3D000: database not found objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object not found SQL_OBJECT_NOT_FOUND
objectType
schema
invalid_schema_name / 3F000: schema not found
fdw_schema_not_found / HV00Q: schema not found
objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object not found SQL_OBJECT_NOT_FOUND
objectType
table or view
undefined_table / 42P01: table or view not found
fdw_table_not_found / HV00R: table or view not found
objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object not found SQL_OBJECT_NOT_FOUND
objectType
column
undefined_column / 42703: column not found
fdw_column_name_not_found / HV005: column not found
fdw_invalid_column_name / HV007: column not found
objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object not found SQL_OBJECT_NOT_FOUND
objectType
routine
undefined_function / 42883: routine not found objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object not found SQL_OBJECT_NOT_FOUND
objectType
sequence
- -
Object not found SQL_OBJECT_NOT_FOUND
objectType
collation
- -
Object not found SQL_OBJECT_NOT_FOUND
objectType
index
- -
Object not found SQL_OBJECT_NOT_FOUND
objectType
trigger
- -
Object not found SQL_OBJECT_NOT_FOUND
objectType
cursor
invalid_cursor_name / 34000: cursor not found objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object not found SQL_OBJECT_NOT_FOUND
objectType
prepared statement
invalid_sql_statement_name / 26000: prepared statement not found objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object not found SQL_OBJECT_NOT_FOUND
objectType
role
invalid_role_specification / 0P000: role not found objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object not found SQL_OBJECT_NOT_FOUND undefined_object / 42704: object not found databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object already exists SQL_OBJECT_ALREADY_EXISTS
objectType
database
duplicate_database / 42P04: database already exists objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object already exists SQL_OBJECT_ALREADY_EXISTS
objectType
schema
duplicate_schema / 42P06: schema already exists objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object already exists SQL_OBJECT_ALREADY_EXISTS
objectType
table or view
duplicate_table / 42P07: table or view already exists objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object already exists SQL_OBJECT_ALREADY_EXISTS
objectType
column
duplicate_column / 42701: column already exists objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object already exists SQL_OBJECT_ALREADY_EXISTS
objectType
routine
duplicate_function / 42723: routine already exists objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object already exists SQL_OBJECT_ALREADY_EXISTS
objectType
sequence
- -
Object already exists SQL_OBJECT_ALREADY_EXISTS
objectType
index
- -
Object already exists SQL_OBJECT_ALREADY_EXISTS
objectType
trigger
- -
Object already exists SQL_OBJECT_ALREADY_EXISTS
objectType
cursor
duplicate_cursor / 42P03: cursor already exists objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object already exists SQL_OBJECT_ALREADY_EXISTS
objectType
prepared statement
duplicate_prepared_statement / 42P05: prepared statement already exists objectType
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object already exists SQL_OBJECT_ALREADY_EXISTS duplicate_object / 42710: object already exists databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object state SQL_OBJECT_STATE_ERROR
objectStateErrorType
invalid state
invalid_cursor_state / 24000: invalid state
object_not_in_prerequisite_state / 55000: invalid state
unsafe_new_enum_value_usage / 55P04: invalid state
objectStateErrorType
objectType when inferred
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object state SQL_OBJECT_STATE_ERROR
objectStateErrorType
wrong object type
wrong_object_type / 42809: wrong object type objectStateErrorType
objectType when inferred
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object state SQL_OBJECT_STATE_ERROR
objectStateErrorType
object in use
object_in_use / 55006: object in use objectStateErrorType
objectType when inferred
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Object state SQL_OBJECT_STATE_ERROR
objectStateErrorType
dependent objects still exist
dependent_privilege_descriptors_still_exist / 2B000: dependent objects still exist
dependent_objects_still_exist / 2BP01: dependent objects still exist
objectStateErrorType
objectType when inferred
schemaName when inferred
tableName when inferred
columnName when inferred
objectName when inferred
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_SYNTAX_ERROR syntax_error / 42601: syntax error databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_AMBIGUOUS_IDENTIFIER
identifierErrorType
ambiguous
ambiguous_column / 42702: ambiguous identifier
ambiguous_function / 42725: ambiguous identifier
ambiguous_parameter / 42P08: ambiguous identifier
ambiguous_alias / 42P09: ambiguous identifier
identifier when inferred
identifierType when inferred
identifierErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_AMBIGUOUS_IDENTIFIER
identifierErrorType
duplicate
duplicate_alias / 42712: duplicate identifier identifier when inferred
identifierType when inferred
identifierErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_AMBIGUOUS_IDENTIFIER - -
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
incomplete statement
sql_statement_not_yet_complete / 03000: incomplete statement
03: incomplete statement
statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
invalid definition
invalid_database_definition / 42P12: invalid definition
invalid_function_definition / 42P13: invalid definition
invalid_prepared_statement_definition / 42P14: invalid definition
invalid_schema_definition / 42P15: invalid definition
invalid_table_definition / 42P16: invalid definition
invalid_object_definition / 42P17: invalid definition
invalid_cursor_definition / 42P11: invalid definition
invalid_foreign_key / 42830: invalid definition
invalid_column_definition / 42611: invalid definition
generated_always / 428C9: invalid definition
statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
type mismatch
cannot_coerce / 42846: type mismatch
datatype_mismatch / 42804: type mismatch
indeterminate_datatype / 42P18: type mismatch
collation_mismatch / 42P21: type mismatch
indeterminate_collation / 42P22: type mismatch
statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
invalid statement context
SQLSTATE class 09: invalid statement context
09: invalid statement context
triggered_action_exception / 09000: invalid statement context
triggered_data_change_violation / 27000: invalid statement context
statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
invalid identifier
invalid_name / 42602: invalid identifier
name_too_long / 42622: invalid identifier
reserved_name / 42939: invalid identifier
statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
invalid reference
invalid_column_reference / 42P10: invalid reference statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
invalid grouping
grouping_error / 42803: invalid grouping statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
invalid windowing
windowing_error / 42P20: invalid windowing statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
invalid recursion
invalid_recursion / 42P19: invalid recursion statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
invalid locator
SQLSTATE class 0F: invalid locator
0F: invalid locator
locator_exception / 0F000: invalid locator
invalid_locator_specification / 0F001: invalid locator
statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
case not found
SQLSTATE class 20: case not found
20: case not found
case_not_found / 20000: case not found
statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT
statementErrorType
invalid argument
SQLSTATE class 10: invalid argument
10: invalid argument
invalid_argument_for_xquery / 10608: invalid argument
statementErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Statement SQL_INVALID_SQL_STATEMENT SQLSTATE class 42: invalid SQL statement
42: invalid SQL statement
syntax_error_or_access_rule_violation / 42000: invalid SQL statement
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Execution SQL_DIVISION_BY_ZERO division_by_zero / 22012: division by zero databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Execution SQL_CARDINALITY_VIOLATION cardinality_violation / 21000: cardinality violation
too_many_rows / P0003: cardinality violation
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Execution SQL_ROUTINE_ERROR raise_exception / P0001: routine error
no_data_found / P0002: routine error
assert_failure / P0004: routine error
diagnostics_exception / 0Z000: routine error
stacked_diagnostics_accessed_without_active_handler / 0Z002: routine error
sql_routine_exception / 2F000: routine error
function_executed_no_return_statement / 2F005: routine error
modifying_sql_data_not_permitted / 2F002: routine error
prohibited_sql_statement_attempted / 2F003: routine error
reading_sql_data_not_permitted / 2F004: routine error
external_routine_exception / 38000: routine error
containing_sql_not_permitted / 38001: routine error
modifying_sql_data_not_permitted / 38002: routine error
prohibited_sql_statement_attempted / 38003: routine error
reading_sql_data_not_permitted / 38004: routine error
external_routine_invocation_exception / 39000: routine error
invalid_sqlstate_returned / 39001: routine error
trigger_protocol_violated / 39P01: routine error
srf_protocol_violated / 39P02: routine error
event_trigger_protocol_violated / 39P03: routine error
plpgsql_error / P0000: routine error
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Transactions TRANSACTION_ERROR
transactionErrorType
invalid state
invalid_transaction_initiation / 0B000: invalid state
invalid_transaction_state / 25000: invalid state
invalid_transaction_termination / 2D000: invalid state
25 (Bun SQL): invalid state
ERR_POSTGRES_INVALID_TRANSACTION_STATE (Bun SQL): invalid state
transactionErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Transactions TRANSACTION_ERROR
transactionErrorType
aborted
in_failed_sql_transaction / 25P02: aborted transactionErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Transactions TRANSACTION_ERROR
transactionErrorType
active transaction
active_sql_transaction / 25001: active transaction
branch_transaction_already_active / 25002: active transaction
transactionErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Transactions TRANSACTION_ERROR
transactionErrorType
serialization failure
serialization_failure / 40001: serialization failure transactionErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Transactions TRANSACTION_ERROR
transactionErrorType
deadlock
deadlock_detected / 40P01: deadlock transactionErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Transactions TRANSACTION_ERROR
transactionErrorType
transaction rolled back
transaction_rollback / 40000: transaction rolled back
40: transaction rolled back
transactionErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Transactions TRANSACTION_ERROR
transactionErrorType
outcome unknown
transaction_resolution_unknown / 08007: outcome unknown
statement_completion_unknown / 40003: outcome unknown
transactionErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Transactions TRANSACTION_ERROR
transactionErrorType
invalid savepoint
savepoint_exception / 3B000: invalid savepoint
invalid_savepoint_specification / 3B001: invalid savepoint
3B: invalid savepoint
transactionErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Transactions TRANSACTION_ERROR
transactionErrorType
unsupported operation
schema_and_data_statement_mixing_not_supported / 25007: unsupported operation
UNSAFE_TRANSACTION (postgres.js): unsupported operation
ERR_POSTGRES_UNSAFE_TRANSACTION (Bun SQL): unsupported operation
transactionErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Transactions NOT_IN_TRANSACTION no_active_sql_transaction / 25P01: not in transaction
no_active_sql_transaction_for_branch_transaction / 25005: not in transaction
driver-mapped cases fill databaseErrorCode, databaseErrorNumber when available, and databaseErrorMessage; direct checks fill no extra fields
Transactions NESTED_TRANSACTION_NOT_SUPPORTED raised directly by ts-sql-query nested transaction checks driver-mapped cases fill databaseErrorCode, databaseErrorNumber when available, and databaseErrorMessage; direct checks fill no extra fields
Transactions FORBIDDEN_CONCURRENT_USAGE raised directly by query-runner concurrent usage checks driver-mapped cases fill databaseErrorCode, databaseErrorNumber when available, and databaseErrorMessage; direct checks fill no extra fields
Transactions TRANSACTION_LEVEL_NOT_SUPPORTED inappropriate_isolation_level_for_branch_transaction / 25004: transaction level not supported
held_cursor_requires_same_isolation_level / 25008: transaction level not supported
transactionLevel when available
databaseErrorCode when available
databaseErrorMessage
Transactions TRANSACTION_ACCESS_MODE_NOT_SUPPORTED inappropriate_access_mode_for_branch_transaction / 25003: transaction access mode not supported accessMode when available
databaseErrorCode when available
databaseErrorMessage
Timeouts SQL_TIMEOUT
timeoutType
connection
CONNECT_TIMEOUT (postgres.js): connection timeout
ERR_POSTGRES_CONNECTION_TIMEOUT (Bun SQL): connection timeout
timeoutType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Timeouts SQL_TIMEOUT
timeoutType
lock
lock_not_available / 55P03: lock timeout timeoutType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Timeouts SQL_TIMEOUT
timeoutType
statement
query_canceled / 57014: statement timeout when the message reports a statement timeout timeoutType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Timeouts SQL_TIMEOUT
timeoutType
transaction
transaction_timeout / 25P04: transaction timeout timeoutType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Timeouts SQL_TIMEOUT
timeoutType
idle transaction
idle_in_transaction_session_timeout / 25P03: idle transaction timeout timeoutType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Timeouts SQL_TIMEOUT
timeoutType
cancelled
query_canceled / 57014: cancelled timeout otherwise
ERR_POSTGRES_QUERY_CANCELLED (Bun SQL): cancelled timeout
timeoutType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Timeouts SQL_TIMEOUT
timeoutType
database file busy
- -
Connections SQL_CONNECTION_ERROR
errorType
connection lost
SQLSTATE class 08: connection lost
08 (Bun SQL): connection lost
protocol_violation / 08P01: connection lost when the message is not a bind-parameter diagnostic
operator_intervention / 57000: connection lost
admin_shutdown / 57P01: connection lost
crash_shutdown / 57P02: connection lost
idle_session_timeout / 57P05: connection lost
57 (Bun SQL): connection lost
connection_exception / 08000: connection lost
connection_does_not_exist / 08003: connection lost
connection_failure / 08006: connection lost
sqlclient_unable_to_establish_sqlconnection / 08001: connection lost
sqlserver_rejected_establishment_of_sqlconnection / 08004: connection lost
errorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Connections SQL_CONNECTION_ERROR
errorType
temporarily unavailable
cannot_connect_now / 57P03: temporarily unavailable
fdw_unable_to_establish_connection / HV00N: temporarily unavailable
errorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Connections SQL_CONNECTION_ERROR
errorType
invalid connection configuration
database_dropped / 57P04: invalid connection configuration errorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Connections SQL_CONNECTION_ERROR
errorType
pool error
pg pool closed/ending messages: pool error errorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Resources SQL_RESOURCE_LIMIT_REACHED
resourceType
memory
out_of_memory / 53200: memory resource limit
fdw_out_of_memory / HV001: memory resource limit
resourceType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Resources SQL_RESOURCE_LIMIT_REACHED
resourceType
disk
disk_full / 53100: disk resource limit resourceType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Resources SQL_RESOURCE_LIMIT_REACHED
resourceType
temp space
- -
Resources SQL_RESOURCE_LIMIT_REACHED
resourceType
connections
too_many_connections / 53300: connections resource limit resourceType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Resources SQL_RESOURCE_LIMIT_REACHED
resourceType
pool
- -
Resources SQL_RESOURCE_LIMIT_REACHED
resourceType
cpu
- -
Resources SQL_RESOURCE_LIMIT_REACHED
resourceType
file size
- -
Resources SQL_RESOURCE_LIMIT_REACHED insufficient_resources / 53000: resource limit reached
configuration_limit_exceeded / 53400: resource limit reached
program_limit_exceeded / 54000: resource limit reached
statement_too_complex / 54001: resource limit reached
too_many_columns / 54011: resource limit reached
too_many_arguments / 54023: resource limit reached
53: resource limit reached
54: resource limit reached
resourceType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Access SQL_AUTHENTICATION_ERROR invalid_password / 28P01: authentication error databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Access SQL_AUTHORIZATION_ERROR invalid_grantor / 0L000: authorization error
invalid_grant_operation / 0LP01: authorization error
invalid_authorization_specification / 28000: authorization error
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Access SQL_PERMISSION_DENIED insufficient_privilege / 42501: permission denied databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Access SQL_READ_ONLY_VIOLATION read_only_sql_transaction / 25006: read only violation databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Configuration SQL_CONFIGURATION_ERROR
configurationErrorType
configuration file
config_file_error / F0000: configuration file configuration error configurationErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Configuration SQL_CONFIGURATION_ERROR
configurationErrorType
lock file
lock_file_exists / F0001: lock file configuration error configurationErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Configuration SQL_CONFIGURATION_ERROR
configurationErrorType
runtime parameter
cant_change_runtime_param / 55P02: runtime parameter configuration error configurationErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
I/O SQL_IO_ERROR
ioErrorType
read
@electric-sql/pglite message No /dev/blob File or Blob provided to read from: read I/O error ioErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
I/O SQL_IO_ERROR
ioErrorType
write
- -
I/O SQL_IO_ERROR
ioErrorType
fsync
- -
I/O SQL_IO_ERROR
ioErrorType
truncate
- -
I/O SQL_IO_ERROR
ioErrorType
file stat
- -
I/O SQL_IO_ERROR
ioErrorType
lock
- -
I/O SQL_IO_ERROR
ioErrorType
unlock
- -
I/O SQL_IO_ERROR
ioErrorType
delete
- -
I/O SQL_IO_ERROR
ioErrorType
file not found
58P01: file not found I/O error
@electric-sql/pglite message Extension bundle not found: ...: file not found I/O error
undefined_file / 58P01: file not found I/O error
ioErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
I/O SQL_IO_ERROR
ioErrorType
access
- -
I/O SQL_IO_ERROR
ioErrorType
shared memory
- -
I/O SQL_IO_ERROR
ioErrorType
seek
@electric-sql/pglite message No /dev/blob File or Blob provided to llseek: seek I/O error ioErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
I/O SQL_IO_ERROR
ioErrorType
mmap
- -
I/O SQL_IO_ERROR
ioErrorType
path
- -
I/O SQL_IO_ERROR
ioErrorType
atomic write
- -
I/O SQL_IO_ERROR
ioErrorType
close
- -
I/O SQL_IO_ERROR
ioErrorType
reserved extension
- -
I/O SQL_IO_ERROR
ioErrorType
unknown
58030: unknown I/O error
58P02: unknown I/O error
SQLSTATE class 58: unknown I/O error
system_error / 58000: unknown I/O error
io_error / 58030: unknown I/O error
duplicate_file / 58P02: unknown I/O error
ioErrorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
External SQL_EXTERNAL_DATA_SOURCE_ERROR SQLSTATE class HV: external data source error
HV: external data source error
fdw_error / HV000: external data source error
fdw_function_sequence_error / HV010: external data source error
fdw_inconsistent_descriptor_information / HV021: external data source error
fdw_invalid_descriptor_field_identifier / HV091: external data source error
fdw_invalid_handle / HV00B: external data source error
fdw_invalid_option_index / HV00C: external data source error
fdw_invalid_option_name / HV00D: external data source error
fdw_invalid_use_of_null_pointer / HV009: external data source error
fdw_too_many_handles / HV014: external data source error
fdw_no_schemas / HV00P: external data source error
fdw_option_name_not_found / HV00J: external data source error
fdw_reply_handle / HV00K: external data source error
fdw_unable_to_create_execution / HV00L: external data source error
fdw_unable_to_create_reply / HV00M: external data source error
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Features SQL_FEATURE_NOT_SUPPORTED feature_not_supported / 0A000: feature not supported
MESSAGE_NOT_SUPPORTED (postgres.js): feature not supported
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Corruption SQL_DATABASE_CORRUPTED
corruptionType
database file
XX001: database file corruption
data_corrupted / XX001: database file corruption
corruptionType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Corruption SQL_DATABASE_CORRUPTED
corruptionType
index
XX002: index corruption
index_corrupted / XX002: index corruption
corruptionType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Corruption SQL_DATABASE_CORRUPTED
corruptionType
sequence
- -
Corruption SQL_DATABASE_CORRUPTED
corruptionType
virtual table
- -
Corruption SQL_DATABASE_CORRUPTED
corruptionType
filesystem
- -
Corruption SQL_DATABASE_CORRUPTED
corruptionType
checksum
- -
Internal SQL_INTERNAL_ERROR
errorType
engine internal
successful_completion / 00000: engine internal
01: engine internal
02: engine internal
internal_error / XX000: engine internal
warning / 01000: engine internal
dynamic_result_sets_returned / 0100C: engine internal
implicit_zero_bit_padding / 01008: engine internal
null_value_eliminated_in_set_function / 01003: engine internal
privilege_not_granted / 01007: engine internal
privilege_not_revoked / 01006: engine internal
string_data_right_truncation / 01004: engine internal
deprecated_feature / 01P01: engine internal
no_data / 02000: engine internal
no_additional_dynamic_result_sets_returned / 02001: engine internal
errorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Internal SQL_INTERNAL_ERROR
errorType
api misuse
postgres.js API misuse message; @electric-sql/pglite live query inactive message: api misuse errorType
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage
Fallback SQL_UNKNOWN ERROR: (Bun SQL): unknown SQL error
FATAL: (Bun SQL): unknown SQL error
PANIC: (Bun SQL): unknown SQL error
ERR_POSTGRES_SERVER_ERROR (Bun SQL): unknown SQL error
databaseErrorCode when available
databaseErrorNumber when available
databaseErrorMessage