HV021 — fdw_inconsistent_descriptor_information
HV021 identifies inconsistent information in an FDW descriptor. The 18.6 core/contrib call scan has no resolved HV021 report group, so it does not identify a core descriptor check or message.
English manual coverage begins with PostgreSQL 8.1. Source history and runtime observations have their own recorded version boundaries.
Reading PG 18·Select a recorded version
- aliases
- Unknown
- class name
- Foreign Data Wrapper Error (SQL/MED)
- condition name
- fdw_inconsistent_descriptor_information
- lang
- en
- sqlstate
- HV021
Definition PG 18
HV021 — fdw_inconsistent_descriptor_information
At a glance {#at-a-glance}
HV021 identifies inconsistent information in an FDW descriptor. The 18.6 core/contrib call scan has no resolved HV021 report group, so it does not identify a core descriptor check or message.
Meaning {#meaning}
The descriptor may describe columns, types, names, lengths, or another wrapper-owned result contract. fdwapi.h exposes callback and slot boundaries, but it does not say which descriptor mismatch maps to this SQLSTATE.
Messages and diagnostics {#messages}
No resolved 18.6 core/contrib message variant was found. Preserve the full diagnostic, descriptor kind, expected and actual metadata when shown, callback phase, wrapper/driver version, and relation identity.
Diagnosis {#diagnosis}
Compare the descriptor supplied by the wrapper with the descriptor expected by the callback or consumer. Check schema changes, type and column order, nullability or length metadata only when the wrapper reports them; do not infer a mismatch from a generic conversion failure.
Response {#response}
Correct the wrapper's descriptor construction or the remote/schema contract it actually identifies, then recreate the affected plan or object. Repeating the same operation without changing the mismatched metadata will not repair the descriptor.
Versions {#versions}
HV021 is present in the locked definition snapshots from 9.1.24 through 18.6 and 19 Beta 3, with known_present_by 9.1.0. The available pre-9 definition material does not establish an exact introduction release.
Related {#related}
HV008 concerns an FDW column sequence; HV091 concerns a descriptor field identifier; HV024 concerns an attribute value.
Sources {#sources}
errcodes.txt— definition, SHA-2566e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba.fdwapi.h— generic FDW callback boundary.- Structured evidence — fixed 18.6 sources and bounded scan.
Compare versions
SQLSTATE evidence and recorded runtime versions
claims · identity
{
"claim_id": "identity",
"limits": "",
"method": "Read the fixed errcodes definition row and macro.",
"position": 0,
"runtime": [],
"sources": [
"src.errcodes.18.6"
],
"statement": "HV021 is fdw_inconsistent_descriptor_information in SQL/MED Class HV."
}claims · api-boundary
{
"claim_id": "api-boundary",
"limits": "Generic API context is background only and does not prove an emitting path for this SQLSTATE.",
"method": "Read the fixed FDW callback signatures and FdwRoutine structure.",
"position": 1,
"runtime": [],
"sources": [
"src.fdwapi.18.6"
],
"statement": "The condition name identifies inconsistent descriptor information at an FDW boundary. The descriptor fields and producer/consumer contract remain implementation-specific."
}claims · scan-boundary
{
"claim_id": "scan-boundary",
"limits": "This scan does not cover external wrappers, drivers, remote systems, or user callbacks; absence from the scan is not an absolute absence claim.",
"method": "Compare resolved report groups with the fixed macro mapping.",
"position": 2,
"runtime": [],
"sources": [
"src.calls.REL_18_6",
"src.errcodes.18.6"
],
"statement": "No resolved HV021 report group was found in the locked PostgreSQL 18.6 core/contrib call scan."
}claims · history-boundary
{
"claim_id": "history-boundary",
"limits": "Definition presence does not prove runtime use.",
"method": "Compare the canonical release-definition facts with the available pre-9 source boundary.",
"position": 3,
"runtime": [],
"sources": [
"src.errcodes.18.6"
],
"statement": "The locked release definition snapshots establish presence from the known 9.1.0 boundary; the available pre-9 material does not establish an exact introduction release."
}sources · src.errcodes.18.6
{
"commit": "724edf9bde9d356724ad384a2e196edc3c9f80f7",
"docs_url": "",
"kind": "upstream_source",
"location": "",
"path": "src/backend/utils/errcodes.txt",
"position": 0,
"sha256": "6e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba",
"source_id": "src.errcodes.18.6",
"tag": "REL_18_6",
"url": "https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/errcodes.txt"
}sources · src.fdwapi.18.6
{
"commit": "724edf9bde9d356724ad384a2e196edc3c9f80f7",
"docs_url": "",
"kind": "upstream_source",
"location": "",
"path": "src/include/foreign/fdwapi.h",
"position": 1,
"sha256": "572ba892e6435ca92d3b3bc84dde5bbd3160cc3a082693daab8daa835c4d2cd7",
"source_id": "src.fdwapi.18.6",
"tag": "REL_18_6",
"url": "https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/include/foreign/fdwapi.h"
}sources · src.calls.REL_18_6
{
"commit": "",
"docs_url": "",
"kind": "local_artifact",
"location": "",
"path": "raw/calls/REL_18_6.jsonl",
"position": 2,
"sha256": "9ee8a0e81d8f0825c5c1ae45583439859a26e602bdd4ce2f2a62aa278867ccbf",
"source_id": "src.calls.REL_18_6",
"tag": "",
"url": ""
}Source references
Full definition and evidence JSON
Definition sources
center · PostgreSQL 18 · english-manuals:71d6fe3361cc9940f26a1f6325d6c801096169d7cb9a524588b6fed347cb07f0
Text language: en · english-manuals:71d6fe3361cc9940f26a1f6325d6c801096169d7cb9a524588b6fed347cb07f0