Skip to content

Antalya 26.1 : Fix Rename column support for Iceberg#1594

Draft
subkanthi wants to merge 5 commits intoantalya-26.1from
rename_columns_iceberg
Draft

Antalya 26.1 : Fix Rename column support for Iceberg#1594
subkanthi wants to merge 5 commits intoantalya-26.1from
rename_columns_iceberg

Conversation

@subkanthi
Copy link
Copy Markdown
Collaborator

@subkanthi subkanthi commented Mar 29, 2026

Changelog category (leave one):

  • Bugfix

Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):

Fixes Alter table ADD/RENAME/MODIFY column for Iceberg tables.

Documentation entry for user-facing changes

Solved ClickHouse#86024.
Fixed logic of updating metadata JSON as per Iceberg REST API Spec.
Added unit/integration tests.

CI/CD Options

Exclude tests:

  • Fast test
  • Integration Tests
  • Stateless tests
  • Stateful tests
  • Performance tests
  • All with ASAN
  • All with TSAN
  • All with MSAN
  • All with UBSAN
  • All with Coverage
  • All with Aarch64
  • All Regression
  • Disable CI Cache

Regression jobs to run:

  • Fast suites (mostly <1h)
  • Aggregate Functions (2h)
  • Alter (1.5h)
  • Benchmark (30m)
  • ClickHouse Keeper (1h)
  • Iceberg (2h)
  • LDAP (1h)
  • Parquet (1.5h)
  • RBAC (1.5h)
  • SSL Server (1h)
  • S3 (2h)
  • S3 Export (2h)
  • Swarms (30m)
  • Tiered Storage (2h)

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 29, 2026

Workflow [PR], commit [156b93f]

@subkanthi subkanthi changed the title Rename column support for IcebergLocal Antalya 26.1 backport: Rename column support for Iceberg Mar 31, 2026
@subkanthi
Copy link
Copy Markdown
Collaborator Author

ALTER TABLE ice.`nyc.taxis_p_by_day`
    (RENAME COLUMN extra TO trip_extra)

Query id: 249360cb-6640-4246-ba40-3c5c0d2f3759

2026.03.31 16:27:45.208651 [ 3987905 ] {249360cb-6640-4246-ba40-3c5c0d2f3759} <Fatal> : Logical error: 'Metadata is not initialized'.
2026.03.31 16:27:45.208758 [ 3987905 ] {249360cb-6640-4246-ba40-3c5c0d2f3759} <Fatal> : Format string: 'Metadata is not initialized'.
2026.03.31 16:27:46.794815 [ 3987905 ] {249360cb-6640-4246-ba40-3c5c0d2f3759} <Fatal> : Stack trace (when copying this message, always include the lines below):

0. /root/Documents/ClickHouse/contrib/llvm-project/libcxx/include/__exception/exception.h:113: Poco::Exception::Exception(String const&, int) @ 0x00000000232350b2
1. /root/Documents/ClickHouse/src/Common/Exception.cpp:136: DB::Exception::Exception(DB::Exception::MessageMasked&&, int, bool) @ 0x0000000013cf1e5e
2. /root/Documents/ClickHouse/src/Common/Exception.h:172: DB::Exception::Exception(String&&, int, String, bool) @ 0x000000000ba5e3ce
3. /root/Documents/ClickHouse/src/Common/Exception.h:58: DB::Exception::Exception(PreformattedMessage&&, int) @ 0x000000000ba5dec5
4. /root/Documents/ClickHouse/src/Common/Exception.h:190: DB::Exception::Exception<>(int, FormatStringHelperImpl<>) @ 0x0000000013cfa42b
5. /root/Documents/ClickHouse/src/Storages/ObjectStorage/DataLakes/DataLakeConfiguration.h:440: DB::DataLakeConfiguration<DB::StorageS3Configuration, DB::IcebergMetadata, true>::checkAlterIsPossible(DB::AlterCommands const&) @ 0x00000000161021c8
6. /root/Documents/ClickHouse/src/Storages/ObjectStorage/StorageObjectStorage.cpp:804: DB::StorageObjectStorage::checkAlterIsPossible(DB::AlterCommands const&, std::shared_ptr<DB::Context const>) const @ 0x0000000017f4ab9e
7. /root/Documents/ClickHouse/src/Storages/ObjectStorage/StorageObjectStorageCluster.cpp:812: DB::StorageObjectStorageCluster::checkAlterIsPossible(DB::AlterCommands const&, std::shared_ptr<DB::Context const>) const @ 0x0000000017f5d2b8
8. /root/Documents/ClickHouse/src/Interpreters/InterpreterAlterQuery.cpp:274: DB::InterpreterAlterQuery::executeToTable(DB::ASTAlterQuery const&) @ 0x0000000019991d61
9. /root/Documents/ClickHouse/src/Interpreters/InterpreterAlterQuery.cpp:85: DB::InterpreterAlterQuery::execute() @ 0x000000001998e292
10. /root/Documents/ClickHouse/src/Interpreters/executeQuery.cpp:1720: DB::executeQueryImpl(char const*, char const*, std::shared_ptr<DB::Context>, DB::QueryFlags, DB::QueryProcessingStage::Enum, std::unique_ptr<DB::ReadBuffer, std::default_delete<DB::ReadBuffer>>&, boost::intrusive_ptr<DB::IAST>&, std::shared_ptr<DB::ImplicitTransactionControlExecutor>, std::function<void ()>, DB::QueryResultDetails&) @ 0x0000000019d7b016
11. /root/Documents/ClickHouse/src/Interpreters/executeQuery.cpp:1948: DB::executeQuery(String const&, std::shared_ptr<DB::Context>, DB::QueryFlags, DB::QueryProcessingStage::Enum) @ 0x0000000019d73661
12. /root/Documents/ClickHouse/src/Client/LocalConnection.cpp:286: DB::LocalConnection::sendQuery(DB::ConnectionTimeouts const&, String const&, std::unordered_map<String, String, std::hash<String>, std::equal_to<String>, std::allocator<std::pair<String const, String>>> const&, String const&, unsigned long, DB::Settings const*, DB::ClientInfo const*, bool, std::vector<String, std::allocator<String>> const&, std::function<void (DB::Progress const&)>) @ 0x000000001cf7111d
13. /root/Documents/ClickHouse/src/Client/ClientBase.cpp:1305: DB::ClientBase::processOrdinaryQuery(String, boost::intrusive_ptr<DB::IAST>) @ 0x000000001ceee2ec
14. /root/Documents/ClickHouse/src/Client/ClientBase.cpp:2382: DB::ClientBase::processParsedSingleQuery(std::basic_string_view<char, std::char_traits<char>>, boost::intrusive_ptr<DB::IAST>, bool&, unsigned long) @ 0x000000001ceec5ee
15. /root/Documents/ClickHouse/src/Client/ClientBase.cpp:2759: DB::ClientBase::executeMultiQuery(String const&) @ 0x000000001cef80a3
16. /root/Documents/ClickHouse/src/Client/ClientBase.cpp:3000: DB::ClientBase::processQueryText(String const&) @ 0x000000001cef91f0
17. /root/Documents/ClickHouse/src/Client/ClientBase.cpp:3716: DB::ClientBase::runInteractive() @ 0x000000001cf02c8b
18. /root/Documents/ClickHouse/programs/local/LocalServer.cpp:0: DB::LocalServer::main(std::vector<String, std::allocator<String>> const&) @ 0x0000000013fcc9ca
19. /root/Documents/ClickHouse/base/poco/Util/src/Application.cpp:315: Poco::Util::Application::run() @ 0x0000000023310326
20. /root/Documents/ClickHouse/programs/local/LocalServer.cpp:1267: mainEntryClickHouseLocal(int, char**) @ 0x0000000013fdc761
21. /root/Documents/ClickHouse/programs/main.cpp:380: main @ 0x000000000ba50026
22. ? @ 0x000000000002a1ca
23. __libc_start_main @ 0x000000000002a28b
24. _start @ 0x000000000ba4da6e

2026.03.31 16:27:46.802683 [ 3987908 ] {} <Fatal> ClientBase: ########## Short fault info ############
2026.03.31 16:27:46.802722 [ 3987908 ] {} <Fatal> ClientBase: (version 26.1.6.20001.altinityantalya, build id: C0A44390CD84E87ED79B82DD53952B95716112BC, git hash: 3addd5f5a7e558b892f961683c19c5a393dcc55e, architecture: x86_64) (from thread 3987905) Received signal 6
2026.03.31 16:27:46.802728 [ 3987908 ] {} <Fatal> ClientBase: Signal description: Aborted
2026.03.31 16:27:46.802732 [ 3987908 ] {} <Fatal> ClientBase: 
2026.03.31 16:27:46.802760 [ 3987908 ] {} <Fatal> ClientBase: Stack trace: 0x0000706cdd49eb2d 0x0000706cdd44527e 0x0000706cdd4288ff 0x00005793745bef67 0x00005793745bfd24 0x00005793745bffe5 0x000057936c32c3ce 0x000057936c32bec5 0x00005793745c842b 0x00005793769d01c8 0x0000579378818b9e 0x000057937882b2b8 0x000057937a25fd61 0x000057937a25c292 0x000057937a649016 0x000057937a641661 0x000057937d83f11d 0x000057937d7bc2ec 0x000057937d7ba5ee 0x000057937d7c60a3 0x000057937d7c71f0 0x000057937d7d0c8b 0x000057937489a9ca 0x0000579383bde326 0x00005793748aa761 0x000057936c31e026 0x0000706cdd42a1ca 0x0000706cdd42a28b 0x000057936c31ba6e
2026.03.31 16:27:46.802769 [ 3987908 ] {} <Fatal> ClientBase: ########################################
2026.03.31 16:27:46.802867 [ 3987908 ] {} <Fatal> ClientBase: (version 26.1.6.20001.altinityantalya, build id: C0A44390CD84E87ED79B82DD53952B95716112BC, git hash: 3addd5f5a7e558b892f961683c19c5a393dcc55e) (from thread 3987905) (query_id: 249360cb-6640-4246-ba40-3c5c0d2f3759) (query: alter table ice.`nyc.taxis_p_by_day` rename column extra to trip_extra;) Received signal Aborted (6)
2026.03.31 16:27:46.802918 [ 3987908 ] {} <Fatal> ClientBase: 
2026.03.31 16:27:46.802962 [ 3987908 ] {} <Fatal> ClientBase: Stack trace: 0x0000706cdd49eb2d 0x0000706cdd44527e 0x0000706cdd4288ff 0x00005793745bef67 0x00005793745bfd24 0x00005793745bffe5 0x000057936c32c3ce 0x000057936c32bec5 0x00005793745c842b 0x00005793769d01c8 0x0000579378818b9e 0x000057937882b2b8 0x000057937a25fd61 0x000057937a25c292 0x000057937a649016 0x000057937a641661 0x000057937d83f11d 0x000057937d7bc2ec 0x000057937d7ba5ee 0x000057937d7c60a3 0x000057937d7c71f0 0x000057937d7d0c8b 0x000057937489a9ca 0x0000579383bde326 0x00005793748aa761 0x000057936c31e026 0x0000706cdd42a1ca 0x0000706cdd42a28b 0x000057936c31ba6e
2026.03.31 16:27:46.803043 [ 3987908 ] {} <Fatal> ClientBase: 3. pthread_kill @ 0x000000000009eb2d
2026.03.31 16:27:46.803087 [ 3987908 ] {} <Fatal> ClientBase: 4. raise @ 0x000000000004527e
2026.03.31 16:27:46.803142 [ 3987908 ] {} <Fatal> ClientBase: 5. abort @ 0x00000000000288ff
2026.03.31 16:27:49.523119 [ 3987908 ] {} <Fatal> ClientBase: 6. /root/Documents/ClickHouse/src/Common/Exception.cpp:57: DB::abortOnFailedAssertion(String const&, std::basic_string_view<char, std::char_traits<char>>, void* const*, unsigned long, unsigned long) @ 0x0000000013cf0f67
2026.03.31 16:27:49.698761 [ 3987908 ] {} <Fatal> ClientBase: 7. /root/Documents/ClickHouse/src/Common/Exception.cpp:90: DB::handle_error_code(String const&, std::basic_string_view<char, std::char_traits<char>>, int, bool, std::vector<void*, std::allocator<void*>> const&) @ 0x0000000013cf1d24
2026.03.31 16:27:49.723073 [ 3987908 ] {} <Fatal> ClientBase: 8. /root/Documents/ClickHouse/src/Common/Exception.cpp:143: DB::Exception::Exception(DB::Exception::MessageMasked&&, int, bool) @ 0x0000000013cf1fe5
2026.03.31 16:27:49.784329 [ 3987908 ] {} <Fatal> ClientBase: 9. /root/Documents/ClickHouse/src/Common/Exception.h:172: DB::Exception::Exception(String&&, int, String, bool) @ 0x000000000ba5e3ce
2026.03.31 16:27:49.807185 [ 3987908 ] {} <Fatal> ClientBase: 10. /root/Documents/ClickHouse/src/Common/Exception.h:58: DB::Exception::Exception(PreformattedMessage&&, int) @ 0x000000000ba5dec5
2026.03.31 16:27:49.826915 [ 3987908 ] {} <Fatal> ClientBase: 11. /root/Documents/ClickHouse/src/Common/Exception.h:190: DB::Exception::Exception<>(int, FormatStringHelperImpl<>) @ 0x0000000013cfa42b
2026.03.31 16:27:53.567602 [ 3987908 ] {} <Fatal> ClientBase: 12.0. inlined from /root/Documents/ClickHouse/src/Storages/ObjectStorage/DataLakes/DataLakeConfiguration.h:440: DB::DataLakeConfiguration<DB::StorageS3Configuration, DB::IcebergMetadata, true>::assertInitializedDL() const
2026.03.31 16:27:53.567648 [ 3987908 ] {} <Fatal> ClientBase: 12. /root/Documents/ClickHouse/src/Storages/ObjectStorage/DataLakes/DataLakeConfiguration.h:167: DB::DataLakeConfiguration<DB::StorageS3Configuration, DB::IcebergMetadata, true>::checkAlterIsPossible(DB::AlterCommands const&) @ 0x00000000161021c8
2026.03.31 16:27:54.472552 [ 3987908 ] {} <Fatal> ClientBase: 13. /root/Documents/ClickHouse/src/Storages/ObjectStorage/StorageObjectStorage.cpp:804: DB::StorageObjectStorage::checkAlterIsPossible(DB::AlterCommands const&, std::shared_ptr<DB::Context const>) const @ 0x0000000017f4ab9e
2026.03.31 16:27:54.680056 [ 3987908 ] {} <Fatal> ClientBase: 14. /root/Documents/ClickHouse/src/Storages/ObjectStorage/StorageObjectStorageCluster.cpp:812: DB::StorageObjectStorageCluster::checkAlterIsPossible(DB::AlterCommands const&, std::shared_ptr<DB::Context const>) const @ 0x0000000017f5d2b8
2026.03.31 16:27:56.432026 [ 3987908 ] {} <Fatal> ClientBase: 15. /root/Documents/ClickHouse/src/Interpreters/InterpreterAlterQuery.cpp:274: DB::InterpreterAlterQuery::executeToTable(DB::ASTAlterQuery const&) @ 0x0000000019991d61
2026.03.31 16:27:56.462880 [ 3987908 ] {} <Fatal> ClientBase: 16. /root/Documents/ClickHouse/src/Interpreters/InterpreterAlterQuery.cpp:85: DB::InterpreterAlterQuery::execute() @ 0x000000001998e292
2026.03.31 16:27:58.985322 [ 3987908 ] {} <Fatal> ClientBase: 17. /root/Documents/ClickHouse/src/Interpreters/executeQuery.cpp:1720: DB::executeQueryImpl(char const*, char const*, std::shared_ptr<DB::Context>, DB::QueryFlags, DB::QueryProcessingStage::Enum, std::unique_ptr<DB::ReadBuffer, std::default_delete<DB::ReadBuffer>>&, boost::intrusive_ptr<DB::IAST>&, std::shared_ptr<DB::ImplicitTransactionControlExecutor>, std::function<void ()>, DB::QueryResultDetails&) @ 0x0000000019d7b016
2026.03.31 16:27:59.066951 [ 3987908 ] {} <Fatal> ClientBase: 18. /root/Documents/ClickHouse/src/Interpreters/executeQuery.cpp:1948: DB::executeQuery(String const&, std::shared_ptr<DB::Context>, DB::QueryFlags, DB::QueryProcessingStage::Enum) @ 0x0000000019d73661
2026.03.31 16:28:00.241923 [ 3987908 ] {} <Fatal> ClientBase: 19. /root/Documents/ClickHouse/src/Client/LocalConnection.cpp:286: DB::LocalConnection::sendQuery(DB::ConnectionTimeouts const&, String const&, std::unordered_map<String, String, std::hash<String>, std::equal_to<String>, std::allocator<std::pair<String const, String>>> const&, String const&, unsigned long, DB::Settings const*, DB::ClientInfo const*, bool, std::vector<String, std::allocator<String>> const&, std::function<void (DB::Progress const&)>) @ 0x000000001cf7111d
2026.03.31 16:28:01.507287 [ 3987908 ] {} <Fatal> ClientBase: 20. /root/Documents/ClickHouse/src/Client/ClientBase.cpp:1305: DB::ClientBase::processOrdinaryQuery(String, boost::intrusive_ptr<DB::IAST>) @ 0x000000001ceee2ec
2026.03.31 16:28:01.817085 [ 3987908 ] {} <Fatal> ClientBase: 21. /root/Documents/ClickHouse/src/Client/ClientBase.cpp:2382: DB::ClientBase::processParsedSingleQuery(std::basic_string_view<char, std::char_traits<char>>, boost::intrusive_ptr<DB::IAST>, bool&, unsigned long) @ 0x000000001ceec5ee
2026.03.31 16:28:02.078285 [ 3987908 ] {} <Fatal> ClientBase: 22. /root/Documents/ClickHouse/src/Client/ClientBase.cpp:2759: DB::ClientBase::executeMultiQuery(String const&) @ 0x000000001cef80a3
2026.03.31 16:28:02.213265 [ 3987908 ] {} <Fatal> ClientBase: 23. /root/Documents/ClickHouse/src/Client/ClientBase.cpp:3000: DB::ClientBase::processQueryText(String const&) @ 0x000000001cef91f0
2026.03.31 16:28:02.281558 [ 3987908 ] {} <Fatal> ClientBase: 24. /root/Documents/ClickHouse/src/Client/ClientBase.cpp:3716: DB::ClientBase::runInteractive() @ 0x000000001cf02c8b
2026.03.31 16:28:02.351519 [ 3987908 ] {} <Fatal> ClientBase: 25. /root/Documents/ClickHouse/programs/local/LocalServer.cpp:0: DB::LocalServer::main(std::vector<String, std::allocator<String>> const&) @ 0x0000000013fcc9ca
2026.03.31 16:28:03.006053 [ 3987908 ] {} <Fatal> ClientBase: 26. /root/Documents/ClickHouse/base/poco/Util/src/Application.cpp:315: Poco::Util::Application::run() @ 0x0000000023310326
2026.03.31 16:28:03.066159 [ 3987908 ] {} <Fatal> ClientBase: 27. /root/Documents/ClickHouse/programs/local/LocalServer.cpp:1267: mainEntryClickHouseLocal(int, char**) @ 0x0000000013fdc761
2026.03.31 16:28:03.072398 [ 3987908 ] {} <Fatal> ClientBase: 28. /root/Documents/ClickHouse/programs/main.cpp:380: main @ 0x000000000ba50026
2026.03.31 16:28:03.072452 [ 3987908 ] {} <Fatal> ClientBase: 29. ? @ 0x000000000002a1ca
2026.03.31 16:28:03.072498 [ 3987908 ] {} <Fatal> ClientBase: 30. __libc_start_main @ 0x000000000002a28b
2026.03.31 16:28:54.584438 [ 3987908 ] {} <Fatal> ClientBase: 31. _start @ 0x000000000ba4da6e
2026.03.31 16:28:54.584652 [ 3987908 ] {} <Fatal> ClientBase: Changed settings: allow_introspection_functions = true, serialize_query_plan = false, storage_file_read_method = 'mmap', allow_experimental_database_iceberg = true, implicit_select = true
Aborted (core dumped)

@subkanthi
Copy link
Copy Markdown
Collaborator Author

ClickHouse#86024

@subkanthi subkanthi changed the title Antalya 26.1 backport: Rename column support for Iceberg Antalya 26.1 : Fix Rename column support for Iceberg Apr 2, 2026
@subkanthi subkanthi added bugfix and removed backport Backport labels Apr 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant