docs: load-test evidence for the nano Postgres memory settings#99
Draft
tonychang04 wants to merge 1 commit into
Draft
docs: load-test evidence for the nano Postgres memory settings#99tonychang04 wants to merge 1 commit into
tonychang04 wants to merge 1 commit into
Conversation
A/B pgbench test on a 512MB nano host: stock Postgres defaults inside the ~150MB container limit get OOM-killed under a 90-connection storm (DB restart, 11 TPS, 6s latency) while the shipped tuned postgresql.conf fails fast and stays healthy. Documents why the settings exist and reminds operators that the bind-mounted conf on already-provisioned hosts needs a re-copy + postgres restart to pick up tuning. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01J9NtiFkU34HQQgRSffNb4k
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds
docs/pg-memory-loadtest-2026-07.md: A/B pgbench evidence (moderate load, heavy load, 90-connection storm, combined DB+vacuum+API stress) showing why the shippeddocker-init/db/postgresql.confmemory settings exist.Key result
On a 512MB nano host, stock Postgres defaults inside the ~150MB container limit get OOM-killed under a 90-connection storm (DB restart, 11 TPS, 6s avg latency, hung clients), while the shipped tuned conf fails fast and stays healthy (excess connections rejected, memory bounded, API on the same host still serving). Under heavy-but-legal load the tuned conf gives +8% TPS, half the swap traffic, and ~2x host headroom.
Also documents that the conf is bind-mounted from the host at provision time — hosts provisioned before the tuning landed need a re-copy + postgres restart to pick it up — and lists follow-up candidates (API image
exec npm startdouble-wrapper,vm.swappinesson zram hosts,userland-proxy).🤖 Generated with Claude Code
https://claude.ai/code/session_01J9NtiFkU34HQQgRSffNb4k
Summary by cubic
Adds
docs/pg-memory-loadtest-2026-07.mdwith load-test evidence for the tuned Postgres memory settings on nano hosts. Shows that the shippeddocker-init/db/postgresql.confavoids OOM under a 90-connection storm and delivers ~8% higher TPS with less swap on 512MB instances.postgresql.confto the bind-mounted path and restart the Postgres container to apply it.Written for commit 3ad4347. Summary will update on new commits.