-
Notifications
You must be signed in to change notification settings - Fork 1
feat(iceberg): introduce remove snapshot action #21
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
crates/iceberg/src/transaction.rs
Outdated
|
||
/// Finished building the action and apply it to the transaction. | ||
pub async fn apply(self) -> Result<Transaction<'a>> { | ||
self.apply_impl().await |
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.
Looks like we can just put code in apply_impl in this function.🤔
crates/iceberg/src/transaction.rs
Outdated
} | ||
|
||
/// Finished building the action and apply it to the transaction. | ||
pub fn expire_snapshot_id(mut self, expire_snapshot_id: i64) -> Self { |
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.
Looks like we don't have test for this.
…avelabs/iceberg-rust into li0k/remove_snapshot_0307
…avelabs/iceberg-rust into li0k/remove_snapshot_0307
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.
LGTM! So successful.
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.
Great job! Feel free to port this to upstream
* feat(iceberg): basic remove snapshot * feat(iceberg): introduce new properties for remove snapshots * feat(iceberg): support remove schemas * refactor(iceberg): refactor file org * address comments * refactor(iceberg): refactor and ut * fix(iceberg): fix integration-test
* feat(iceberg): basic remove snapshot * feat(iceberg): introduce new properties for remove snapshots * feat(iceberg): support remove schemas * refactor(iceberg): refactor file org * address comments * refactor(iceberg): refactor and ut * fix(iceberg): fix integration-test
* feat(iceberg): basic remove snapshot * feat(iceberg): introduce new properties for remove snapshots * feat(iceberg): support remove schemas * refactor(iceberg): refactor file org * address comments * refactor(iceberg): refactor and ut * fix(iceberg): fix integration-test
* feat(iceberg): basic remove snapshot * feat(iceberg): introduce new properties for remove snapshots * feat(iceberg): support remove schemas * refactor(iceberg): refactor file org * address comments * refactor(iceberg): refactor and ut * fix(iceberg): fix integration-test
This PR adds the remove snapshot feature to the SDK along with basic tests. Note that currently, RW only relies on the main branch, no other branches or tags are involved.
refer to https://github.com/apache/iceberg/blob/main/core/src/main/java/org/apache/iceberg/RemoveSnapshots.java
Note: cleanExpiredMetadata is not currently implemented.