-
Notifications
You must be signed in to change notification settings - Fork 184
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Spine drop batches once logical and physical compaction frontiers are empty #399
Conversation
I don't think this is right. Physical compaction can be allowed up through |
// If the logical frontier is empty, we are not obliged to be able to represent any time, | ||
// since no time is in advance of `[]`. In the case, we can drop all contents. | ||
if self.logical_frontier.is_empty() { | ||
self.drop_batches(); | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there an explainer for why the code is here, rather than in e.g. set_logical_compaction
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moved the code to set_logical_compaction
and insert
. As far as I can tell these are the only places where logical compaction is advanced, and new batches are inserted.
Once the logical compaction frontier is empty, there are no times that can be represented in a a trace, which means that we're good to drop all contents. Signed-off-by: Moritz Hoffmann <[email protected]>
Signed-off-by: Moritz Hoffmann <[email protected]>
Signed-off-by: Moritz Hoffmann <[email protected]>
Closing because this approach is not correct. |
Once the
physicallogical compaction frontier is empty, there are no times that can be represented in a a trace, which means that we're good to drop all contents.This fixes #398.