Skip to content

Conversation

@fresh-borzoni
Copy link
Contributor

@fresh-borzoni fresh-borzoni commented Feb 7, 2026

Purpose

Linked issue: close #2592

Iceberg counterpart of #2128 / PR #2189 (Paimon). Sub-task of #2067.

IcebergLakeCatalog.alterTable() throws UnsupportedOperationException on schema changes.
This PR adds ADD COLUMN support for Iceberg-enabled tables.

Brief change log

  • IcebergLakeCatalog: Implement AddColumn handling via Iceberg's UpdateSchema API (addColumn + moveBefore(__bucket))
  • IcebergLakeCatalog: 3-way schema compatibility check for crash recovery idempotency (matching Paimon's pattern)
  • IcebergLakeCatalog: normalize schemas to compare
  • IcebergLakeCatalogTest: 7 new unit tests (happy path, error cases, idempotency, complex types)
  • IcebergSchemaEvolutionITCase: 3 new e2e integration tests (log table, PK table, complex types)

@fresh-borzoni fresh-borzoni force-pushed the iceberg-schema-evolution_add_column branch from fbd24b8 to 57ff42d Compare February 7, 2026 19:52
@fresh-borzoni fresh-borzoni force-pushed the iceberg-schema-evolution_add_column branch from 57ff42d to deb6dd4 Compare February 7, 2026 20:08
@fresh-borzoni
Copy link
Contributor Author

@luoyuxia @loserwang1024 @buvb
PTAL 🙏

@fresh-borzoni fresh-borzoni changed the title Iceberg Schema Evolution ADD COLUMN [lake/iceberg] Support ADD COLUMN schema evolution for Iceberg lake catalog Feb 7, 2026
@MehulBatra
Copy link
Contributor

Thanks for raising the PR @fresh-borzoni , it's well-needed today, to make fluss-iceberg production ready, will take a look & review it!

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.

[lake/iceberg] Support ADD COLUMN schema evolution for Iceberg lake catalog

2 participants