mirror of
https://github.com/supabase/supabase.git
synced 2026-10-09 11:25:06 +03:00
## Problem On 4XL and larger compute sizes, Supabase disk IO is sustained rather than burst-budget based. Baseline equals max, so there is no extra burst balance to track (the instance can still be throttled if it hits its configured IOPS or throughput limit, but that is unrelated to a burst credit pool). The "Disk IO Burst Balance" / "Disk IO % Remaining" / "Disk IO % Consumed" charts in custom reports are therefore meaningless on 4XL+, yet they are currently still offered in the picker and rendered as empty/misleading charts. Custom reports persist their layout, so a report created when a project was on a smaller compute and later upgraded to 4XL+ can still contain a saved burst chart that we need to handle gracefully. ## Fix - Add a shared \`hasBurstableIO(infra_compute_size)\` helper in \`DiskManagement.utils.ts\` (replaces the local \`BURSTABLE_IO_VARIANTS\` set previously defined inline in \`database-charts.ts\`). - Filter \`disk_io_budget\` and \`disk_io_consumption\` out of the custom report chart picker (\`MetricOptions\`) when the project is on a non-burstable compute size. - In \`ReportBlock\`, detect saved burst charts on a 4XL+ project and render a new \`UnavailableChartBlock\` that explains the chart no longer applies and can be removed. - The database observability burst balance chart already gated on \`hasBurstableIO\`; updated to use the shared helper. - Infrastructure activity page already has equivalent handling via the dedicated-IO admonition, so no change needed there. Linear: FDBKPRI-1404 ## Test plan - [ ] On a project below 4XL, the custom report picker still lists "Disk IO % Remaining" and "Disk IO % Consumed", and they render normally - [ ] On a 4XL+ project, neither metric appears in the picker - [ ] Open an existing custom report that contains a saved burst balance chart on a 4XL+ project, and confirm the placeholder block renders with a clear explanation and a remove action - [ ] Database observability page on 4XL+: the burst balance chart remains hidden, all other charts render <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Disk IO metrics are now filtered based on your project’s compute size so only relevant charts appear. * Metrics tied to burstable IO are hidden when the current instance does not support burstable IO; deprecated metrics remain excluded. * When a disk IO chart isn’t available for your instance, the UI shows an explanatory unavailable-chart block with text about burst-balance limits for very large instances and optional actions to remove the unavailable chart. <!-- review_stack_entry_start --> [](https://app.coderabbit.ai/change-stack/supabase/supabase/pull/46327?utm_source=github_walkthrough&utm_medium=github&utm_campaign=change_stack) <!-- review_stack_entry_end --> <!-- end of auto-generated comment: release notes by coderabbit.ai -->