Files
neon/pgxn/neon
Heikki Linnakangas a79fd3bda7 Move logic for picking request slot to the C code
With this refactoring, the Rust code deals with one giant array of
requests, and doesn't know that it's sliced up per backend
process. The C code is now responsible for slicing it up.

This also adds code to complete old IOs at backends start that were
started and left behind by a previous session. That was a little more
straightforward to do with the refactoring, which is why I tackled it
now.
2025-07-07 12:59:08 +03:00
..
2025-06-05 11:27:14 +00:00
2025-06-05 11:27:14 +00:00
2025-04-29 06:44:28 +00:00
2023-11-23 18:53:03 +00:00
2025-06-05 11:27:14 +00:00

neon extension consists of several parts:

shared preload library neon.so

  • implements storage manager API and network communications with remote page server.

  • walproposer: implements broadcast protocol between postgres and WAL safekeepers.

  • control plane connector: Captures updates to roles/databases using ProcessUtility_hook and sends them to the control ProcessUtility_hook.

  • remote extension server: Request compute_ctl to download extension files.

  • file_cache: Local file cache is used to temporary store relations pages in local file system for better performance.

  • relsize_cache: Relation size cache for better neon performance.

SQL functions in neon--*.sql

Utility functions to expose neon specific information to user and metrics collection. This extension is created in all databases in the cluster by default.