2025 Changelog

- Fix `multiIf` with constant arguments and short-circuit evaluation. Closes [#72714](https://github.com/ClickHouse/ClickHouse/issues/72714). [#84546](https://github.com/ClickHouse/ClickHouse/pull/84546) ([Yakov Olkhovskiy](https://github.com/yakov-olkhovskiy)).
- Fix logical error when selecting from a table with a subquery constraint. Resolves [#84190](https://github.com/ClickHouse/ClickHouse/issues/84190). [#85575](https://github.com/ClickHouse/ClickHouse/pull/85575) ([Pervakov Grigorii](https://github.com/GrigoryPervakov)).
- Fixed a bug for special queries using a URI with question marks. [#85663](https://github.com/ClickHouse/ClickHouse/pull/85663) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
- Fixed sometimes missing columns in `EXPLAIN indexes = 1` output. Resolves [#86696](https://github.com/ClickHouse/ClickHouse/issues/86696). [#87083](https://github.com/ClickHouse/ClickHouse/pull/87083) ([Michael Kolupaev](https://github.com/al13n321)).
- Fix possible error Cannot add subcolumn with parallel replicas. Closes [#84888](https://github.com/ClickHouse/ClickHouse/issues/84888). [#87514](https://github.com/ClickHouse/ClickHouse/pull/87514) ([Pavel Kruglov](https://github.com/Avogar)).
- In parquet writer, emit `created_by` string in correct format, e.g. `ClickHouse version 25.10.1 (build 5b1dfb14925db8901a4e9202cd5d63c11ecfbb9f)` instead of `ClickHouse v25.9.1.1-testing`. Fix parquet reader compatibility with bad files written by old parquet-mr. [#87735](https://github.com/ClickHouse/ClickHouse/pull/87735) ([Michael Kolupaev](https://github.com/al13n321)).
- Fix phi-squared computation causing incorrect results in `cramersV`, `cramersVBiasCorrected`, `theilsU`, and `contingency`. [#87831](https://github.com/ClickHouse/ClickHouse/pull/87831) ([Nihal Z. Miaji](https://github.com/nihalzp)).
- Fix reading mixed array of Floats and Bools in JSON. Previously inserting such data led to an exception. [#88008](https://github.com/ClickHouse/ClickHouse/pull/88008) ([Pavel Kruglov](https://github.com/Avogar)).
- Using shared\_ptr for QueryState in TCPHandler to detect if the state is invalid in setProgressCallback, setFileProgressCallback and setBlockMarshallingCallback. [#88201](https://github.com/ClickHouse/ClickHouse/pull/88201) ([Tuan Pham Anh](https://github.com/tuanpach)).
- Fix logical error in cross join reordering when query\_plan\_optimize\_join\_order\_limit > 1, Close [#89409](https://github.com/ClickHouse/ClickHouse/issues/89409). [#88286](https://github.com/ClickHouse/ClickHouse/pull/88286) ([Vladimir Cherkasov](https://github.com/vdimir)).
- Fix [#88426](https://github.com/ClickHouse/ClickHouse/issues/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](https://github.com/ClickHouse/ClickHouse/pull/88552) ([Kai Zhu](https://github.com/nauu)).
- After recovering, a Replicated database replica might get stuck for a long time printing messages like `Failed to marked query-0004647339 as finished (finished=No node, synced=No node)`, it's fixed. [#88671](https://github.com/ClickHouse/ClickHouse/pull/88671) ([Alexander Tokmakov](https://github.com/tavplubix)).
- Fix possible "Context has expired" with new analyzer with subqueries. [#88694](https://github.com/ClickHouse/ClickHouse/pull/88694) ([Azat Khuzhin](https://github.com/azat)).
- Fixed a segmentation fault in the Parquet reader when input\_format\_parquet\_local\_file\_min\_bytes\_for\_seek is set to 0. Resolves [#78456](https://github.com/ClickHouse/ClickHouse/issues/78456). [#88784](https://github.com/ClickHouse/ClickHouse/pull/88784) ([Animesh](https://github.com/anibilthare)).
- Fix incorrect min(PK)/max(PK) result when PK is in reverse order. This fixes [#83619](https://github.com/ClickHouse/ClickHouse/issues/83619). [#88796](https://github.com/ClickHouse/ClickHouse/pull/88796) ([Amos Bird](https://github.com/amosbird)).
- Fix propagation of size restrictions by settings max\_table\_size\_to\_drop and max\_partition\_size\_to\_drop on DROP of inner tables. [#88812](https://github.com/ClickHouse/ClickHouse/pull/88812) ([Nikolay Degterinsky](https://github.com/evillique)).
- Fix `top_k` to respect the threshold parameter when called with a single argument. Closes [#88757](https://github.com/ClickHouse/ClickHouse/issues/88757). [#88867](https://github.com/ClickHouse/ClickHouse/pull/88867) ([Manuel](https://github.com/raimannma)).
- ArrowFlight endpoint sources that required an SSL connection (such as behind an AWS ALB) can now properly request a specific dataset. [#88868](https://github.com/ClickHouse/ClickHouse/pull/88868) ([alex-shchetkov](https://github.com/alex-shchetkov)).
- Fix handling of non materialized Nested(Tuple(...)) (added via ALTER). Fixes [#83133](https://github.com/ClickHouse/ClickHouse/issues/83133). [#88879](https://github.com/ClickHouse/ClickHouse/pull/88879) ([Azat Khuzhin](https://github.com/azat)).
- Fix bug in the function `reverseUTF8`. In previous versions, it mistakenly reversed the bytes of UTF-8 code points of length 4. This closes [#88913](https://github.com/ClickHouse/ClickHouse/issues/88913). [#88914](https://github.com/ClickHouse/ClickHouse/pull/88914) ([Alexey Milovidov](https://github.com/alexey-milovidov)).
- Fix icebergS3Cluster protocol. Started supporting schema evolution, positional and equality deletes in iceberg cluster function. Resolves [#88287](https://github.com/ClickHouse/ClickHouse/issues/88287). [#88919](https://github.com/ClickHouse/ClickHouse/pull/88919) ([Yang Jiang](https://github.com/Ted-Jiang)).
- Disable parallel\_replicas\_support\_projection for queries with parallel replicas over distributed tables. Closes [#88899](https://github.com/ClickHouse/ClickHouse/issues/88899). [#88922](https://github.com/ClickHouse/ClickHouse/pull/88922) ([zoomxi](https://github.com/zoomxi)).
- Propagate context on internal casts. Fixing multiple issues where cast-settings weren't propagated. Closes [#88873](https://github.com/ClickHouse/ClickHouse/issues/88873). Closes [#78025](https://github.com/ClickHouse/ClickHouse/issues/78025). [#88929](https://github.com/ClickHouse/ClickHouse/pull/88929) ([Manuel](https://github.com/raimannma)).
- Fix getting file format from globs in file() function. Resolves [#88920](https://github.com/ClickHouse/ClickHouse/issues/88920). [#88947](https://github.com/ClickHouse/ClickHouse/pull/88947) ([Vitaly Baranov](https://github.com/vitlibar)).
- Do not check access `SET DEFINER <current_user>:definer` when creating a view with SQL SECURITY DEFINER. [#88968](https://github.com/ClickHouse/ClickHouse/pull/88968) ([pufit](https://github.com/pufit)).
- Fixed `LOGICAL_ERROR` in `L2DistanceTransposed(vec1, vec2, p)` where the optimisation for partial `QBit` reading incorrectly removed `Nullable` from the return type when `p` was `Nullable`. [#88974](https://github.com/ClickHouse/ClickHouse/pull/88974) ([Raufs Dunamalijevs](https://github.com/rienath)).
- Fix crash in unknown catalog type. Resolves [#88819](https://github.com/ClickHouse/ClickHouse/issues/88819). [#88987](https://github.com/ClickHouse/ClickHouse/pull/88987) ([scanhex12](https://github.com/scanhex12)).
- This closes [#88081](https://github.com/ClickHouse/ClickHouse/issues/88081). [#88988](https://github.com/ClickHouse/ClickHouse/pull/88988) ([scanhex12](https://github.com/scanhex12)).
- Fixed performance degradation in analysis of skipping indexes. [#89004](https://github.com/ClickHouse/ClickHouse/pull/89004) ([Anton Popov](https://github.com/CurtizJ)).
- Fix ACCESS\_ENTITY\_NOT\_FOUND error when trying to execute clusterAllReplicas from a user with a non-existing role. Resolves [#87670](https://github.com/ClickHouse/ClickHouse/issues/87670). [#89068](https://github.com/ClickHouse/ClickHouse/pull/89068) ([pufit](https://github.com/pufit)).