Files
neon/pgxn/neon
Konstantin Knizhnik 2be69af6c3 Track holes to be able to reuse them once LFC limit is increased (#8575)
## Problem

Multiple increase/decrease LFC limit may cause unlimited growth of LFC
file because punched holes while LFC shrinking are not reused when LFC
is extended.

## Summary of changes

Keep track of holes and reused them when LFC size is increased.

## Checklist before requesting a review

- [ ] I have performed a self-review of my code.
- [ ] If it is a core feature, I have added thorough tests.
- [ ] Do we need to implement analytics? if so did you add the relevant
metrics to the dashboard?
- [ ] If this PR requires public announcement, mark it with
/release-notes label and add several sentences in this section.

## Checklist before merging

- [ ] Do not forget to reformat commit message to not include the above
checklist

---------

Co-authored-by: Konstantin Knizhnik <knizhnik@neon.tech>
2024-08-16 22:19:44 +03:00
..
2023-11-23 18:53:03 +00:00
2023-12-18 21:05:29 +02: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.