mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-09-05 00:03:08 +00:00
Tighten the consumed debounce-batch GC grace 1h -> 10min: per-op cost of the claim is unchanged (an indexed mark is as cheap as the old delete), so the only cost of retaining consumed rows is table growth, which a shorter grace bounds under high-throughput debounce (a survivor that could still reference a row is pulled long before 10min; GC is not correctness-critical since a re-pull whose row was swept falls back to its persisted args). Adds edge-case tests: never-batched keeps own args (CE fallback), concurrent claim partitions a batch disjointly (exactly-once under real concurrency), three survivors -> first takes all / rest run empty, non-accumulate debounce hard-deletes its batch rows (no leak), and the GC sweep deletes only past-grace consumed rows. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>