mirror of
https://github.com/supabase/supabase.git
synced 2026-10-06 01:45:10 +03:00
## Problem Sustained memory overcommitment is one of the failure patterns that most often leads to databases being killed when the system runs out of memory. Today the database report only shows used memory against total RAM, which hides the kernel's commit accounting: a project can sit far above its commit limit (RAM plus swap, adjusted by the overcommit ratio) and the dashboard gives no signal until something breaks. A combined chart with swap, overcommitment, and main memory was considered too dense, and a standalone swap chart was not useful enough on its own. Linear: [DEBUG-119](https://linear.app/supabase/issue/DEBUG-119) ## Fix Adds a separate "Memory commitment" chart between the existing memory usage and swap charts. It plots `ram_commit_used` (Committed_AS) as the main series with `ram_commit_limit` (CommitLimit) as the max-value threshold line, so values approaching or crossing the limit are visually obvious. Backend support for the two new metric attributes ships in supabase/platform#33321. ## How to test - Wait for the platform PR (supabase/platform#33321) to deploy so the two new attributes are accepted by the infra monitoring endpoint. - Open any project, navigate to Database -> Reports. - Confirm the new "Memory commitment" chart appears between "Memory usage" and "Swap usage". - Confirm the chart shows two series: the committed memory bars/area and a max line for the commit limit. - Hover the legend and the chart to confirm the tooltips read clearly. - Confirm the time range selector and chart sync (`syncId: 'database-reports'`) keep this chart aligned with the others. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Added comprehensive guide for interpreting memory commitment patterns in telemetry reports, including component breakdown, chart pattern guidance, and actionable recommendations. * **New Features** * Added memory commitment chart to database observability dashboard, displaying RAM commitment usage and limits. * Extended monitoring API to support new RAM commitment metrics. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Reference Docs
Supabase Reference Docs
Maintainers
If you are a maintainer of any tools in the Supabase ecosystem, you can use this site to provide documentation for the tools & libraries that you maintain.
DocSpec
We use documentation specifications which can be used to generate human-readable docs.
- OpenAPI: for documenting API endpoints.
- SDKSpec (custom to Supabase): for SDKs and client libraries.
- ConfigSpec (custom to Supabase): for configuration options.
- CLISpec (custom to Supabase): for CLI commands and usage.
The benefit of using custom specifications is that we can generate many other types from a strict schema (eg, HTML and manpages). It also means that we can switch to any documentation system we want. On this site we use Next.js, but on Supabase's official website, we use a custom React site and expose only a subset of the available API for each tool.
Contributing
To contribute to docs, see the developers' guide and contributing guide.