-
Notifications
You must be signed in to change notification settings - Fork 78
feat: extend table scan to support v2 deletes #489
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
Conversation
src/iceberg/table_scan.h
Outdated
| /// \param from_snapshot_id the start snapshot ID (inclusive) | ||
| /// \note InvalidArgument will be returned if the start snapshot is not an ancestor of | ||
| /// the end snapshot | ||
| TableScanBuilder& FromSnapshotInclusive(int64_t from_snapshot_id); |
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.
TableScanBuilder& FromSnapshot(int64_t from_snapshot_id, bool inclusive);
TableScanBuilder& FromSnapshot(const std::string& ref, bool inclusive);
How about merging these interfaces of FromSnapshot into this one? Can ref also be changed to tag? SnapshotRef might be Branch or Tag. Using ref here would be a bit strange
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.
It makes sense to combine them. I don't think the ref applies to tag.
| std::optional<int64_t> limit; | ||
| bool from_snapshot_id_inclusive{false}; | ||
| std::optional<int64_t> from_snapshot_id; | ||
| std::optional<int64_t> to_snapshot_id; |
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.
How about defining a VersionRange or DataRange to express a specific version or version range?
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.
I think that may be a little bit complicated and from/to do not need to appear at the same time.
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.
snapshot_id can also be expressed as [-1, snapshot_id], It can avoid passing multiple parameters when used internally.
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.
Let's revisit this once we add incremental scan support.
Co-authored-by: Guotao Yu <guotao.yugt@gmail.com>
Co-authored-by: Guotao Yu <guotao.yugt@gmail.com>
Co-authored-by: Zehua Zou <zehuazou2000@gmail.com>
|
Thanks all for the review! |
No description provided.