ErrLookup › neondatabase/neon
neondatabase/neon
Neon: Serverless Postgres. We separated storage and compute to offer autoscaling, code-like database branching, and scale to zero. · Rust · 733 source files
Analyzed at 8f60b04da4 on 2026-08-16. 217 documented errors.
| Code / Message | Type | Severity | Tags |
|---|---|---|---|
| not implemented | panic | critical | rust, remote-storage, local-fs, panic, unimplemented, object-versioning |
| connection to postgres closed | exception | error | rust, postgres, tokio-postgres, connection, health-check, compute-ctl |
| expected 1 query results, but got {} | exception | error | rust, postgres, simple-query, health-check, invariant, tokio-postgres |
| pageserver connection information should be provided | validation | critical | rust, compute-ctl, spec, configuration, pageserver, startup |
| safekeeper connstrings should be provided | validation | critical | rust, compute-ctl, spec, configuration, safekeepers, primary, startup |
| tenant id should be provided | validation | critical | rust, compute-ctl, spec, configuration, tenant-id, startup |
| timeline id should be provided | validation | critical | rust, compute-ctl, spec, configuration, timeline-id, startup |
| AUDIT_LOGGING_ENDPOINT and AUDIT_LOGGING_TLS_ENDPOINT are bo | validation | critical | rust, compute-ctl, audit-logging, env-var, compliance, rsyslog, startup |
| postgres --sync-safekeepers exited with non-zero status: {}. | exception | critical | rust, compute-ctl, postgres, safekeepers, wal, subprocess, startup |
| Cannot refresh compute configuration in state {:?} | exception | warning | rust, compute-ctl, state-machine, configuration, status, race-condition |
| Remote extensions storage is not configured | validation | error | rust, compute-ctl, extensions, configuration, download |
| Remote extensions are not configured | validation | error | rust, compute-ctl, extensions, spec, configuration, version-skew |
| shard {shard_index} missing from pageserver_connection_info | validation | critical | rust, compute-ctl, pageserver, sharding, configuration, spec, startup |
| could not parse config file: {} | exception | error | rust, compute-ctl, config, json, serde, test-only |
| could not open config file at path: {} | exception | error | rust, compute-ctl, config, file-io, path, test-only |
| config_path_test_only is not set | exception | error | rust, compute-ctl, configuration, startup, control-plane |
| could not parse spec | validation | critical | rust, compute-ctl, spec, parsing, error-swallowing, configuration |
| process exited with {status} | exception | error | rust, compute-ctl, disk-quota, sudo, subprocess, deployment |
| error downloading extension {:?}: {:?} | exception | error | rust, compute-ctl, extensions, http, download, network |
| Log set id's rwlock poisoned: {} | exception | warning | rust, compute-ctl, logging, rwlock, poisoned-lock, panic |
| could not get database statistics: {} | exception | error | postgres, pg-stat-database, monitoring, rust, connection |
| could not get backends state change: {} | exception | error | postgres, pg-stat-activity, monitoring, rust, connection |
| failed to get list of walsenders: {} | exception | error | postgres, pg-stat-replication, walsender, logical-replication, rust |
| failed to parse 'pg_stat_subscription' count: {} | exception | error | postgres, pg-stat-subscription, type-conversion, rust |
| failed to get list of active logical replication subscriptio | exception | error | postgres, logical-replication, pg-stat-subscription, rust, connection |
| failed to parse autovacuum workers count: {} | exception | error | postgres, autovacuum, pg-stat-activity, type-conversion, rust |
| failed to get list of autovacuum workers: {} | exception | error | postgres, pg-stat-activity, autovacuum, rust, connection |
| could not query active_time: {} | exception | error | postgres, pg-stat-database, monitoring, rust, connection |
| failed to verify authorization token | http | error | jwt, authorization, http-middleware, security, rust |
| could not get total_active_time: {} | exception | error | postgres, type-conversion, float8, pg-stat-database, rust |
| could not get total_sessions: {} | exception | error | postgres, type-conversion, bigint, pg-stat-database, rust |
| could not query backends: {} | exception | error | postgres, pg-stat-activity, monitoring, rust, connection |
| process exited with {status} | http | error | postgres, pg-isready, health-check, process-exit, rust |
| rsyslogd is not running after waiting for {} seconds and {} | exception | critical | rsyslog, daemon, timeout, process-management, rust |
| Error parsing {remote_endpoint}, expected host:port, got {er | validation | error | url-parsing, host-port, validation, rsyslog, rust |
| Invalid address format {remote_endpoint}, expected host:port | validation | error | url-parsing, host-port, validation, rsyslog, rust |
| Invalid host | validation | error | hostname, validation, host-port, rsyslog, rust |
| Invalid port in {remote_endpoint} | validation | error | port, validation, host-port, rsyslog, rust |
| Invalid host format for Postgres logs export | validation | error | rsyslog, logs-export, host-port, validation, rust |
| Exhausted all attempts to retrieve the config from the contr | exception | critical | control-plane, http, retry, configuration, rust |
| process exited with {status} | exception | error | rust, neon, compute-tools, swap, subprocess, sudo, neonvm |
| `datadir` must be a directory when calling this function: {d | exception | error | rust, neon, control-plane, background-process, filesystem, path-validation |
| {} did not start+pass status checks within {:?} seconds | exception | error | rust, neon, control-plane, background-process, startup, timeout, health-check |
| Failed to send signal to {process_name} with pid {pid}: {e} | exception | error | rust, neon, control-plane, background-process, signal, permissions, eperm, process-management |
| {} with pid {} did not stop in {:?} seconds | exception | error | rust, neon, control-plane, background-process, shutdown, timeout, process-management |
| process failed to start: {e} | exception | error | rust, neon, control-plane, background-process, health-check, startup |
| Failed to send signal to process with pid {pid}: {err} | exception | error | rust, neon, control-plane, background-process, signal, permissions, eperm |
| Endpoint::from_dir_entry failed: '{}' is not a directory | exception | error | rust, neon, control-plane, endpoint, filesystem, directory-validation |
| pg_ctl failed, exit code: {}, stdout: {}, stderr: {} | exception | error | rust, neon, control-plane, endpoint, postgres, pg-ctl, subprocess |
| safekeeper {sk_id} does not exist | exception | error | rust, neon, control-plane, endpoint, safekeeper, config-validation |
| expected a directory, got {:?} | exception | error | rust, neon-local, filesystem, pageserver, local-env |
| id mismatch: identity.toml:id={identity_toml_id} pageserver_ | exception | error | rust, neon-local, pageserver, config, local-env |
| directory not empty: {base_path:?} | exception | error | rust, neon-local, filesystem, init, local-env |
| Failed to check node status: {e} | exception | error | rust, neon-local, pageserver, http, startup, auth |
| Failed to check node status: {e} | exception | error | rust, neon-local, safekeeper, http, startup, auth |
| Postgres directory '{}' not found in {} | exception | error | rust, neon-local, storage-controller, postgres, config, paths |
| createdb failed with status {}: {stderr} | exception | error | rust, storage-controller, postgres, createdb, subprocess |
| initdb failed with status {status} | exception | error | rust, storage-controller, postgres, initdb, subprocess |
| Failed to start postgres {} | exception | error | rust, storage-controller, postgres, pg-ctl, startup |
| Timed out waiting for postgres to start | exception | error | rust, storage-controller, postgres, timeout, startup |
| Failed to read startup script: {e} | exception | error | rust, storage-controller, filesystem, sql, startup |
| Safekeeper set up for auth but no private key specified | exception | error | rust, storage-controller, safekeeper, auth, jwt, config |
| Failed to read storcon pid file at {pid_file:?}: {err} | exception | error | rust, storage-controller, pid-file, filesystem, shutdown |
| Failed to stop storage controller database | exception | error | rust, storage-controller, postgres, pg-ctl, shutdown |
| Failed to stop storage controller database: {err} | exception | error | rust, storage-controller, postgres, pg-ctl, shutdown |
| pg_ctl status returned unexpected status code: {:?} | exception | error | rust, storage-controller, postgres, pg-ctl, exit-code |
| pg_ctl status returned no status code | exception | error | rust, storage-controller, postgres, pg-ctl, signal |
| setting scheduling policy unsuccessful for safekeeper {node_ | exception | error | rust, storage-controller, safekeeper, http, api, storcon-cli |
| Invalid format '{s}', a valid example is 'attached:1' | validation | warning | rust, storcon-cli, cli, argument-parsing, placement-policy |
| Unknown placement policy '{s}', try detached,secondary,attac | validation | warning | rust, storcon-cli, cli, argument-parsing, placement-policy |
| Unknown scheduling policy '{s}', try active,essential,pause, | validation | error | cli, argument-parsing, storcon, rust, scheduling |
| Unknown availability state '{s}' | validation | error | cli, argument-parsing, storcon, rust, availability |
| Migration to {node} rejected, may require `--force` ({}) | exception | error | storcon, migration, http-412, precondition-failed, cli |
| AZ {} not found on any node: known AZs are: {:?} | exception | error | storcon, availability-zone, validation, cli |
| This command is not a tenant deletion, and uncleanly drops a | exception | error | storcon, destructive-command, confirmation-flag, cli |
| This command is not a clean node decommission, and uncleanly | exception | error | storcon, destructive-command, confirmation-flag, cli, decommission |
| Bulk migration requested away from node which doesn't exist. | exception | error | storcon, migration, node-id, validation, cli |
| There are no nodes to migrate to | exception | error | storcon, migration, capacity, node-scheduling, cli |
| Tenant shard not found | exception | error | storcon, tenant-shard, not-found, cli |
| File size {request_len} exceeds max {max_len} | http | error | endpoint-storage, upload, size-limit, http-400, rust |
| uploading cancelled | http | error | endpoint-storage, cancellation, upload, retry, rust |
| deleting cancelled | http | error | endpoint-storage, cancellation, delete, retry, rust |
| deleting prefix cancelled | http | error | endpoint-storage, cancellation, delete-prefix, retry, rust |
| Read back file doesn't match original | exception | critical | endpoint-storage, s3, startup-check, data-integrity, rust |
| Supply either config file path or --config=inline-config | validation | error | endpoint-storage, configuration, startup, cli, rust |
| invalid compute claims scope "{s}" | validation | error | compute-api, jwt, claims, scope, rust |
| empty connection string | validation | error | compute-api, connection-string, spec-parsing, rust |
| {n} shards but no stripe_size | validation | error | compute-api, sharding, stripe-size, spec-parsing, rust |
| shard connection info missing for shard {} | exception | error | compute-api, sharding, lookup, rust |
| must have at least one pageserver | exception | error | compute-api, pageserver, sharding, configuration, rust |
| no grpc_url for shard {shard_index} | exception | error | neon, pageserver, grpc, connection-string, compute-api |
| no libpq_url for shard {shard_index} | exception | error | neon, pageserver, libpq, connection-string, compute-api |
| library {} is not found | exception | error | neon, compute-api, extensions, shared-library, postgres |
| extension {} is not found | validation | error | neon, compute-api, extensions, allow-list, postgres |
| real_ext_name {} is not found | exception | error | neon, compute-api, extensions, data-inconsistency, postgres |
| invalid connstring URL: {err} | validation | error | neon, pageserver, url-parsing, connection-string, compute-api |
| invalid protocol scheme: {scheme} | validation | error | neon, pageserver, url-scheme, connection-string, compute-api |
| invalid format {format} | http | warning | neon, http-utils, profiling, query-param, cpu-profile |
| duration must be 1-60 secs | http | warning | neon, http-utils, profiling, query-param, cpu-profile |
| frequency must be <=1000 Hz | http | warning | neon, http-utils, profiling, query-param, cpu-profile |
| heap profiling not enabled | http | error | neon, http-utils, profiling, jemalloc, build-features, heap-profile |
| Cannot manage failpoints because neon was compiled without f | http | warning | neon, http-utils, failpoints, build-features, testing |
| Failed to configure failpoints: {err_msg} | http | warning | neon, http-utils, failpoints, testing, action-syntax |
| missing request body | http | warning | neon, http-utils, json, request-body, http-400 |
| Failed to parse json request: {e} | http | warning | neon, http-utils, json, serde, request-body, http-400 |
| no {param_name} specified in path param | http | error | neon, http-utils, routing, path-param, routerify |
| failed to parse {param_name} | http | warning | neon, http-utils, routing, path-param, uuid, http-400 |
| param {param_name} specified more than once | http | error | rust, http, query-params, validation, bad-request |
| no {param_name} specified in query parameters | http | error | rust, http, query-params, bad-request, validation |
| cannot parse query param {param_name}: {e} | http | error | rust, http, query-params, parsing, bad-request |
| Unexpected request body | http | error | rust, http, request-body, bad-request, validation |
| no private key found in {} | exception | critical | rust, tls, rustls, pem, configuration, startup |
| Unknown scheduling policy '{s}', try active,pause,decomissio | validation | error | rust, storage-controller, enum, configuration, validation |
| invalid specifier '{first}' | validation | error | rust, pageserver, configuration, compression, validation |
| invalid tag {tag} | exception | error | rust, pagestream, protocol, serialization, version-skew |
| Unexpected message {:?} while waiting for handshake | exception | error | rust, postgres-protocol, handshake, authentication, neon-jwt |
| direct SSL negotiation but no TLS support | exception | error | rust, postgres-protocol, tls, sslmode, configuration |
| client did not connect with TLS | exception | error | rust, postgres-protocol, tls, sslmode, authentication |
| Unexpected CancelRequest message during handshake | exception | warning | rust, postgres-protocol, handshake, cancel-request |
| unexpected message type: {msg:?} | exception | error | rust, postgres-protocol, copy-protocol, state-machine, validation |
| Unknown version {} | exception | critical | rust, postgres-ffi, pg-control, version-mismatch, timeline |
| Failed to get feature flags: {}, {} | exception | error | rust, posthog, feature-flags, api, authentication |
| Failed to capture events: {}, {} | exception | warning | rust, posthog, analytics, api, http |
| max_keys_per_list_response can't be 0 | validation | critical | rust, azure, remote-storage, configuration, startup |
| Azure GET response contained no response body | exception | error | rust, azure, remote-storage, download, transient |
| Failed to upload all blocks {:#?} | exception | error | azure, blob-storage, multipart-upload, rust, network |
| Received abort for copy from {from} to {to}. | exception | error | azure, blob-storage, server-side-copy, concurrency |
| Received failure response for copy from {from} to {to}. | exception | error | azure, blob-storage, server-side-copy, permissions |
| Received ListVersions response for key={key} with version_id | exception | error | azure, blob-storage, versioning, time-travel, configuration |
| no items returned | exception | error | gcs, google-cloud-storage, listing, pagination, api-response |
| no 'updated' field | exception | error | gcs, google-cloud-storage, listing, deserialization, time-travel |
| max keys reached | exception | warning | gcs, google-cloud-storage, listing, pagination, limits |
| GCS PUT error \n\t {:?} | exception | error | gcs, google-cloud-storage, upload, http-status, auth |
| Boundary string from 'multipart/related' HTTP upload occurre | exception | critical | gcs, google-cloud-storage, upload, data-integrity, multipart |
| Failed to delete {}/{} objects | exception | error | gcs, google-cloud-storage, batch-delete, permissions, iam |
| GCS head response contained no response body | exception | error | gcs, google-cloud-storage, head-request, http-status, observability |
| GCS GET response contained no response body | exception | error | gcs, google-cloud-storage, download, http-status, observability |
| download gcs object | exception | error | gcs, google-cloud-storage, network, transport-error, error-context |
| Missing ETag header | exception | error | gcs, google-cloud-storage, etag, metadata, deserialization |
| Received ListVersions response for key={key} with version_id | exception | error | gcs, google-cloud-storage, versioning, time-travel, data-migration |
| Missing size (content length) header | exception | error | gcs, google-cloud-storage, metadata, listing, deserialization |
| Path {relative_path:?} is not relative | validation | error | rust, path-validation, input-validation, cross-platform |
| list_files: failed to find valid ancestor dir for {full_path | exception | warning | local-filesystem, listing, directory, path, configuration |
| Reading mtime | exception | error | local-filesystem, file-metadata, race-condition, download, mtime |
| Missing ETag header | exception | error | s3, rust, aws-sdk, remote-storage, http-header |
| Missing LastModified header | exception | error | s3, rust, aws-sdk, remote-storage, http-header |
| Failed to delete {}/{} objects | exception | error | s3, rust, aws-sdk, iam, batch-delete |
| Received truncated ListObjectVersions response for prefix={p | exception | error | s3, rust, aws-sdk, pagination, emulator |
| too many versions | exception | warning | s3, rust, pagination, limits, time-travel |
| head_object doesn't contain last_modified or content_length | exception | error | s3, rust, aws-sdk, remote-storage, http-header |
| can't convert time '{last_modified}': {e} | exception | error | s3, rust, timestamp, remote-storage |
| Received ListVersions response for key={key} with version_id | exception | error | s3, rust, versioning, time-travel |
| path is neither a directory or a file | validation | error | auth, jwt, rust, config, filesystem |
| Configured for JWT auth with zero decoding keys. All JWT gat | validation | error | auth, jwt, rust, config, kubernetes |
| TenantTimelineId must contain tenant_id | validation | error | rust, parsing, ids, config |
| TenantTimelineId must contain timeline_id | validation | error | rust, parsing, ids, config |
| TenantTimelineId must contain only tenant_id and timeline_id | validation | error | rust, parsing, ids, config |
| file is already locked | exception | error | rust, filesystem, locking, single-instance |
| parse pidfile content to PID | exception | error | rust, pidfile, filesystem, parsing |
| bad value in pidfile '{pid}' | exception | error | rust, pidfile, filesystem, parsing |
| cgroups v2 not supported | validation | error | linux, cgroups, rust, vm-monitor, system-configuration |
| could not find memory subsystem | exception | error | linux, cgroups, memory, rust, vm-monitor |
| resource_multiplier must be between 0.0 and 1.0 exclusive, g | validation | error | rust, config, validation, vm-monitor, file-cache |
| spread_factor must be >= 0, got {} | validation | error | rust, config, validation, vm-monitor, file-cache |
| incompatible resource_multipler and spread_factor | validation | error | rust, neon, vm-monitor, config, validation |
| file cache size query returned no rows | exception | error | rust, neon, vm-monitor, postgres, sqlx |
| max file cache size query returned no rows | exception | error | rust, neon, vm-monitor, postgres, sqlx |
| Non-overlapping bounds: other.max = {} was less than self.mi | exception | critical | rust, neon, vm-monitor, protocol, version-negotiation |
| Non-overlappinng bounds: self.max = {} was less than other.m | exception | critical | rust, neon, vm-monitor, protocol, version-negotiation |
| invalid monitor Config: sys_buffer_bytes cannot be 0 | validation | error | rust, neon, vm-monitor, config, startup |
| dispatcher connection closed | exception | critical | rust, neon, vm-monitor, websocket, connection |
| Unknown RMGR {} for Heap decoding | exception | error | rust, neon, wal-decoding, postgres, pg14 |
| Unknown WAL record type for Neon RMGR: {} | exception | error | rust, neon, wal-decoding, neon-rmgr, postgres |
| Neon RMGR has no known compatibility with PostgreSQL version | exception | error | rust, neon, wal-decoding, postgres, version-mismatch |
| Unsupported key decoded at LSN {}: {} | exception | error | rust, neon, wal-decoding, tablespace, pageserver |
| only unsharded tenants are supported at this time: {} | validation | error | rust, neon, pageserver, sharding, mgmt-api |
| Error: {:?} | exception | error | rust, neon, pageserver, pagestream, protocol |
| unexpected be message kind in response to getpage request: { | exception | error | rust, neon, pageserver, pagestream, protocol |
| can't reduce shard count from {} to {} | validation | error | rust, neon, sharding, pageserver, grpc-client |
| can't change stripe size from {} to {} | validation | error | rust, neon, sharding, pageserver, grpc-client |
| no shards provided | validation | error | rust, neon, sharding, pageserver, grpc-client, validation |
| too many shards: {n} | validation | error | rust, neon, pageserver, sharding, input-validation |
| stripe size must be given for sharded tenants | validation | error | rust, neon, pageserver, sharding, configuration |
| stripe size can't be given for unsharded tenants | validation | error | rust, neon, pageserver, sharding, configuration |
| invalid shard index {shard_id}, expected {count} | validation | error | rust, neon, pageserver, sharding, input-validation |
| invalid shard index {shard_id} | validation | error | rust, neon, pageserver, sharding, off-by-one |
| invalid shard URL {url}: must use gRPC | validation | error | rust, neon, pageserver, grpc, url-scheme |
| 'REMOTE_STORAGE_CONFIG' environment variable must be set to | validation | error | rust, neon, ctl, environment-variable, remote-storage |
| unsupported linekind: {s} | validation | error | rust, neon, ctl, cli, input-validation |
| unexpected in-memory layer | exception | error | rust, neon, ctl, layer-map, index-part |
| need 1..N positional arguments describing the key, try hex o | validation | error | rust, neon, ctl, cli, key-parsing |
| failed to parse {one:?} as hex or span attributes: - {e1:#} | validation | error | rust, neon, ctl, key-parsing, hex |
| found no RelTag in arguments | validation | error | rust, neon, ctl, key-parsing, reltag |
| found no blocknum in arguments | validation | error | rust, neon, ctl, key-parsing, blocknum |
| cannot find 'rel=' | validation | error | rust, neon, ctl, key-parsing, log-parsing |
| cannot find 'blkno=' | validation | error | rust, neon, ctl, key-parsing, log-parsing |
| failed to parse layer name: {e} | validation | error | rust, neon, ctl, layer-map, filename-parsing |
| not an image or delta layer: {layer_file_path} | validation | error | rust, neon, ctl, layer-file, file-format |
| Invalid time for travel_to: '{}' | validation | error | rust, neon, ctl, timestamp, rfc3339 |
| Invalid time for done_if_after: '{}' | validation | error | rust, neon, ctl, timestamp, rfc3339 |
| must specify exactly one target | validation | error | rust, neon, pagebench, cli, input-validation |
| invalid connstring: {err} | validation | error | pagebench, connstring, url-parsing, cli, configuration |
| invalid scheme {scheme} | validation | error | pagebench, url-scheme, cli, configuration |
| unexpected status code: {} | exception | error | pagebench, page-api, getpage, status-code, grpc |
| {err} | exception | error | pagebench, grpc, tonic, network, transport |
| no timelines found | exception | error | pagebench, idle-streams, discovery, management-api, tenants |
| no response | exception | error | pagebench, grpc, stream-closed, http2, network |
| {} response | exception | error | pagebench, page-api, status-code, version-skew |
| pageserver has less than limit_to_first_n_targets={limit} te | exception | error | pagebench, targets, discovery, cli, capacity |
| backup_prev {backup_prev} != provided_prev_lsn {provided_pre | exception | error | pageserver, basebackup, lsn, consistency, replication |
| invalid SlruKind::Clog record: block.len()={} | exception | error | pageserver, basebackup, slru, clog, data-integrity, page-validation |
| invalid {:?} record: block.len()={} | exception | error | pageserver, basebackup, slru, multixact, data-integrity, page-validation |
| img.len() != SIZE_OF_RELMAPFILE, img.len()={} | exception | error | pageserver, basebackup, relmap, pg-version, data-integrity |
| WARNING: disable cores setrlimit failed: %s | console | warning | neon-extension, setrlimit, core-dumps, sandbox, libc, environment |
| ExceptionalCondition: %s:%d: %s | console | critical | walproposer, safekeeper, assertion, crash, c, protocol |
| aborting... | console | critical | walproposer, safekeeper, crash, exit, c |
| unsupported integer size %d | console | critical | walproposer, protocol, decode, assertion, c |