Skip to content

Commit e261659

Browse files
Refactor timely operator architecture and session handling
The timely operator architecture has been refactored to improve session management and container handling. New input handles with a `for_each_time` method have been introduced to facilitate grouping by time.
1 parent c34ed06 commit e261659

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
99

1010
## [0.25.0](https://github.com/TimelyDataflow/timely-dataflow/compare/timely-v0.24.0...timely-v0.25.0) - 2025-10-23
1111

12+
The timely operator architecture has changed a bit, for the better but with footguns for migration.
13+
Timely operators used to fuse sessions opened with the same capabilities, allowing one to treat session creation as low cost.
14+
This behavior has been stopped, and the data sent into one session will be formed into one container.
15+
Sessions will supply and use their own container builder, and the recommended fix is to consolidate output you want to send by session.
16+
17+
The change comes because the embedded container builder is at odds with folks who want to bring their own containers.
18+
The refactoring de-embeds the container builder, surfacing it to "user code" but at the expense of being unable to chain across sessions.
19+
20+
To make it easier to bundle work by sessions, input handles provide a new `for_each_time` method that provide input collections grouped by time.
21+
This allows many operators to draw down these groups by time, perform the work and create one session to transmit the results.
22+
This should be strictly better than not doing it, and relying on timely to fuse sessions, as it ensures all work that can be fused is fused.
23+
1224
### Other
1325

1426
- Update various dependencies ([#719](https://github.com/TimelyDataflow/timely-dataflow/pull/719))

0 commit comments

Comments
 (0)