↑↓ select↵ open⌫ change scopeOpen full search

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

Wiki / SQLSTATE

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}

38000, 2F000

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