Repository navigation
Conversation
…cycle The compiler built one whole-workload forest per per-query Planner alternative, called SketchAlgorithmStrategy directly on identity-typed roots, and derived fixed-window/query-time Rate variants itself (rate_placement.rs). Every forest was then fully compiled for quotes. Native realizations now come from PlanSpace (search_workload_with_targets and enumerate_candidate_dags_for_root) over the identity-typed and the canonical root. A state built from retained readouts is placed by the backend's lifecycle costs: Planner binds the choice, its lifecycle-timed DAG selects the fixed-window program, and the timing is written into the root. Other per-root alternatives are no longer compiled as forests: Planner's global selection picks the computation and per-state lifecycle placement replaces per-root raw substitution. For the 44-query issue workload the inventory drops from 84 to 4 candidates. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Sep 30, 2026
Contributor
Author
|
Superseded by the #818 → #822 stack (draft). The backend no longer selects plans: it executes the 🤖 Generated with Claude Code |
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.
Stacked on #794.
Why
Startup built one whole-workload forest per per-query Planner alternative, called
SketchAlgorithmStrategydirectly on identity-typed roots, derived fixed-window/query-time Rate variants itself (rate_placement.rs), and compiled every forest for quotes. The 44-query issue workload missed its 30 s readiness budget.What
planner_selection::enumerate_workload_candidates(search_workload_with_targets+enumerate_candidate_dags_for_root) over the identity-typed root (row-level realizations) and the canonical root (whole-root realizations such as a current-series heap). Direct strategy calls andrate_placement.rsare deleted.SummaryMaintenanceLifecycleCandidates::select); itsexecution_timed_dag()feeds Planner's fixed-window compiler when the state is maintained, and the same timing is written into the root for backend state selection. Rebuilt per query, it uses Planner's query-time ranking over readouts. Only the chosen placement of each logical candidate is compiled; no per-placement variants are enumerated.ControlPlaneCostModel) picks the computation, and per-stateEphemeralplacement replaces per-root raw substitution.Before / After
44-query issue workload, debug build, process start →
/api/v1/health:sum by(job)(rate(requests_total[1m])): before, both the maintenance and query-time placements were separate quote candidates; nowstore_per_byte_second = 0installs the maintenance program and1.0(local-only) rebuilds the Sum per query.Behaviour differences
planner.physical_candidatetrace events are kept (physical_dag/physical_candidate/unsupported/rejected); the logical trace dropscandidate_assembly_rejectionsandcomputation_search_scope.deployment.native_candidate_placement.Validation
cargo fmt --all -- --check,cargo clippy --workspace --all-targets --locked -- -D warningscargo test --workspace --locked --lib,cargo test -p control_plane --locked --testscargo test -p data_plane --locked --test asapquery_compatibility_process_e2e -- --test-threads=1: 26/26, includingissue_workloads_execute_warm_at_successive_evaluationsat scale 1 with the unchanged 30 s budget.🤖 Generated with Claude Code