Back to Clickhouse

2026 Changelog

docs/changelogs/v25.10.6.36-stable.md

26.4.1.1-new11.6 KB
Original Source

2026 Changelog

ClickHouse release v25.10.6.36-stable (853dbd2ee0c) FIXME as compared to v25.10.5.40-stable (93e6f3ffcbd)

Improvement

  • Backported in #94931: Force purging of jemalloc arenas in case the ratio of dirty pages size to max_server_memory_usage exceeds memory_worker_purge_dirty_pages_threshold_ratio. #93500 (Eduard Karacharov).
  • Backported in #94728: Add support for SQL-defined named collections in BACKUP/RESTORE for S3 and Azure Blob Storage. Closes #94604. #94605 (Pablo Marcos).
  • Backported in #94984: Make sure the scheduler would prefer MemoryWorker thread under the CPU starvation, because it protects ClickHouse process from an existential threat. #94864 (Nikita Mikhaylov).
  • Backported in #95141: Run purging of jemalloc dirty pages in a different thread from main thread of MemoryWorker. If purging is slow, it could delay updates of RSS usage which could lead to out of memory kills of the process. Introduce new config memory_worker_purge_total_memory_threshold_ratio to start purging dirty pages based on ratio of total memory usage. #94902 (Antonio Andelic).
  • Backported in #95434: Now view_duration_ms shows the time when group was active, not the sum of the threads duration in it. #94966 (Sema Checherinda).

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

  • Backported in #94621: Fix possible logical error upon receiving another read request from a replica after a response with the finish=true flag was sent. This was possible due to a logical race condition within MergeTreeReadPoolParallelReplicas, although it was very unlikely to occur. #90921 (Nikita Taranov).
  • Backported in #95284: Fix query parameter substitution in CREATE USER authentication methods when using ON CLUSTER. Query parameters in authentication methods (e.g., password) were not being replaced, causing UNKNOWN_QUERY_PARAMETER errors on remote nodes. #92777 (xiaohuanlin).
  • Backported in #94763: Fix join results when the right-side join key is a sparse column. This closes #92920. I can only reproduce the bug with set compatibility='23.3'. Not sure if it should be backported. #93038 (Amos Bird).
  • Backported in #95528: Backups could crash the server if you do many concurrent backups clashing over the same files. #93659 (Alexey Milovidov).
  • Backported in #94884: Fix attaching Replicated DBs when the interserver host changed after restarting. #93779 (Tuan Pham Anh).
  • Backported in #94590: Fix type conversion to super type during the join operation of the storage Join with USING clause. Fixes #91672. Fixes #78572. #94000 (Dmitry Novik).
  • Backported in #94356: Fix bad check for typed paths in JSON. Checj was introduced in https://github.com/ClickHouse/ClickHouse/pull/92842 and can lead to error during existing tables startup. #94070 (Pavel Kruglov).
  • Backported in #95201: Fix function to subcolumns optimization not applied to subcolumns. #94323 (Pavel Kruglov).
  • Backported in #94927: Fix a crash during ANY LEFT JOIN optimization when isNotNull is evaluated on a missing column. #94600 (Molly).
  • Backported in #94820: Fix permission issues in BACKUP/RESTORE operations. #94617 (Pablo Marcos).
  • Backported in #94842: Fixes https://github.com/ClickHouse/clickhouse-core-incidents/issues/1250. Likely due to a mix-up, data_type (which may be DataTypeNullable*) is static_cast-ed to DataTypeDateTime64*. Instead, we should cast check_type (the nested type variable). #94627 (Miсhael Stetsyuk).
  • Backported in #94794: Fix possibly incorrect RIGHT join result when using complex ON conditions. Close #92913. #94680 (Vladimir Cherkasov).
  • Backported in #94784: Preserve constant index granularity (use_const_adaptive_granularity) after Vertical merges. #94725 (Azat Khuzhin).
  • Backported in #95640: Fix incorrect primary key and skip index pruning for predicates involving toWeek, toYearWeek, toStartOfWeek, toLastDayOfWeek, and toDayOfWeek, and fix exceptions in some of these functions for valid queries with LowCardinality(String). #94816 (Nihal Z. Miaji).
  • Backported in #95149: The getURLHostRFC function was missing bounds checks before dereferencing pointers. When an empty string was passed to domainRFC, it would read uninitialized memory, triggering MSan errors. #94851 (Alexey Milovidov).
  • Backported in #94992: Fix readonlyness of encrypted disks. #94852 (Azat Khuzhin).
  • Backported in #95214: Fix crash under some conditions when join runtime filters are enabled by default. #95000 (Alexander Gololobov).
  • Backported in #95423: Make column transform only once during getting content of manifesrt .avro list and files. #95164 (Daniil Ivanik).
  • Backported in #95380: Fixed inaccurate memory accounting when applying large patch parts after lightweight updates. Previously, applying large patches could cause excessive memory usage and result in the server process being killed by the OOM killer. #95231 (Anton Popov).
  • Backported in #95571: The password argument of the redis table function now will be masked in the logs and system tables (e.g.: query_log). #95325 (János Benjamin Antal).
  • Backported in #95604: Avoid possible crash for distributed queries in case of cancellation. #95466 (Aleksandr Musorin).
  • Backported in #95544: Fix check for encrypted disks over plain_rewritable (Fixes possible It is not possible to register multiple plain-rewritable disks with the same object storage prefix). #95470 (Azat Khuzhin).
  • Backported in #95693: Fixed There was an error: Cannot obtain error message logical error when waiting for a distributed DDL and dropping the Replicated database concurrently. Fixes #95539. #95664 (Alexander Tokmakov).

Build/Testing/Packaging Improvement

NO CL CATEGORY

NOT FOR CHANGELOG / INSIGNIFICANT

  • Backported in #94723: If some files in data part are missing, we can end up with inconsistent in-memory state of some columns which can lead to crashes. It's better to throw logical errors in this case. #92076 (Pavel Kruglov).
  • Backported in #94870: Add index out of range check in advanced shared data in JSON. #94855 (Pavel Kruglov).
  • Backported in #95271: CI: BackportCI to check PR content is valid. #95190 (Max Kainov).