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
| Position | Format | Meaning |
|---|---|---|
| 1 | Byte1('E') | Identifies the message as an error. |
| 2 | Int32 | Length of message contents in bytes, including self. |
| 3 | 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. |
| 4 | String | The 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 16 → 17: changed.
--- PostgreSQL 16
+++ PostgreSQL 17
@@ -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 55.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.