# HV00L — fdw_unable_to_create_execution

> PostgreSQL SQLSTATE HV00L identifies an FDW failure to create an execution object. Inspect the wrapper's remote execution setup and resource contract.
---

# HV00L — fdw_unable_to_create_execution

## At a glance {#at-a-glance}

`HV00L` denotes an FDW implementation's inability to create a remote execution object. No direct 18.6 core/contrib report group was resolved, so the object, remote API, and message are wrapper-specific.

<!-- BEGIN SQLSTATE FACTS: generated by scripts/generate.py; do not edit -->

| Field | Value |
| --- | --- |
| SQLSTATE | `HV00L` |
| Condition | `fdw_unable_to_create_execution` |
| Status | `active` |
| Known present by | `9.1.0` |
| Locked snapshots | `9.1.24, 9.2.24, 9.3.25, 9.4.26, 9.5.25, 9.6.24, 10.23, 11.22, 12.22, 13.23, 14.24, 15.19, 16.15, 17.11, 18.6, 19beta3` |
| Macros | `ERRCODE_FDW_UNABLE_TO_CREATE_EXECUTION` |
| Aliases | `—` |

<!-- source facts: data/errcodes/HV00L.json -->
<!-- END SQLSTATE FACTS -->

## Meaning {#meaning}

The condition name describes failure while a wrapper is creating an execution object before using it for the requested operation. It might involve a remote statement, cursor, plan, or driver object; only the wrapper source can identify which object and stage apply.

## Messages and diagnostics {#messages}

No fixed core message is confirmed. Record the wrapper, remote operation, connection state, option set, and the underlying driver/remote diagnostic if one exists.

## Diagnosis {#diagnosis}

Read the wrapper's execution creation function and classify the failure as local allocation, remote rejection, invalid options, or connection state. Check server/wrapper/driver versions and whether a prior request left the connection in an unusable state.

## Response {#response}

Correct the identified option or connection state and recreate the execution object through the wrapper API. For a write, confirm that no remote execution began before repeating it; the condition alone does not establish that boundary.

## Versions {#versions}

The directory contains `HV00L` from 9.1.0 through 18.6 and 19 Beta 3. The available pre-9 definitions do not show it.

## Related {#related}

[`HV00M`](../hv00m/) concerns reply-object creation; [`HV00N`](../hv00n/) concerns connection establishment; [`HV001`](../hv001/) covers a specific option-allocation path.

## Sources {#sources}

- [`errcodes.txt`](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/errcodes.txt#L483) — definition, SHA-256 `6e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba`.
- [`fdwapi.h`](https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/include/foreign/fdwapi.h#L24-L55) — callback boundary.
- [Structured evidence](../data/evidence/hv00l.json) — bounded source scan.
