Skip to content

feat(transaction): Remove current_table, updates, and requirements from Transaction #1451

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

CTTY
Copy link
Contributor

@CTTY CTTY commented Jun 18, 2025

Which issue does this PR close?

Related Issue

Closes:

What changes are included in this PR?

This PR wraps up the effort to make Transaction API + TransactionAction retryable!
With Transaction holds retryable actions, it no longer needs to hold staging variables like current_table, updates, or requirements. These can be generated within do_commit.

  • Remove current_table, updates, and requirements from Transaction

Are these changes tested?

Existing unit tests

while self
.current_table
.table
.metadata()
.snapshots()
.any(|s| s.snapshot_id() == snapshot_id)
Copy link
Contributor Author

@CTTY CTTY Jun 18, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we should move the generation of snapshot_id to SnapshotProducer::new. The catch of doing this: if retry happens, every attempt will have a different snapshot_id. I have not seen any side effects yet

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.

1 participant