Skip to content

Conversation

@antiguru
Copy link
Member

Previously, event iterators were forced to handing out references to data,
even if they could return owned data. This is not great because it requires
the replay operator to clone the data to send it downstream.

With this change, the event iterator can surface either owned or shared
data, which allows the Rc<EventLink> to surface owned data when it is
uniquely owned, and references when it is shared. This avoids cloning data
when there is only a single replay operator attached to an event link.

Signed-off-by: Moritz Hoffmann [email protected]

Previously, event iterators were forced to handing out references to data,
even if they could return owned data. This is not great because it requires
the replay operator to clone the data to send it downstream.

With this change, the event iterator can surface either owned or shared
data, which allows the `Rc<EventLink>` to surface owned data when it is
uniquely owned, and references when it is shared. This avoids cloning data
when there is only a single replay operator attached to an event link.

Signed-off-by: Moritz Hoffmann <[email protected]>
Signed-off-by: Moritz Hoffmann <[email protected]>
@antiguru antiguru merged commit 2081554 into TimelyDataflow:master Jan 21, 2025
7 checks passed
@antiguru antiguru deleted the event_link_owned branch January 21, 2025 12:45
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.

2 participants