apache / apache/gravitino

[FEATURE] Support Apache Iceberg Multi-Table Transactions

Open
#9,709 2 comments 2 reactions 0 assignees View on GitHub
feature
Dominant language
Java
Stars
3.2k
Forks
935
Avg merge
1d 16h
Merged PRs (30d)
298

Description

### Describe the feature

Support multi-table transactions for Apache Iceberg tables.

### Motivation

The benefit of implementing this part of the REST specification would be that all actions being performed for a use case could be staged until they are released as a single overall batch.

### Describe the solution

Unsure. Opening this issue to see if there was an existing proposal doc, devmail, or similar that I might've missed where this was being discussed.

### Additional context

As an example: I have a use case where I need to run aggregations and then write / commit those changes to two separate tables. The downstream consumers should only consider my changes once both appends have completed. By using multi-table transactions it significantly simplifies the reconciliation logic that might be required.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the Apache Iceberg REST specification and checking whether an existing proposal document or devmail discussion covers multi-table transactions. The issue names no files or tests; done would mean staging changes to multiple tables and releasing them as one batch so downstream consumers observe both appends together.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
data-engineering, databases
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.