ClickHouse

Databases & Data

ClickHouse release notes.

Latest v26.7.3.19-stable · by ClickHouseWebsiteClickHouse/ClickHouse

Branches

26.7
v26.7.3.19-stable
26.6
v26.6.2.160-stable
25.8
v25.8.29.51-lts
26.3
v26.3.17.110-lts
26.5
v26.5.6.113-stable
26.4
v26.4.5.143-stable

Release activity

Release activity — 17 releases across 13 days since Jun 30, 2026. Each cell is one day; darker means more releases that day. Nothing is recorded before Jun 30, 2026. Older weeks are hidden at this screen width.
MayJunJulAug
Sunday1 release on Jul 5, 2026No releases on Jul 12, 2026No releases on Jul 19, 2026No releases on Jul 26, 2026No releases on Aug 2, 2026No releases on Aug 9, 2026No releases on Aug 16, 2026
MondayNo releases on Jul 6, 2026No releases on Jul 13, 20261 release on Jul 20, 2026No releases on Jul 27, 20261 release on Aug 3, 2026No releases on Aug 10, 2026No releases on Aug 17, 2026
Tuesday1 release on Jun 30, 2026No releases on Jul 7, 2026No releases on Jul 14, 20261 release on Jul 21, 2026No releases on Jul 28, 20262 releases on Aug 4, 2026No releases on Aug 11, 2026
Wednesday1 release on Jul 1, 2026No releases on Jul 8, 2026No releases on Jul 15, 20262 releases on Jul 22, 2026No releases on Jul 29, 20263 releases on Aug 5, 2026No releases on Aug 12, 2026
ThursdayNo releases on Jul 2, 2026No releases on Jul 9, 2026No releases on Jul 16, 20261 release on Jul 23, 2026No releases on Jul 30, 20261 release on Aug 6, 2026No releases on Aug 13, 2026
Friday1 release on Jul 3, 2026No releases on Jul 10, 2026No releases on Jul 17, 2026No releases on Jul 24, 2026No releases on Jul 31, 2026No releases on Aug 7, 2026No releases on Aug 14, 2026
Saturday1 release on Jul 4, 2026No releases on Jul 11, 2026No releases on Jul 18, 2026No releases on Jul 25, 2026No releases on Aug 1, 2026No releases on Aug 8, 2026No releases on Aug 15, 2026

17 releases since Jun 30, 2026, busiest day 3

Changelog

Filter releases by branch
17 of 17 releases
v26.7.3.19-stableLatestFrom commit messages

Release v26.7.3.19-stable

Fixed 10
  • Misreporting of datalake catalog errors as missing tables.
  • JOIN USING identifier resolution from aliases nested in the SELECT list.
  • Paimon DLF request signing exposed by error propagation.
  • Out-of-bounds write reading a Parquet DECIMAL wider than declared.
  • Deduplication token attribution for materialized-view targets of partitioned tables.
  • Startup and ATTACH of a view with a recursive CTE with the old analyzer.
View originalPermalink
How v26.7.3.19-stable went
v25.8.29.51-ltsFrom commit messages

Release v25.8.29.51-lts

Added 1
  • Add cache for bcrypt authentication and path validation in delta lake.
Fixed 2
  • Fix duplicate arrayJoin execution in JOIN ON with new logical join step, race between ALTER RENAME COLUMN and merge causing data loss, data loss when a merge races ALTER RENAME COLUMN on a column without a default expression, heap-buffer-overflow when serializing a shared quantileTDigest state, heap-buffer-overflow in T64 and abort in Multiple decompression codecs, OOB segfault in groupArrayLastMerge, OOB when deserializing bad aggregate function states, and segfault and silent data corruption when appending a non-appendable format to a file.
  • Fix projection incorrectly reading a newly-added column as the type default instead of its DEFAULT value, column order for distributed alias columns, TSan data race in uniqExact two-level parallel merge, bug in levenshteinDistanceWeighted function, crash in ProtobufRowInputFormat when a valid row precedes a bad row, missing variant_discr stream for Dynamic columns after mutation, mutations with query parameters in IN PARTITION, reading from an encrypted disk with O_DIRECT, and Invalid number of rows in Chunk in JoiningTransform with additional join filter.
Security 8
  • Fix SQL injection in ExternalQueryBuilder via incorrect string escaping.
  • Fix MySQL dictionary source bypassing RemoteHostFilter for inline DDL params.
  • Fix row policy bypass via loop table function.
  • Fix credential leak in query_log for paimon*Cluster and deltaLakeS3 table engines.
  • Implement http header validation for DataLakeCatalog and enforce access control for MySQL COM_FIELD_LIST and COM_INIT_DB.
  • Fix RBAC bypass for DESCRIBE via remote() table functions and for DESCRIBE/CREATE TABLE AS via table functions.
  • Fix peer certificate leak in Poco SecureSocketImpl::verifyPeerCertificateImpl and improve masking of passwords in URLs used in table engine URL() and table function url().
  • Fix krb5 CVE-2026-40355 and CVE-2026-40356.
View originalPermalink
How v25.8.29.51-lts went
v26.3.17.110-ltsFrom commit messages

Release v26.3.17.110-lts

Added 1
  • Added support for additional storage classes in S3.
Fixed 6
  • Fixed dangling pointer in HashJoin::shrinkStoredBlocksToFit, out-of-bounds segfault in groupArrayLastMerge, segfault in largestTriangleThreeBuckets aggregate function, bug in levenshteinDistanceWeighted function, and rollup with materialized and virtual columns.
  • Fixed infinite rollup.
  • Fixed text-index direct-read double-registration over Merge/Distributed.
  • Fixed LOGICAL_ERROR on DROP COLUMN with ALIAS column using IN and UNKNOWN_IDENTIFIER on ALTER TABLE DROP COLUMN with aliased default expression.
  • Fixed async-insert deduplication token bleed across partitions.
  • Fixed segfault and silent data corruption when appending a non-appendable format to a file, out-of-bounds crash in ObjectStorageQueueSource::FileIterator::next, reading from an encrypted disk with O_DIRECT, data loss when a merge races ALTER RENAME COLUMN, and out-of-bounds write reading a Parquet DECIMAL wider than declared.
Security 2
  • Added path validation in delta lake.
  • Masked session_token and Google ADC secrets in the explicit-url S3 form.
View originalPermalink
How v26.3.17.110-lts went
v26.6.2.158-stableFrom commit messages

Release v26.6.2.158-stable

Fixed 11
  • Virtual row with union produces wrong result.
  • Rollup with materialized and virtual columns.
  • Block structure mismatch in UnionStep/IntersectOrExceptStep when a branch constant-folds.
  • Infinite rollup.
  • Text-index direct-read double-registration over Merge/Distributed.
  • Segfault due to bad shutdown ordering on startup exception.
View originalPermalink
How v26.6.2.158-stable went
v26.5.6.113-stableFrom commit messages

Release v26.5.6.113-stable

Changed 1
  • Pre-warm async insert dedup hashes before partition loop to fix O(P×N) recomputation.
Fixed 8
  • Memory usage growth in filesystem cache and per-segment and per-key memory usage.
  • Use-after-free when using Iceberg tables in combination with temporary tables.
  • Bug with `data_kind = Preprocessed` failing the whole async batch.
  • Text index incorrectly used for has/mapContainsKey/mapContainsValue with an empty needle.
  • Multiple issues in Iceberg table handling including primitive type string comparison with whitespace and format version upgrade exceptions.
  • Column not found errors for lazy materialization, FINAL with filter and LIMIT, and ALTER TABLE DROP COLUMN with aliased default expressions.
  • CREATE OR REPLACE of a dictionary with an object of another kind and mutations with query parameters in IN PARTITION.
  • Data loss when a merge races ALTER RENAME COLUMN and various other data integrity issues including OOB deserialization and overflow in zookeeper_info parsing.
Security 1
  • Peer certificate leak in Poco `SecureSocketImpl::verifyPeerCertificateImpl` and masked session_token and Google ADC secrets in explicit-url S3 forms.
View originalPermalink
How v26.5.6.113-stable went
v26.7.2.59-stableFrom commit messages

Release v26.7.2.59-stable

Added 1
  • Setting `analyzer_compatibility_apply_final_to_all_joined_tables` for compatibility control.
Changed 1
  • Marked the ZXC codec as experimental.
Fixed 8
  • Performance regression in async insert deduplication by pre-warming hashes before partition loop.
  • CREATE OR REPLACE of a dictionary with an object of another kind.
  • StorageJoin handling in ANY-to-SEMI/ANTI join conversion.
  • Manifest compaction partition size.
  • Text index incorrectly used for has/mapContainsKey/mapContainsValue with an empty needle.
  • Missing Content-Length header for Azure requests in the Poco HTTP transport.
  • Iceberg primitive type string comparison to ignore whitespace.
  • Multiple issues including column not found error with lazy materialization, primary key index analysis for reverse sorting, mutations with query parameters, peer certificate leak, macOS crash on fiber stacks, and direct dictionary join type mismatches.
View originalPermalink
How v26.7.2.59-stable went
v26.5.6.64-stableFrom commit messages

Release v26.5.6.64-stable

Added 4
  • Added `aiEmbed` function.
  • Added support for `S3` `external_id` in backup.
  • Added setting to use blob endpoint instead of dfs.
  • Added `use_fast_decoder` and `dictionary_as_low_cardinality` to ORC schema cache key.
Changed 4
  • Restored prefetch for small files read from object storage.
  • Changed to use try-lock in LRUFileCachePriority::tryIncreasePriority.
  • Split remote database and data lake visibility settings.
  • Enforce access control for MySQL COM_FIELD_LIST and COM_INIT_DB.
Fixed 2
  • Fixed Block structure mismatch in UnionStep on a Sparse-vs-full divergent branch, crash on deeply nested expressions with raised max_parser_depth, logical error casting Dynamic/Variant inside Tuple with accurateCastOrNull, runtime join filter producing wrong results for JSON columns, uniqExact concurrent-merge crash with GROUPING SETS/ROLLUP/CUBE, race between ALTER RENAME COLUMN and merge causing data loss, skip+unused_shards through Merge over Distributed in the analyzer, server crash on deduplicated async insert with optimize_on_insert, out-of-bounds segfault in groupArrayLastMerge, projection incorrectly reading a newly-added column as the type default instead of its DEFAULT value, heap-buffer-overflow when serializing a shared quantileTDigest state, query condition cache poisoning by on-fly mutations, and crash moving an empty part to a plain_rewritable disk.
  • Fixed reading Iceberg tables sorted on special-char column names.
Security 1
  • Fixed krb5 CVE-2026-40355 and CVE-2026-40356.
View originalPermalink
How v26.5.6.64-stable went
v25.8.26.11-ltsFrom commit messages

Release v25.8.26.11-lts

Fixed 5
  • Server crash in `getTablesSplitByDependencyLevel` with cyclic dependencies.
  • Crash on deeply nested expressions with raised max_parser_depth.
  • MySQL OK packet now length-encodes the `info` field.
  • Uniqexact concurrent-merge crash with GROUPING SETS/ROLLUP/CUBE.
  • Parse nested literal collections in linear time.
Security 2
  • Enforce single-component matching for SSL certificate wildcards.
  • Avoid storing S3 credentials in backup metadata.
View originalPermalink
How v25.8.26.11-lts went
View all

Discussion

If you publish ClickHouse, you can claim this product by proving you administer its repository.