Skip to content

fix(precompute): keep active panes open - #480

Merged
zzylol merged 1 commit into
mainfrom
fix/precompute-active-ingest-idleness
Sep 3, 2026
Merged

zzylol merged 1 commit into
mainfrom
fix/precompute-active-ingest-idleness

Conversation

@zzylol

@zzylol zzylol commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Before

The wall-clock fallback aged panes from their creation time. A long-running raw or sketch ingest with a fixed event timestamp could therefore force-close a pane while it was still receiving input; subsequent samples were treated as late and dropped. ASAPQuery fixed this in ProjectASAP/ASAPQuery#536, but the fix was missing after the backend split.

After

  • Age panes from the most recent raw-sample or prebuilt-sketch touch.
  • Preserve idle/trailing-window closure after window_size + grace.
  • Cover both active_panes and sketch_panes with deterministic fake-clock regressions.
  • Keep the current backend engine and migrate the upstream semantic fix instead of restoring the historical engine.

Verification

  • cargo fmt -p data_plane -- --check
  • cargo test -p data_plane precompute_engine::worker::tests::wall_clock_fallback -- --nocapture (4 passed)
  • cargo test -p data_plane precompute_engine:: (259 passed)

Upstream source: ProjectASAP/ASAPQuery@9a018cb (fix(precompute): keep wall-clock fallback from force-closing panes still under active ingest).

@zzylol
zzylol merged commit a05e5fb into main Sep 3, 2026
1 check passed
@zzylol
zzylol deleted the fix/precompute-active-ingest-idleness branch September 3, 2026 17:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant