08003 — connection_does_not_exist
SQLSTATE 08003 is connection_does_not_exist in Class 08. 08003 identifies a missing named connection handle in the current dblink backend session. It is a handle-lifecycle error, not evidence that the remote server is down (08001) or that an established socket failed (08006). The selected path first disconnects missing_remote, then proves a real handle can be opened, queried, and disconnected.
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
- Connection Exception
- condition name
- connection_does_not_exist
- lang
- en
- sqlstate
- 08003
Definition PG 18
08003
At a glance {#at-a-glance}
SQLSTATE 08003 is connection_does_not_exist in Class 08. 08003 identifies a missing named connection handle in the current dblink backend session. It is a handle-lifecycle error, not evidence that the remote server is down (08001) or that an established socket failed (08006). The selected path first disconnects missing_remote, then proves a real handle can be opened, queried, and disconnected.
Meaning {#meaning}
This condition comes from the dblink handle lookup, before any remote SQL is run: the current backend has no named connection matching the request. The primary is assembled as connection "%s" not available, so the name identifies the local handle lifecycle, not remote reachability. A missing handle is therefore distinct from 08001 establishment failure and 08006 loss of an established connection.
The lookup is local to one PostgreSQL backend. A pool may give two clients the same application-level connection name while their dblink handle maps are different; creating working_remote on one backend does not repair missing_remote on another. The fixed branch has no DETAIL or HINT, so the quoted handle name and the session that issued the call are the first facts to preserve.
Diagnosis {#diagnosis}
Check the exact dblink name and the session or pool connection that owns it. The primary is dynamically assembled as connection "missing_remote" not available; in the selected autocommit run the failed lookup stays IDLE, and the repaired handle returns remote 1 before dblink_disconnect returns OK.
Separate a lookup failure from a lost socket. If the name was never opened on this backend, inspect the handle-creation path and pool checkout; if it was opened and a later remote call fails, collect that call's diagnostics before deciding whether to disconnect and recreate it. In an explicit local transaction, this dblink ERROR follows the normal transaction-abort boundary and requires rollback or a deliberately established savepoint before unrelated statements. The selected IDLE result is specifically the autocommit case.
Response {#response}
Create the named handle on the same session that will use it, or make an absent-handle disconnect explicitly idempotent. After a real remote operation, reconcile its result before closing or recreating a handle; do not reconnect every pool member merely because one session forgot a dblink name.
For autocommit, opening, probing, and disconnecting on the same backend is a complete lifecycle. For an explicit transaction, recover the local transaction first, then recreate the handle on that same backend; a successful new handle does not tell you whether an earlier remote operation committed. Keep handle names and ownership visible in pool diagnostics so a reconnect does not silently move work to another session.
Observed diagnostics {#messages}
The fixed handle-lookup branch emits ERROR with primary connection "%s" not available; the requested handle name is dynamic and there is no fixed DETAIL or HINT. A client exception without this server diagnostic does not establish 08003.
The selected primary connection "missing_remote" not available is therefore a concrete name lookup, not a server reachability test. The fixed ERROR severity can leave an explicit transaction in INERROR; it left the selected autocommit owner IDLE because no surrounding transaction was open.
Representative case {#case}
The SQL block asks dblink to disconnect a handle that was never opened, then probes the same session.
The runner_host, runner_port, runner_db, and runner_user values are runner placeholders. Replace them with a target and login role for which the owner has dblink and remote-connection privileges. The handle is session-local: run the missing lookup, open/probe, and disconnect on the same backend; the selected case uses autocommit.
CREATE EXTENSION IF NOT EXISTS dblink;
SELECT dblink_disconnect('missing_remote');
SELECT dblink_connect('working_remote', 'host=runner_host port=runner_port dbname=runner_db user=runner_user connect_timeout=5');
SELECT * FROM dblink('working_remote', 'SELECT 1') AS result(value integer);
SELECT dblink_disconnect('working_remote');
SELECT 1;
The selected 18.6 run reports SQLSTATE 08003, primary connection "missing_remote" not available, and leaves the owner session IDLE after the failed operation. The controlled repair opened the named handle with OK, returned remote 1, and disconnected it with OK; the final owner probe returned 1 and IDLE. The 10.21 selected run passed the same assertions.
The downloadable case and evidence projections are 08003 case JSON and authored evidence. The runner manifest is verify/cases/08003/cases.json; the page SQL is checked against its shared registry before publication.
Versions {#versions}
The generated facts table records the locked catalogue snapshots and earliest observed definition. The selected natural runtime scope is PostgreSQL 18.6 and 10.21; this does not infer behavior for every intermediate release.
Related {#related}
Sources {#sources}
src.dblink-not-available.18.6—contrib/dblink/dblink.catREL_18_6commit724edf9bde9d356724ad384a2e196edc3c9f80f7; fixed blob SHA-256e4cfaec3a0a1e5d23fded584725e0f6cf7a17321ad99e5fe046e8b7f97416f15(source).src.dblink-not-available.10.23—contrib/dblink/dblink.catREL_10_23commit02991e79f8f58bc208f05dcc8af0c62dbe0a6ea4; fixed blob SHA-2562d542cc722ba361bd59990aaed7fe7c0f8e147155df5e5fcd56ee03b4dd27c61(source).src.calls.REL_18_6/src.calls.REL_10_23— fixed local call scans, SHA-2569ee8a0e81d8f0825c5c1ae45583439859a26e602bdd4ce2f2a62aa278867ccbf/00d16d3eb01b71ccf1b245c8f3102f9d0ec9f36fb02777b8dd1b99fcb263040c; these scans preserve the resolved call context used by the claims.
Compare versions
SQLSTATE evidence and recorded runtime versions
cases · dblink_missing_connection
{
"assertions": [
"The selected server diagnostic has the expected SQLSTATE",
"The selected recovery/probe assertions pass",
"Runner-owned resources are cleaned up"
],
"case_id": "dblink_missing_connection",
"cleanup": "Drop the case schema with an owner connection.",
"has_snippet": true,
"position": 0,
"preconditions": [
"A runner-owned disposable target is provisioned."
],
"repair": "Follow the case-specific repair statements and verify the resulting state.",
"trigger": "Look up a dblink name that was never opened.",
"versions": [
"10",
"18"
]
}claims · identity.class-and-condition
{
"claim_id": "identity.class-and-condition",
"limits": "Directory identity does not identify every backend or client path.",
"method": "Read the fixed errcodes.txt definition and the locked catalogue metadata.",
"position": 0,
"runtime": [],
"sources": [
"src.errcodes.18.6"
],
"statement": "08003 is the connection_does_not_exist condition in Class 08."
}claims · mechanism.backend-path
{
"claim_id": "mechanism.backend-path",
"limits": "Other calls can retain the same SQLSTATE with different context or text.",
"method": "Trace the resolved source call records at the fixed release commits and compare their dynamic message fields.",
"position": 1,
"runtime": [],
"sources": [
"src.dblink-not-available.18.6",
"src.dblink-not-available.10.23"
],
"statement": "The fixed source paths associated with 08003 report the condition in the mechanism selected for this page."
}claims · runtime.representative-case
{
"claim_id": "runtime.representative-case",
"limits": "This covers the selected case and versions only; it does not generalize to every driver, proxy, or intermediate release.",
"method": "Run the shared registry case on isolated runner-owned latest and PG10 targets; inspect the final summaries and raw results.",
"position": 2,
"runtime": [
"runtime.08003-dblink-repair-latest.latest",
"runtime.08003-dblink-repair-pg10c.pg10"
],
"sources": [
"snippet-registry.08003",
"manifest.08003"
],
"statement": "The selected dblink_missing_connection case passed with the expected structured diagnostics, recovery assertions, and cleanup on PostgreSQL 18.6 and 10.21."
}claims · transaction-boundary
{
"claim_id": "transaction-boundary",
"limits": "No explicit-transaction dblink runtime was selected in this batch; the transaction guidance is the general ERROR boundary.",
"method": "Combine the fixed dblink handle lookup source path with the official transaction and savepoint recovery contract.",
"position": 3,
"runtime": [],
"sources": [
"src.dblink-not-available.18.6",
"doc.transactions.18"
],
"statement": "The selected dblink handle lookup is an ERROR observed under autocommit, where the owner session remains IDLE; inside an explicit transaction, the same ERROR follows PostgreSQL's rollback or intentional-savepoint recovery boundary."
}claims · versions.catalogue-boundary
{
"claim_id": "versions.catalogue-boundary",
"limits": "Presence in a definition file is not an exact behavioral introduction; the two runtime targets do not prove all middle versions.",
"method": "Read the generated facts block and locked manifest, then compare the selected target summaries.",
"position": 4,
"runtime": [],
"sources": [
"src.errcodes.18.6",
"src.calls.REL_18_6",
"src.calls.REL_10_23"
],
"statement": "The locked catalogue records 08003 in the listed snapshots; the runtime comparison here is limited to PostgreSQL 18.6 and 10.21."
}messages · message.dblink-handle
{
"limits": "",
"message_id": "message.dblink-handle",
"path": "",
"position": 0,
"raw": {
"id": "message.dblink-handle",
"primary_template": "connection \"%s\" not available",
"severity_source": "explicit ERROR",
"sources": [
"src.dblink-not-available.18.6",
"src.dblink-not-available.10.23"
],
"sqlstate": "08003"
},
"severity": "explicit ERROR",
"sources": [
"src.dblink-not-available.18.6",
"src.dblink-not-available.10.23"
],
"templates": [
{
"kind": "primary",
"literal": "connection \" \" not available",
"position": 0,
"role": "",
"template": "connection \"%s\" not available"
}
]
}runtimes · runtime.08003-dblink-repair-latest.latest · 18.6 (Homebrew) · passed
{
"cases": [
"dblink_missing_connection"
],
"limits": "Disposable runner-owned target only; this is a bounded mechanism case, not a guarantee for every client or network path.",
"position": 0,
"raw": {
"assertions": [
{
"expected": "08003",
"name": "missing dblink connection SQLSTATE",
"observed": "08003",
"passed": true
},
{
"expected": "connection not available",
"name": "missing dblink connection diagnostic",
"observed": "connection \"missing_remote\" not available",
"passed": true
},
{
"expected": "IDLE",
"name": "lookup failure leaves session usable",
"observed": "IDLE",
"passed": true
},
{
"expected": "OK and remote SELECT 1",
"name": "missing handle path can open a real handle",
"observed": {
"open": "OK",
"remote": 1
},
"passed": true
},
{
"expected": "OK",
"name": "real handle is disconnected",
"observed": "OK",
"passed": true
},
{
"expected": "SELECT 1 and IDLE",
"name": "owner session remains usable",
"observed": {
"probe": 1,
"status": "IDLE"
},
"passed": true
}
],
"case_manifest": "verify/cases/08003/cases.json",
"case_manifest_sha256": "8ea12e9b1ce6097559da1eb41f880d946356274d5147465ea33b96190104a8ae",
"cases": [
"dblink_missing_connection"
],
"cleanup": {
"case": {
"errors": [],
"passed": true
},
"target_stop": {
"argv": [
"/opt/homebrew/Cellar/postgresql@18/18.6/bin/pg_ctl",
"-D",
"/Users/vonng/pgcenter/err-code/.cache/runtime/08003-dblink-repair-latest/latest/data",
"-m",
"fast",
"-w",
"stop"
],
"elapsed_seconds": 0.111,
"returncode": 0,
"stderr": "",
"stdout": "waiting for server to shut down.... done\nserver stopped\n"
}
},
"environment": {
"lc_messages": "C",
"libpq_version": "18.6",
"locale": "en_US.UTF-8",
"log_destination": "csvlog,jsonlog",
"machine": "arm64",
"platform": "macOS-26.6.2-arm64-arm-64bit-Mach-O",
"psycopg_version": "3.3.5",
"python_version": "3.14.6 (main, Jun 10 2026, 10:03:53) [Clang 21.0.0 (clang-2100.0.123.102)]",
"server_version": "18.6 (Homebrew)",
"server_version_num": "180006",
"target_kind": "latest"
},
"id": "runtime.08003-dblink-repair-latest.latest",
"kind": "runtime_observation",
"limits": "Disposable runner-owned target only; this is a bounded mechanism case, not a guarantee for every client or network path.",
"observed": {
"connection_autocommit": true,
"connection_scope": "server-side dblink name lookup followed by a real runner-owned dblink handle",
"dblink_repair": {
"disconnected": "OK",
"opened": "OK",
"remote_probe": 1
},
"diagnostic": {
"column_name": null,
"constraint_name": null,
"context": null,
"datatype_name": null,
"exception_type": "ConnectionDoesNotExist",
"internal_position": null,
"internal_query": null,
"message_detail": null,
"message_hint": null,
"message_primary": "connection \"missing_remote\" not available",
"schema_name": null,
"severity": "ERROR",
"severity_nonlocalized": "ERROR",
"source_file": "dblink.c",
"source_function": "dblink_conn_not_avail",
"source_line": "195",
"sqlstate": "08003",
"statement_position": null,
"table_name": null,
"text": "connection \"missing_remote\" not available"
},
"probe": 1,
"statuses": {
"after_error": "IDLE",
"final": "IDLE"
}
},
"raw": "verify/results/08003-dblink-repair-latest/latest/raw.jsonl",
"raw_sha256": "170d804e9fc4fe7b1ef2d7cf85ebb16c451144178d275b8bd8720934f7c584b5",
"run_id": "08003-dblink-repair-latest",
"server_version": "18.6 (Homebrew)",
"server_version_num": 180006,
"snippet_registry": {
"path": "verify/cases/08003/snippets.json",
"sha256": "a5f2c89616e3b311eec9b54a7d2a5c454bfad02b53896f3596bf5f963354d4a0"
},
"status": "passed",
"summary": "verify/results/08003-dblink-repair-latest/latest/summary.json",
"summary_sha256": "6700d31ff0162861b00242d054665fc0644487d1f78eb3b7c663c1e95b077046",
"target": "latest"
},
"run_id": "08003-dblink-repair-latest",
"runtime_id": "runtime.08003-dblink-repair-latest.latest",
"server_version": "18.6 (Homebrew)",
"status": "passed",
"target": "latest"
}runtimes · runtime.08003-dblink-repair-pg10c.pg10 · 10.21 (Debian 10.21-1.pgdg90+1) · passed
{
"cases": [
"dblink_missing_connection"
],
"limits": "Disposable runner-owned target only; this is a bounded mechanism case, not a guarantee for every client or network path.",
"position": 1,
"raw": {
"assertions": [
{
"expected": "08003",
"name": "missing dblink connection SQLSTATE",
"observed": "08003",
"passed": true
},
{
"expected": "connection not available",
"name": "missing dblink connection diagnostic",
"observed": "connection \"missing_remote\" not available",
"passed": true
},
{
"expected": "IDLE",
"name": "lookup failure leaves session usable",
"observed": "IDLE",
"passed": true
},
{
"expected": "OK and remote SELECT 1",
"name": "missing handle path can open a real handle",
"observed": {
"open": "OK",
"remote": 1
},
"passed": true
},
{
"expected": "OK",
"name": "real handle is disconnected",
"observed": "OK",
"passed": true
},
{
"expected": "SELECT 1 and IDLE",
"name": "owner session remains usable",
"observed": {
"probe": 1,
"status": "IDLE"
},
"passed": true
}
],
"case_manifest": "verify/cases/08003/cases.json",
"case_manifest_sha256": "8ea12e9b1ce6097559da1eb41f880d946356274d5147465ea33b96190104a8ae",
"cases": [
"dblink_missing_connection"
],
"cleanup": {
"case": {
"errors": [],
"passed": true
},
"target_stop": {
"cleanup": {
"argv": [
"/usr/local/bin/docker",
"rm",
"-f",
"-v",
"sqlstate08003_08003dblinkrepairpg10c_pg10"
],
"elapsed_seconds": 0.382,
"returncode": 0,
"stderr": "",
"stdout": "sqlstate08003_08003dblinkrepairpg10c_pg10\n"
},
"inspect": {
"argv": [
"/usr/local/bin/docker",
"inspect",
"sqlstate08003_08003dblinkrepairpg10c_pg10"
],
"elapsed_seconds": 0.015,
"returncode": 0,
"stderr": "",
"stdout": "[\n {\n \"Id\": \"025cd355a7e4c5c60fc61c525bcc661349a7eb300691a6ff57c2e9941b491026\",\n \"Created\": \"2026-09-09T15:34:24.994177964Z\",\n \"Path\": \"docker-entrypoint.sh\",\n \"Args\": [\n \"postgres\",\n \"-c\",\n \"listen_addresses=*\",\n \"-c\",\n \"log_destination=csvlog\",\n \"-c\",\n \"logging_collector=on\",\n \"-c\",\n \"log_directory=log\",\n \"-c\",\n \"log_filename=postgresql-%Y%m%d%H%M%S.log\",\n \"-c\",\n \"log_min_messages=error\",\n \"-c\",\n \"log_min_error_statement=error\",\n \"-c\",\n \"log_error_verbosity=verbose\",\n \"-c\",\n \"wal_level=logical\",\n \"-c\",\n \"max_wal_senders=10\",\n \"-c\",\n \"max_replication_slots=10\"\n ],\n \"State\": {\n \"Status\": \"running\",\n \"Running\": true,\n \"Paused\": false,\n \"Restarting\": false,\n \"OOMKilled\": false,\n \"Dead\": false,\n \"Pid\": 57740,\n \"ExitCode\": 0,\n \"Error\": \"\",\n \"StartedAt\": \"2026-09-09T15:34:25.105205547Z\",\n \"FinishedAt\": \"0001-01-01T00:00:00Z\"\n },\n \"Image\": \"sha256:b2baf8998630663d21370da06387c950e587071bdd307ee34e661cdcc7442bcc\",\n \"ResolvConfPath\": \"/var/lib/docker/containers/025cd355a7e4c5c60fc61c525bcc661349a7eb300691a6ff57c2e9941b491026/resolv.conf\",\n \"HostnamePath\": \"/var/lib/docker/containers/025cd355a7e4c5c60fc61c525bcc661349a7eb300691a6ff57c2e9941b491026/hostname\",\n \"HostsPath\": \"/var/lib/docker/containers/025cd355a7e4c5c60fc61c525bcc661349a7eb300691a6ff57c2e9941b491026/hosts\",\n \"LogPath\": \"/var/lib/docker/containers/025cd355a7e4c5c60fc61c525bcc661349a7eb300691a6ff57c2e9941b491026/025cd355a7e4c5c60fc61c525bcc661349a7eb300691a6ff57c2e9941b491026-json.log\",\n \"Name\": \"/sqlstate08003_08003dblinkrepairpg10c_pg10\",\n \"RestartCount\": 0,\n \"Driver\": \"overlayfs\",\n \"Platform\": \"linux\",\n \"MountLabel\": \"\",\n \"ProcessLabel\": \"\",\n \"AppArmorProfile\": \"\",\n \"ExecIDs\": null,\n \"HostConfig\": {\n \"Binds\": null,\n \"ContainerIDFile\": \"\",\n \"LogConfig\": {\n \"Type\": \"json-file\",\n \"Config\": {}\n },\n \"NetworkMode\": \"bridge\",\n \"PortBindings\": {\n \"5432/tcp\": [\n {\n \"HostIp\": \"127.0.0.1\",\n \"HostPort\": \"\"\n }\n ]\n },\n \"RestartPolicy\": {\n \"Name\": \"no\",\n \"MaximumRetryCount\": 0\n },\n \"AutoRemove\": false,\n \"VolumeDriver\": \"\",\n \"VolumesFrom\": null,\n \"ConsoleSize\": [\n 0,\n 0\n ],\n \"CapAdd\": null,\n \"CapDrop\": null,\n \"CgroupnsMode\": \"private\",\n \"Dns\": null,\n \"DnsOptions\": [],\n \"DnsSearch\": [],\n \"ExtraHosts\": null,\n \"GroupAdd\": null,\n \"IpcMode\": \"private\",\n \"Cgroup\": \"\",\n \"Links\": null,\n \"OomScoreAdj\": 0,\n \"PidMode\": \"\",\n \"Privileged\": false,\n \"PublishAllPorts\": false,\n \"ReadonlyRootfs\": false,\n \"SecurityOpt\": null,\n \"UTSMode\": \"\",\n \"UsernsMode\": \"\",\n \"ShmSize\": 67108864,\n \"Runtime\": \"runc\",\n \"Isolation\": \"\",\n \"CpuShares\": 0,\n \"Memory\": 0,\n \"NanoCpus\": 0,\n \"CgroupParent\": \"\",\n \"BlkioWeight\": 0,\n \"BlkioWeightDevice\": [],\n \"BlkioDeviceReadBps\": [],\n \"BlkioDeviceWriteBps\": [],\n \"BlkioDeviceReadIOps\": [],\n \"BlkioDeviceWriteIOps\": [],\n \"CpuPeriod\": 0,\n \"CpuQuota\": 0,\n \"CpuRealtimePeriod\": 0,\n \"CpuRealtimeRuntime\": 0,\n \"CpusetCpus\": \"\",\n \"CpusetMems\": \"\",\n \"Devices\": [],\n \"DeviceCgroupRules\": null,\n \"DeviceRequests\": null,\n \"MemoryReservation\": 0,\n \"MemorySwap\": 0,\n \"MemorySwappiness\": null,\n \"OomKillDisable\": null,\n \"PidsLimit\": null,\n \"Ulimits\": [],\n \"CpuCount\": 0,\n \"CpuPercent\": 0,\n \"IOMaximumIOps\": 0,\n \"IOMaximumBandwidth\": 0,\n \"MaskedPaths\": [\n \"/proc/acpi\",\n \"/proc/asound\",\n \"/proc/interrupts\",\n \"/proc/kcore\",\n \"/proc/keys\",\n \"/proc/latency_stats\",\n \"/proc/sched_debug\",\n \"/proc/scsi\",\n \"/proc/timer_list\",\n \"/proc/timer_stats\",\n \"/sys/devices/virtual/powercap\",\n \"/sys/firmware\"\n ],\n \"ReadonlyPaths\": [\n \"/proc/bus\",\n \"/proc/fs\",\n \"/proc/irq\",\n \"/proc/sys\",\n \"/proc/sysrq-trigger\"\n ]\n },\n \"Storage\": {\n \"RootFS\": {\n \"Snapshot\": {\n \"Name\": \"overlayfs\"\n }\n }\n },\n \"Mounts\": [\n {\n \"Type\": \"volume\",\n \"Name\": \"3974c6b731a2f5565901139f85b1dcbc7c493ca42171e31dd5141547c819ec65\",\n \"Source\": \"/var/lib/docker/volumes/3974c6b731a2f5565901139f85b1dcbc7c493ca42171e31dd5141547c819ec65/_data\",\n \"Destination\": \"/var/lib/postgresql/data\",\n \"Driver\": \"local\",\n \"Mode\": \"\",\n \"RW\": true,\n \"Propagation\": \"\"\n }\n ],\n \"Config\": {\n \"Hostname\": \"025cd355a7e4\",\n \"Domainname\": \"\",\n \"User\": \"\",\n \"AttachStdin\": false,\n \"AttachStdout\": false,\n \"AttachStderr\": false,\n \"ExposedPorts\": {\n \"5432/tcp\": {}\n },\n \"Tty\": false,\n \"OpenStdin\": false,\n \"StdinOnce\": false,\n \"Env\": [\n \"POSTGRES_HOST_AUTH_METHOD=trust\",\n \"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/lib/postgresql/10/bin\",\n \"GOSU_VERSION=1.14\",\n \"LANG=en_US.utf8\",\n \"PG_MAJOR=10\",\n \"PG_VERSION=10.21-1.pgdg90+1\",\n \"PGDATA=/var/lib/postgresql/data\"\n ],\n \"Cmd\": [\n \"postgres\",\n \"-c\",\n \"listen_addresses=*\",\n \"-c\",\n \"log_destination=csvlog\",\n \"-c\",\n \"logging_collector=on\",\n \"-c\",\n \"log_directory=log\",\n \"-c\",\n \"log_filename=postgresql-%Y%m%d%H%M%S.log\",\n \"-c\",\n \"log_min_messages=error\",\n \"-c\",\n \"log_min_error_statement=error\",\n \"-c\",\n \"log_error_verbosity=verbose\",\n \"-c\",\n \"wal_level=logical\",\n \"-c\",\n \"max_wal_senders=10\",\n \"-c\",\n \"max_replication_slots=10\"\n ],\n \"Image\": \"postgres@sha256:b2baf8998630663d21370da06387c950e587071bdd307ee34e661cdcc7442bcc\",\n \"Volumes\": {\n \"/var/lib/postgresql/data\": {}\n },\n \"WorkingDir\": \"\",\n \"Entrypoint\": [\n \"docker-entrypoint.sh\"\n ],\n \"Labels\": {},\n \"StopSignal\": \"SIGINT\",\n \"StopTimeout\": 1\n },\n \"NetworkSettings\": {\n \"SandboxID\": \"706850bbbb1bb9a05c398b4856d1156fcb710a9f2c1001ffb59b6fddc585fbe4\",\n \"SandboxKey\": \"/var/run/docker/netns/706850bbbb1b\",\n \"Ports\": {\n \"5432/tcp\": [\n {\n \"HostIp\": \"127.0.0.1\",\n \"HostPort\": \"62378\"\n }\n ]\n },\n \"Networks\": {\n \"bridge\": {\n \"IPAMConfig\": null,\n \"Links\": null,\n \"Aliases\": null,\n \"DriverOpts\": null,\n \"GwPriority\": 0,\n \"NetworkID\": \"aed51554f8cd8bac69ecd4f073e41e147fda7b458e9d95be2af472651f2e825c\",\n \"EndpointID\": \"c87448deaf1d0ca8886a7d07b083a3824850a8f90af3eb8bdb2c91978786da6b\",\n \"Gateway\": \"172.17.0.1\",\n \"IPAddress\": \"172.17.0.57\",\n \"MacAddress\": \"d2:ac:2a:95:f4:9b\",\n \"IPPrefixLen\": 16,\n \"IPv6Gateway\": \"\",\n \"GlobalIPv6Address\": \"\",\n \"GlobalIPv6PrefixLen\": 0,\n \"DNSNames\": null\n }\n }\n },\n \"ImageManifestDescriptor\": {\n \"mediaType\": \"application/vnd.docker.distribution.manifest.v2+json\",\n \"digest\": \"sha256:52aada7978f1eef3b6b52a51afb7a3defd69254d00c946cb90d2ceb32b8ffce7\",\n \"size\": 3246,\n \"platform\": {\n \"architecture\": \"arm64\",\n \"os\": \"linux\",\n \"variant\": \"v8\"\n }\n }\n }\n]\n"
}
}
},
"environment": {
"lc_messages": "en_US.utf8",
"libpq_version": "18.6",
"locale": "en_US.UTF-8",
"log_destination": "csvlog",
"machine": "arm64",
"platform": "macOS-26.6.2-arm64-arm-64bit-Mach-O",
"psycopg_version": "3.3.5",
"python_version": "3.14.6 (main, Jun 10 2026, 10:03:53) [Clang 21.0.0 (clang-2100.0.123.102)]",
"server_version": "10.21 (Debian 10.21-1.pgdg90+1)",
"server_version_num": "100021",
"target_kind": "pg10"
},
"id": "runtime.08003-dblink-repair-pg10c.pg10",
"image": "postgres:10",
"kind": "runtime_observation",
"limits": "Disposable runner-owned target only; this is a bounded mechanism case, not a guarantee for every client or network path.",
"observed": {
"connection_autocommit": true,
"connection_scope": "server-side dblink name lookup followed by a real runner-owned dblink handle",
"dblink_repair": {
"disconnected": "OK",
"opened": "OK",
"remote_probe": 1
},
"diagnostic": {
"column_name": null,
"constraint_name": null,
"context": null,
"datatype_name": null,
"exception_type": "ConnectionDoesNotExist",
"internal_position": null,
"internal_query": null,
"message_detail": null,
"message_hint": null,
"message_primary": "connection \"missing_remote\" not available",
"schema_name": null,
"severity": "ERROR",
"severity_nonlocalized": "ERROR",
"source_file": "dblink.c",
"source_function": "dblink_conn_not_avail",
"source_line": "173",
"sqlstate": "08003",
"statement_position": null,
"table_name": null,
"text": "connection \"missing_remote\" not available"
},
"probe": 1,
"statuses": {
"after_error": "IDLE",
"final": "IDLE"
}
},
"raw": "verify/results/08003-dblink-repair-pg10c/pg10/raw.jsonl",
"raw_sha256": "8484128ab10388de521a0dfab08f2313ec0f53d6ec447583f5fd3b8cd3a51fcf",
"run_id": "08003-dblink-repair-pg10c",
"server_version": "10.21 (Debian 10.21-1.pgdg90+1)",
"server_version_num": 100021,
"snippet_registry": {
"path": "verify/cases/08003/snippets.json",
"sha256": "a5f2c89616e3b311eec9b54a7d2a5c454bfad02b53896f3596bf5f963354d4a0"
},
"status": "passed",
"summary": "verify/results/08003-dblink-repair-pg10c/pg10/summary.json",
"summary_sha256": "e0145f317869154f9641cbd77e935ed8a985716fdcdf889d0a0f5566de022ce7",
"target": "pg10"
},
"run_id": "08003-dblink-repair-pg10c",
"runtime_id": "runtime.08003-dblink-repair-pg10c.pg10",
"server_version": "10.21 (Debian 10.21-1.pgdg90+1)",
"status": "passed",
"target": "pg10"
}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.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": "REL_18_6",
"url": ""
}sources · src.calls.REL_10_23
{
"commit": "",
"docs_url": "",
"kind": "local_artifact",
"location": "",
"path": "raw/calls/REL_10_23.jsonl",
"position": 2,
"sha256": "00d16d3eb01b71ccf1b245c8f3102f9d0ec9f36fb02777b8dd1b99fcb263040c",
"source_id": "src.calls.REL_10_23",
"tag": "REL_10_23",
"url": ""
}sources · src.dblink-not-available.18.6
{
"commit": "724edf9bde9d356724ad384a2e196edc3c9f80f7",
"docs_url": "",
"kind": "upstream_source",
"location": "",
"path": "contrib/dblink/dblink.c",
"position": 3,
"sha256": "e4cfaec3a0a1e5d23fded584725e0f6cf7a17321ad99e5fe046e8b7f97416f15",
"source_id": "src.dblink-not-available.18.6",
"tag": "REL_18_6",
"url": "https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/contrib/dblink/dblink.c#L193-L195"
}sources · src.dblink-not-available.10.23
{
"commit": "02991e79f8f58bc208f05dcc8af0c62dbe0a6ea4",
"docs_url": "",
"kind": "upstream_source",
"location": "",
"path": "contrib/dblink/dblink.c",
"position": 4,
"sha256": "2d542cc722ba361bd59990aaed7fe7c0f8e147155df5e5fcd56ee03b4dd27c61",
"source_id": "src.dblink-not-available.10.23",
"tag": "REL_10_23",
"url": "https://github.com/postgres/postgres/blob/02991e79f8f58bc208f05dcc8af0c62dbe0a6ea4/contrib/dblink/dblink.c#L171-L173"
}sources · doc.transactions.18
{
"commit": "724edf9bde9d356724ad384a2e196edc3c9f80f7",
"docs_url": "",
"kind": "upstream_source",
"location": "",
"path": "doc/src/sgml/xact.sgml",
"position": 5,
"sha256": "b48fbe8bd02ce3d1181a350c88c8baa6e11c73edc90a936e77b180daef328c5c",
"source_id": "doc.transactions.18",
"tag": "PG18-docs",
"url": "https://www.postgresql.org/docs/18/tutorial-transactions.html"
}sources · manifest.08003
{
"commit": "",
"docs_url": "",
"kind": "local_artifact",
"location": "",
"path": "verify/cases/08003/cases.json",
"position": 6,
"sha256": "8ea12e9b1ce6097559da1eb41f880d946356274d5147465ea33b96190104a8ae",
"source_id": "manifest.08003",
"tag": "workspace",
"url": "verify/cases/08003/cases.json"
}sources · snippet-registry.08003
{
"commit": "",
"docs_url": "",
"kind": "local_artifact",
"location": "",
"path": "verify/cases/08003/snippets.json",
"position": 7,
"sha256": "a5f2c89616e3b311eec9b54a7d2a5c454bfad02b53896f3596bf5f963354d4a0",
"source_id": "snippet-registry.08003",
"tag": "workspace",
"url": "verify/cases/08003/snippets.json"
}Source references
Full definition and evidence JSON
Definition sources
center · PostgreSQL 18 · english-manuals:948070b8c48d22177b78aa12a772a5b41acac28f42e92128f0a8e018f5a92074
Text language: en · english-manuals:948070b8c48d22177b78aa12a772a5b41acac28f42e92128f0a8e018f5a92074