38003 — prohibited_sql_statement_attempted
The Class 38 member is defined, but no resolved PostgreSQL 18.6 core/contrib report group was found. It is distinct from Class 2F member 2F003 even though the condition names match.
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
- External Routine Exception
- condition name
- prohibited_sql_statement_attempted
- lang
- en
- sqlstate
- 38003
Definition PG 18
38003
At a glance {#at-a-glance}
The Class 38 member is defined, but no resolved PostgreSQL 18.6 core/contrib report group was found. It is distinct from Class 2F member 2F003 even though the condition names match.
Meaning {#meaning}
The external-routine class identifies the standard context; the actual prohibited statement, routine language, and owner remain unknown until a source path or message is found.
Messages {#messages}
No fixed PostgreSQL message variant was adopted because the bounded scan did not resolve a native report group.
Diagnosis {#diagnosis}
Preserve the returned class/member code and inspect the external routine contract. Do not import dblink or postgres_fdw 2F003 messages into 38003.
Response {#response}
Repair the owner’s routine or call contract according to its fixed documentation; no PostgreSQL-native repair was confirmed.
Versions {#versions}
The locked catalogue places this condition at least by PostgreSQL 7.4. The facts block lists the published snapshots; source-path status is limited to the fixed PostgreSQL 18.6 evidence below.
Related {#related}
Sources {#sources}
See the fixed source links and message limits in the structured evidence record.
Compare versions
SQLSTATE evidence and recorded runtime versions
claims · identity
{
"claim_id": "identity",
"limits": "",
"method": "Read the fixed errcodes definition row, severity, and macro.",
"position": 0,
"runtime": [],
"sources": [
"src.errcodes.18.6"
],
"statement": "38003 is prohibited_sql_statement_attempted in SQLSTATE Class 38."
}claims · scan-boundary
{
"claim_id": "scan-boundary",
"limits": "The scan does not cover external wrappers, drivers, extensions, remote systems, or user code; absence from this scan is not absolute.",
"method": "Compare resolved report groups with the fixed macro mapping.",
"position": 1,
"runtime": [],
"sources": [
"src.calls.REL_18_6",
"src.errcodes.18.6"
],
"statement": "No resolved 38003 report group was found in the locked PostgreSQL 18.6 core/contrib call scan."
}claims · history-boundary
{
"claim_id": "history-boundary",
"limits": "Definition presence is not an emitting-path observation.",
"method": "Compare canonical release facts with the available history boundary.",
"position": 2,
"runtime": [],
"sources": [
"src.errcodes.18.6"
],
"statement": "Locked release definitions establish catalogue presence from 7.4; they do not establish a precise introducing release or runtime use."
}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#L303"
}sources · src.calls.REL_18_6
{
"commit": "",
"docs_url": "",
"kind": "local_artifact",
"location": "",
"path": "raw/calls/REL_18_6.jsonl",
"position": 1,
"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:4f23d6b238307d7d13aa09b3757d411ed482586d543de480f37d40615e64cf94
Text language: en · english-manuals:4f23d6b238307d7d13aa09b3757d411ed482586d543de480f37d40615e64cf94