Skip to content

feat: add merge append#699

Open
zhjwpku wants to merge 3 commits into
apache:mainfrom
zhjwpku:support_merge_append
Open

feat: add merge append#699
zhjwpku wants to merge 3 commits into
apache:mainfrom
zhjwpku:support_merge_append

Conversation

@zhjwpku

@zhjwpku zhjwpku commented Jun 6, 2026

Copy link
Copy Markdown
Collaborator

While adding merge append tests, it was discovered that FastAppend did not populate manifest count summary fields, thus add SnapshotUpdate::BuildManifestCountSummary and use it from FastAppend and MergingSnapshotUpdate, which is consistent with java implementation.

Comment thread src/iceberg/table.h
virtual Result<std::shared_ptr<FastAppend>> NewFastAppend();

/// \brief Create a new MergeAppend to append data files and merge manifests.
virtual Result<std::shared_ptr<MergeAppend>> NewMergeAppend();

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

StaticTable also needs to override this and return NotSupported. Otherwise a read-only StaticTable inherits Table::NewMergeAppend(), creates a mutating snapshot update, and later hits the null catalog path during commit. The existing static-table test should cover this alongside NewFastAppend.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Fixed.

Comment thread src/iceberg/update/merge_append.cc
@wgtmac

wgtmac commented Jun 18, 2026

Copy link
Copy Markdown
Member

Let's rebase to resolve conflicts and perhaps address above findings.

zhjwpku added 3 commits June 19, 2026 12:56
While adding merge append tests, it was discovered that FastAppend
did not populate manifest count summary fields, thus add
SnapshotUpdate::BuildManifestCountSummary and use it from
FastAppend and MergingSnapshotUpdate, which is consistent with
java implementation.
@zhjwpku zhjwpku force-pushed the support_merge_append branch from 2c14cdc to 4c3b27c Compare June 19, 2026 08:56
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.

2 participants