Altinity Project Antalya Builds for ClickHouse® 26.3

Here are the detailed release notes for Altinity Project Antalya build version 26.3. For more details on the project, see:

Release history

Version 26.3.10.20001 is the latest release. We recommend that you use this version.

Version Release date Details Docker images
26.3.10.20001 2026-06-02 CI report
Release page
AMD64 and Aarch64

v26.3.10.20001

Released 2026-06-02

CI report | Release page

26.3.10.20001 Altinity Antalya (0ef53dd) as compared to 26.1.11.20001.altinityantalya (75d2d67)

Backward Incompatible Change

  • Added a new entra processor type which works with Entra using OIDC flow. Old azure type will be an alias. User now needs to specify tenant_id in configuration. (#1784 by @zvonand)

New Features

  • Introduce the export partition all command, which schedules exports for all partitions in a given table. Introduce a setting to control scheduling failure behavior (#1741 by @arthurpassos)
  • Query condition cache for iceberg tables (ClickHouse#102115 by @scanhex12 via #1804)
  • clickhouse-client: added --jwt-command, which invokes an external script to obtain a token; the script is re-invoked on every reconnect. (#1809 by @zvonand)

Performance Improvements

  • Reading a single large local Parquet file via file() / File engine is now parallelised across multiple sources, each handling a subset of row groups. (ClickHouse#104251 by @alexey-milovidov via #1806)
  • Share S3 ClientCache per bucket, reduce repeated region discovery (ClickHouse#96802 by @zvonand via #1807)
  • Don’t commit while holding the export manifests locks. This avoid contention when the network / commit process is slow. (#1813 by @arthurpassos)
  • Do not make ‘describe table’ query when schema is known (#1845 by @ianton-ru)

Improvements

  • SELECT * FROM system.databases now always lists data lake catalog databases regardless of the show_data_lake_catalogs_in_system_tables setting. Previously they were hidden by default, which was inconsistent with SHOW DATABASES that always showed them. (ClickHouse#103444 by @alsugiliazova via #1689)
  • Remove the export_merge_tree_partition_lock_inside_the_task setting. No longer maintained (#1713 by @arthurpassos)
  • Make export part and partition respect background tasks memory limit (#1728 by @arthurpassos)
  • Observability over exceptions on export partition operations was broken and not reliable. This PR simplifies it by making it a single JSON array instead of multiple paths in zookeeper. Another change is that now system.replicated_partition_exports returns only local information, it does not reach zookeeper. (#1730 by @arthurpassos)
  • Enabled experimental datalake catalogues by default (#1504 by @Enmk and #1743 by @zvonand)
  • Support for ’time’ type in Iceberg, read and write. (#1761 by @ianton-ru)
  • Adds native support for importing and exporting UUID data types in Arrow and Parquet formats. Users can now directly query and transfer UUID data between ClickHouse and other data tools without requiring manual string conversions or workarounds. Automated logical inference for top-level UUIDs, and support for explicit schema hint for nested UUIDs (ClickHouse#99521 by @ivanmantova via #1774)
  • Exporting UUIDs to Parquet via the Arrow encoder now includes the correct UUID type annotation, eliminating the need to manually cast FixedString(16) data when reading the files back into ClickHouse or other systems (ClickHouse#100150 by @ivanmantova via #1774)
  • Object information used for parsing data files in iceberg now contains the number of file rows and file size in bytes parsed from manifest file (ClickHouse#100645 by @divanik via #1776)
  • Resolve problems with paths and compatibility problems with Spark in Azure (v2) (ClickHouse#100420, ClickHouse#100295 via #1785)
  • Hybrid tables now can ignore the segments that can’t be reached by the combination of WHERE and segment predicate (#1788 by @mkmkme)
  • Added system.hybrid_watermarks to introspect the hybrid tables watermarks (#1789 by @mkmkme)
  • Various token-based auth improvements (#1799 by @zvonand)
  • Change the interface for Iceberg inserts with the catalog. Deprecate settings: storage_catalog_type, storage_aws_access_key_id, etc (ClickHouse#100334 by @scanhex12 via #1800)
  • Support Nullable(Tuple) for Arrow, ArrowStream, ORC, legacy Parquet formats (ClickHouse#101272 by @nihalzp via #1802)
  • Support Iceberg tables that have data files outside the table location or on a different object storage (#1812 by @zvonand)
  • No longer require allow_insert_into_iceberg to be enabled on all replicas for the partition export to work. (#1836 by @arthurpassos)
  • Make the export task timeout 24 hours instead of 1 hour (#1843 by @arthurpassos)
  • Prevent commit race conditions by adding a per-task commit_lock (#1847 by @arthurpassos)

Bug Fixes (user-visible misbehavior in an official stable release)

  • Fix incorrect work view over Iceberg table (#1759 by @ianton-ru)
  • Fix infinite recursion with empty namespace in Iceberg catalog (#1762 by @ianton-ru)
  • Fix server crash (LOGICAL_ERROR) when executing ALTER TABLE UPDATE/DELETE on Iceberg tables when no prior SELECT or INSERT was done on the table in the same server lifetime (ClickHouse#102113 by @alexey-milovidov via #1767)
  • Fix LOGICAL_ERROR crash “Unexpected number of rows in column subchunk” in native Parquet V3 reader when reading nullable columns with a WHERE filter (ClickHouse#102628 by @groeneai via #1768)
  • Now ClickHouse should properly handle spark-style tables (where we have full absolute path for each file or relative path to common table path) (ClickHouse#99935 by @alesapin via #1769)
  • Fix logical error exception when inserting into an Iceberg table with a Date column partitioned by year, month, or day transforms (ClickHouse#100404 by @alexey-milovidov via #1770)
  • Fix Iceberg INSERT retry loop failing when the table was created with iceberg_metadata_file_path and the target metadata version already exists (ClickHouse#101548 by @groeneai via #1771)
  • Fix server crash (LOGICAL_ERROR) when SELECT-ing from a materialized view backed by an IcebergLocal table engine (ClickHouse#101577 by @groeneai via #1772)
  • Fix Logical error: 'partitions_count > 0' exception when performing consecutive ALTER TABLE UPDATE on a partitioned Iceberg table (ClickHouse#101278 by @Desel72 via #1773)
  • Fix crash in IcebergLocal ALTER TABLE ... UPDATE when using Avro format, caused by LowCardinality/Nullable wrapper types not being unwrapped before serialization (ClickHouse#102337 by @Desel72 via #1773)
  • Fix exception when Iceberg metadata file path setting contains a null byte (ClickHouse#100283 by @alexey-milovidov via #1775)
  • Address OAuth security audit (#1777 by @zvonand)
  • Fix incorrect interaction between object_storage_remote_initiator and object_storage_cluster. (#1783 by @ianton-ru)

Build/Testing/Packaging Improvements

CI Fixes or Improvements

And ALL features included in previous Antalya releases

Docker images

Available for both AMD64 and Aarch64: altinity/clickhouse-server:26.3.10.20001.altinityantalya

Packages

Available for both AMD64 and Aarch64 from builds.altinity.cloud/#altinityantalya as either .deb, .rpm, or .tgz

Full Changelog: 75d2d67...0ef53dd