Back to Clickhouse

2025 Changelog

docs/changelogs/v25.10.2.65-stable.md

26.4.1.1-new9.4 KB
Original Source

2025 Changelog

ClickHouse release v25.10.2.65-stable (4ff630944f8) FIXME as compared to v25.10.1.3832-stable (f95c1af632a)

Backward Incompatible Change

  • Backported in #89358: Prohibit the creation of multiple plain-rewritable disks on top of the shared object storage path, as this can lead to undefined behavior during collisions of different metadata storage transactions. #89038 (Mikhail Artemenko).

Performance Improvement

  • Backported in #89506: Queries can now benefit from optimize_read_in_order and query_plan_optimize_lazy_materialization simultaneously. Resolves #88767. #88866 (Manuel).

Improvement

  • Backported in #89650: Add cache for bcrypt authentication. #87115 (Nikolay Degterinsky).
  • Backported in #89425: Subqueries which take part inside IN expressions when querying Iceberg table will be precomputed in the right way before partition pruning analysis. #89177 (Daniil Ivanik).

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

  • Backported in #89578: Fix reading mixed array of Floats and Bools in JSON. Previously inserting such data led to an exception. #88008 (Pavel Kruglov).
  • Backported in #89508: Fix logical error in cross join reordering when query_plan_optimize_join_order_limit > 1, Close #89409. #88286 (Vladimir Cherkasov).
  • Backported in #89673: Fix #88426 1. Disallow explicit column definitions in Alias and columns are automatically load from the target table. This ensures that the alias always matches the target table's schema. 2. Proxy more methods from the IStorage. #88552 (Kai Zhu).
  • Backported in #89446: Fix possible "Context has expired" with new analyzer with subqueries. #88694 (Azat Khuzhin).
  • Backported in #89466: Fix propagation of size restrictions by settings max_table_size_to_drop and max_partition_size_to_drop on DROP of inner tables. #88812 (Nikolay Degterinsky).
  • Backported in #89716: Fix icebergS3Cluster protocol. Started supporting schema evolution, positional and equality deletes in iceberg cluster function. Resolves #88287. #88919 (Yang Jiang).
  • Backported in #89438: Fix LOGICAL_ERROR in L2DistanceTransposed(vec1, vec2, p) where the optimization for partial QBit reading incorrectly removed Nullable from the return type when p was LowCardinality(Nullable(T)). Resolves #88362. #89397 (Raufs Dunamalijevs).
  • Backported in #89449: Fix loading tables with incorrect sparse serialization for tuple itself (that is written by older ClickHouse versions). #89405 (Azat Khuzhin).
  • Backported in #89487: Fixed incorrect merge handling of TTL-emptied parts with non-empty projections when using deduplicate_merge_projection_mode='ignore'. Resolves #89430. #89458 (Amos Bird).
  • Backported in #89570: Fix reading of changelogs during Keeper startup in cases a changelog was not renamed properly during rotation. #89496 (Antonio Andelic).
  • Backported in #89633: Fix incorrect JOIN results when using OR conditions with unique right table keys. Resolves #89391. #89512 (Vladimir Cherkasov).
  • Backported in #89595: Fix possible "Context has expired" with analyzer and PK IN (subquery) (v2). Fixes #89433. #89527 (Azat Khuzhin).
  • Backported in #89688: Fix a crash in case if a state of an aggregate function contains a serialized value of a column of LowCardinality(String). #89550 (Pavel Kruglov).
  • Backported in #89678: Add runtime filters only for supported join algorithms i.e. hash joins. A filter can only be built when join algorithm first fully reads the right side and then reads the left side, but FullSortingMergeJoin for example reads both sides simultaneously. Fixes #89220. #89652 (Alexander Gololobov).
  • Backported in #89699: Fix logical error/crash with join runtime filter in some cases. Fixes #89062. #89666 (Alexander Gololobov).

NO CL CATEGORY

NOT FOR CHANGELOG / INSIGNIFICANT