↑↓ select ↵ open ⌫ change scope Open full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

Wiki / Protocol Messages / Backend messages

ErrorResponse

ErrorResponse is a backend protocol message. Identifies the message as an error.

Reading PostgreSQL 18.6.

Description

ErrorResponse is a backend protocol message. Identifies the message as an error.

Direction
Backend → frontend
First wire field
Byte1('E')
Field entries
4
Documented flow contexts
Start-up; Simple Query; Extended Query; Function Call; COPY Operations

Usage

ErrorResponse (B)

Framing and repetition

The complete definition below retains repetition, counts and conditional fields. A numbered table row is a documented field definition, not a fixed byte offset. Integer encodings and flow rules follow the same-version protocol chapter.

Wire fields in documented order

PositionFormatMeaning
1Byte1('E')Identifies the message as an error.
2Int32Length of message contents in bytes, including self.
3Byte1A code identifying the field type; if zero, this is the message terminator and no string follows. The presently defined field types are listed in Section 54.8 . Since more field types might be added in future, frontends should silently ignore fields of unrecognized type.
4StringThe field value.

Manual definition

Byte1('E')

Identifies the message as an error.

Int32

Length of message contents in bytes, including self.

The message body consists of one or more identified fields, followed by a zero byte as a terminator. Fields can appear in any order. For each field there is the following:

Byte1

A code identifying the field type; if zero, this is the message terminator and no string follows. The presently defined field types are listed in Section 54.8. Since more field types might be added in future, frontends should silently ignore fields of unrecognized type.

String

The field value.

Related entries

Documentation and source

Source build
Version
18.6
Build
https://ftp.postgresql.org/pub/source/v18.6/postgresql-18.6.tar.bz2
Source fingerprint
555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f

Compare versions

PostgreSQL 13 → 14: changed.

--- PostgreSQL 13
+++ PostgreSQL 14
@@ -10,7 +10,7 @@
       "format": "Int32"
     },
     {
-      "description": "A code identifying the field type; if zero, this is the message terminator and no string follows. The presently defined field types are listed in Section 52.8 . Since more field types might be added in future, frontends should silently ignore fields of unrecognized type.",
+      "description": "A code identifying the field type; if zero, this is the message terminator and no string follows. The presently defined field types are listed in Section 53.8 . Since more field types might be added in future, frontends should silently ignore fields of unrecognized type.",
       "format": "Byte1"
     },
     {

Compares recorded interfaces and attributes. Source fingerprints and build metadata are excluded; an absent sample is not proof of the introduction or removal release.

Related entries

Export JSON · Back to Protocol Messages · Recorded in PostgreSQL 10 through 20; the first sample is not necessarily its introduction.