Replace DuckDB compute billing with Trino scan usage - #1159
Draft
benben wants to merge 1 commit into
Draft
Conversation
Test Impact PlanDeterministic summary of how this PR changes tests, CI runners, and coverage-risk signals. Summary
Signals
Coverage risk: likely reduced Warnings
|
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.
Trino executes tenant queries outside Duckgres's connection path, so the old DuckDB connection CPU/memory meter no longer describes query usage. This replaces it with native completed-query
physicalInputBytesand preserves the existing storage sampler and GiB-second units.Validation: new APIs exercised red/green; full PostgreSQL integration suite and Kubernetes control-plane suite pass; shared control-plane/configstore/provisioning packages pass; all UI tests (186), typecheck and production build pass. Real storage and Trino-listener E2E assertions are included but await the cloud CI lane. The full process-controlplane recipe passed its process/handover tests and could not run its DuckLake infrastructure test because Docker is unavailable locally.
just lintwas run: remaining staticcheck failures reproduce on untouched source; two additional govet findings are in an installed, untracked UI dependency. No remaining findings point to this change.Requires the DuckLake delete-read-statistics fix (PostHog/trino#21) for delete-file reads to enter native bytes. Deploy companion chart RBAC before this CP version, then enable the listener and switch the billing consumer. Pause the old consumer and remove old CP replicas before the new billing flow; old destructive ack/GC code must not touch retained storage. The downstream billing consumer was not found in the workspace or GitHub code search and is not modified here.