Skip to content

fix(transaction): preserve commit invariants across retries - #3075

Draft
aarushigupta132 wants to merge 1 commit into
apache:mainfrom
aarushigupta132:ag/transaction-commit-invariants
Draft

fix(transaction): preserve commit invariants across retries#3075
aarushigupta132 wants to merge 1 commit into
apache:mainfrom
aarushigupta132:ag/transaction-commit-invariants

Conversation

@aarushigupta132

@aarushigupta132 aarushigupta132 commented Aug 26, 2026

Copy link
Copy Markdown
Contributor

Which issue does this PR close?

Prerequisite for the focused UpdateSchema series split from #3069.

What changes are included in this PR?

  • Keeps only the first transaction requirement for each protected metadata value, so later actions do not replace requirements derived from the transaction base.
  • Adds a base-table UUID requirement to every non-empty catalog commit and rejects retry rebases when an identifier resolves to a recreated table.
  • Avoids rebuilding metadata or issuing a catalog update when actions produce no updates.

This is independently mergeable and adds no sorting or partition-evolution API.

Are these changes tested?

Yes. Focused transaction tests cover requirement scoping, table recreation both during retry and at the catalog-update boundary, no-op suppression, retry behavior, and encrypted-table commits. Formatting and all-feature library Clippy pass.

@aarushigupta132
aarushigupta132 force-pushed the ag/transaction-commit-invariants branch from fd148fb to 3af92cf Compare August 26, 2026 13:47
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