Repository navigation
v2.5.0-alpha.3
Pre-release
Pre-release
·
35 commits
to master
since this release
Third alpha of the 2.5.0 minor release. For preview and testing; production users stay on 2.4.x.
Full Changelog: v2.5.0-alpha.2...v2.5.0-alpha.3
⚠️ Breaking Changes
- Window collect filter semantics (#4107): Processing-time state and sliding windows now push the
WHEREcondition into row collection. Each arriving row evaluates the predicate once; non-matching or error rows are discarded individually without buffering or re-evaluating during emission. Time-dependent or non-deterministic filter functions may observe timing differences compared to post-window filtering. - SQL sink rowkind batch transaction rollback (#4188): Multi-row rowkind batches are now executed in a single atomic transaction. A failing batch aborts and rolls back completely instead of committing earlier rows prior to retry.
New Features
- Connection pool lifecycle & runtime recovery overhaul:
- Manager-owned lifecycle architecture with single-flight creation, manageable disconnected reloads, and unified teardown by @ngjaying in #4171
- Unified four-state status model (
connecting,connected,disconnected,recovering) with pure status reads and independent health probing by @ngjaying in #4172 - Centralized pool-owned SQL runtime recovery with internal readiness gating and asynchronous handle retirement by @ngjaying in #4174
- Token-bound
ConnectionLeaseidentity preventing reference leaks and ABA reattach bugs by @ngjaying in #4177
- Push-down collect filter for state and sliding windows to eliminate buffering non-matching rows by @Elia-Renzoni in #4107
- Kafka source
offsetResetconfiguration (earliest/latest) by @Dream95 in #4190
Bug Fixes
- Conn: interrupt initial-dial retry backoff immediately on connection teardown or replacement by @ngjaying in #4179
- SQL: execute multi-statement rowkind batches in a single atomic transaction to avoid duplicate writes on retries, and preserve existing named connection configurations on invalid update payloads by @ngjaying in #4188
Performance
- Window: dirty-only state snapshots in incremental aggregation operators, cutting per-row checkpoint serialization overhead from O(total groups) to O(touched groups) by @ngjaying in #4193