Skip to content

Commit 241acca

Browse files
committed
Merge remote-tracking branch 'origin/master' into fix-pr-distinct-in-order
2 parents 82ae723 + 02b5649 commit 241acca

151 files changed

Lines changed: 1240 additions & 645 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
---
2+
sidebar_position: 1
3+
sidebar_label: 2025
4+
---
5+
6+
# 2025 Changelog
7+
8+
### ClickHouse release v24.12.4.49-stable (2fcb11ae032) FIXME as compared to v24.12.3.47-stable (d5d8b06f0da)
9+
10+
#### Improvement
11+
* Backported in [#74905](https://github.com/ClickHouse/ClickHouse/issues/74905): Improve performance of larger multi requests in Keeper. [#74849](https://github.com/ClickHouse/ClickHouse/pull/74849) ([Antonio Andelic](https://github.com/antonio2368)).
12+
13+
#### Bug Fix (user-visible misbehavior in an official stable release)
14+
* Backported in [#74823](https://github.com/ClickHouse/ClickHouse/issues/74823): Fix rare crash in refreshable materialized view during server shutdown. [#73323](https://github.com/ClickHouse/ClickHouse/pull/73323) ([Michael Kolupaev](https://github.com/al13n321)).
15+
* Backported in [#74381](https://github.com/ClickHouse/ClickHouse/issues/74381): Fixed `NOT_FOUND_COLUMN_IN_BLOCK` in queries with `FINAL` and `SAMPLE`. Fixed incorrect result in selects with `FINAL` from `CollapsingMergeTree` and enabled optimizations of `FINAL` . [#73682](https://github.com/ClickHouse/ClickHouse/pull/73682) ([Anton Popov](https://github.com/CurtizJ)).
16+
* Backported in [#74810](https://github.com/ClickHouse/ClickHouse/issues/74810): Fix security issue to prevent SQL injection in postgresql and sqlite table functions. [#74144](https://github.com/ClickHouse/ClickHouse/pull/74144) ([Pablo Marcos](https://github.com/pamarcos)).
17+
* Backported in [#74392](https://github.com/ClickHouse/ClickHouse/issues/74392): Fix logical error in s3queue during setting file as failed. [#74216](https://github.com/ClickHouse/ClickHouse/pull/74216) ([Kseniia Sumarokova](https://github.com/kssenii)).
18+
* Backported in [#75124](https://github.com/ClickHouse/ClickHouse/issues/75124): Fix crash when inserting interval (issue [#74299](https://github.com/ClickHouse/ClickHouse/issues/74299)). [#74478](https://github.com/ClickHouse/ClickHouse/pull/74478) ([NamHoaiNguyen](https://github.com/NamHoaiNguyen)).
19+
* Backported in [#75097](https://github.com/ClickHouse/ClickHouse/issues/75097): Fixed `INSERT SELECT` queries between tables with `Tuple` columns and enabled sparse serialization. [#74698](https://github.com/ClickHouse/ClickHouse/pull/74698) ([Anton Popov](https://github.com/CurtizJ)).
20+
* Backported in [#75309](https://github.com/ClickHouse/ClickHouse/issues/75309): Fix crash during JSON type declaration parsing when type name is not uppercase. [#74784](https://github.com/ClickHouse/ClickHouse/pull/74784) ([Pavel Kruglov](https://github.com/Avogar)).
21+
* Backported in [#74869](https://github.com/ClickHouse/ClickHouse/issues/74869): Keeper fix: fix reading log entries from disk. [#74785](https://github.com/ClickHouse/ClickHouse/pull/74785) ([Antonio Andelic](https://github.com/antonio2368)).
22+
* Backported in [#75076](https://github.com/ClickHouse/ClickHouse/issues/75076): Fix missing `used_privileges` and `missing_privileges` fields in `query_log` for BACKUP and RESTORE operations. [#74887](https://github.com/ClickHouse/ClickHouse/pull/74887) ([Alexey Katsman](https://github.com/alexkats)).
23+
* Backported in [#74957](https://github.com/ClickHouse/ClickHouse/issues/74957): Fix FILE_DOESNT_EXIST error occurring during data parts merge for a table with an empty column in Azure Blob Storage. [#74892](https://github.com/ClickHouse/ClickHouse/pull/74892) ([Julia Kartseva](https://github.com/jkartseva)).
24+
* Backported in [#75054](https://github.com/ClickHouse/ClickHouse/issues/75054): HDFS refresh krb ticket if sasl error during hdfs select request. [#74930](https://github.com/ClickHouse/ClickHouse/pull/74930) ([inv2004](https://github.com/inv2004)).
25+
* Backported in [#75413](https://github.com/ClickHouse/ClickHouse/issues/75413): Revert part's state from deleting back to outdated when remove operation has failed. [#74985](https://github.com/ClickHouse/ClickHouse/pull/74985) ([Sema Checherinda](https://github.com/CheSema)).
26+
* Backported in [#75463](https://github.com/ClickHouse/ClickHouse/issues/75463): Fix the crash bug of CTE with Insert. [#75188](https://github.com/ClickHouse/ClickHouse/pull/75188) ([Shichao Jin](https://github.com/jsc0218)).
27+
28+
#### Build/Testing/Packaging Improvement
29+
* Backported in [#75289](https://github.com/ClickHouse/ClickHouse/issues/75289): Improvement to set even more restrictive defaults. The current defaults are already secure - the user has to specify an option to publish ports explicitly. But when the `default` user doesn’t have a password set by `CLICKHOUSE_PASSWORD` and/or a username changed by `CLICKHOUSE_USER` environment variables, it should be available only from the local system as an additional level of protection. [#75259](https://github.com/ClickHouse/ClickHouse/pull/75259) ([Mikhail f. Shiryaev](https://github.com/Felixoid)).
30+
31+
#### NOT FOR CHANGELOG / INSIGNIFICANT
32+
33+
* Backported in [#75140](https://github.com/ClickHouse/ClickHouse/issues/75140): send logs and InsertProfileEvents for each block even for async insert. [#73915](https://github.com/ClickHouse/ClickHouse/pull/73915) ([Sema Checherinda](https://github.com/CheSema)).
34+
* Backported in [#74767](https://github.com/ClickHouse/ClickHouse/issues/74767): Avoid special PR packet processing if PR is disabled. [#74402](https://github.com/ClickHouse/ClickHouse/pull/74402) ([Igor Nikonov](https://github.com/devcrafter)).
35+
* Backported in [#74929](https://github.com/ClickHouse/ClickHouse/issues/74929): Fix calculation of metrics `BackupsThreadsActive` and `RestoreThreadsActive`. Those metrics were not updated before this PR. [#74456](https://github.com/ClickHouse/ClickHouse/pull/74456) ([Vitaly Baranov](https://github.com/vitlibar)).
36+
* Backported in [#74687](https://github.com/ClickHouse/ClickHouse/issues/74687): A follow-up for [#74399](https://github.com/ClickHouse/ClickHouse/issues/74399), send the event as early as possible. [#74666](https://github.com/ClickHouse/ClickHouse/pull/74666) ([Mikhail f. Shiryaev](https://github.com/Felixoid)).
37+
* Backported in [#74744](https://github.com/ClickHouse/ClickHouse/issues/74744): Review compatibility settings for 24.12 release. [#74670](https://github.com/ClickHouse/ClickHouse/pull/74670) ([Nikita Fomichev](https://github.com/fm4v)).
38+
* Backported in [#75114](https://github.com/ClickHouse/ClickHouse/issues/75114): Add a description for `skip_redundant_aliases_in_udf` setting. [#75014](https://github.com/ClickHouse/ClickHouse/pull/75014) ([Yarik Briukhovetskyi](https://github.com/yariks5s)).
39+
* Backported in [#75347](https://github.com/ClickHouse/ClickHouse/issues/75347): Tests: add 'error' test hint for functional tests. [#75158](https://github.com/ClickHouse/ClickHouse/pull/75158) ([Nikita Fomichev](https://github.com/fm4v)).
40+
* Backported in [#75371](https://github.com/ClickHouse/ClickHouse/issues/75371): Relax active parts filter. [#75265](https://github.com/ClickHouse/ClickHouse/pull/75265) ([Mikhail Artemenko](https://github.com/Michicosun)).
41+
* Backported in [#75332](https://github.com/ClickHouse/ClickHouse/issues/75332): Add option to skip user setup in entrypoint.sh. [#75316](https://github.com/ClickHouse/ClickHouse/pull/75316) ([Nikita Fomichev](https://github.com/fm4v)).
42+

docs/en/sql-reference/data-types/simpleaggregatefunction.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,13 @@ The following aggregate functions are supported:
2424
- [`groupBitXor`](../../sql-reference/aggregate-functions/reference/groupbitxor.md#groupbitxor)
2525
- [`groupArrayArray`](../../sql-reference/aggregate-functions/reference/grouparray.md#agg_function-grouparray)
2626
- [`groupUniqArrayArray`](../../sql-reference/aggregate-functions/reference/groupuniqarray.md)
27+
- [`groupUniqArrayArrayMap`](../../sql-reference/aggregate-functions/combinators#-map)
2728
- [`sumMap`](../../sql-reference/aggregate-functions/reference/summap.md#agg_functions-summap)
2829
- [`minMap`](../../sql-reference/aggregate-functions/reference/minmap.md#agg_functions-minmap)
2930
- [`maxMap`](../../sql-reference/aggregate-functions/reference/maxmap.md#agg_functions-maxmap)
3031

3132

32-
:::note
33+
:::note
3334
Values of the `SimpleAggregateFunction(func, Type)` look and stored the same way as `Type`, so you do not need to apply functions with `-Merge`/`-State` suffixes.
3435

3536
`SimpleAggregateFunction` has better performance than `AggregateFunction` with same aggregation function.

docs/en/sql-reference/functions/conditional-functions.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,7 @@ SELECT greatest(toDateTime32(now() + toIntervalDay(1)), toDateTime64(now(), 3))
191191
```
192192

193193
:::note
194-
The type returned is a DateTime64 as the DataTime32 must be promoted to 64 bit for the comparison.
194+
The type returned is a DateTime64 as the DateTime32 must be promoted to 64 bit for the comparison.
195195
:::
196196

197197
## least
@@ -232,7 +232,7 @@ SELECT least(toDateTime32(now() + toIntervalDay(1)), toDateTime64(now(), 3))
232232
```
233233

234234
:::note
235-
The type returned is a DateTime64 as the DataTime32 must be promoted to 64 bit for the comparison.
235+
The type returned is a DateTime64 as the DateTime32 must be promoted to 64 bit for the comparison.
236236
:::
237237

238238
## clamp

docs/en/sql-reference/statements/grant.md

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ Hierarchy of privileges:
233233
- `SYSTEM FLUSH`
234234
- `SYSTEM FLUSH DISTRIBUTED`
235235
- `SYSTEM FLUSH LOGS`
236-
- `CLUSTER` (see also `access_control_improvements.on_cluster_queries_require_cluster_grant` configuration directive)
236+
- [CLUSTER](#cluster)
237237
- [INTROSPECTION](#introspection)
238238
- `addressToLine`
239239
- `addressToLineWithInlines`
@@ -403,6 +403,30 @@ Allows executing [CREATE](../../sql-reference/statements/create/index.md) and [A
403403

404404
- To delete the created table, a user needs [DROP](#drop).
405405

406+
### CLUSTER
407+
408+
Allows executing `ON CLUSTER` queries.
409+
410+
```sql title="Syntax"
411+
GRANT CLUSTER ON *.* TO <username>
412+
```
413+
414+
By default, queries with `ON CLUSTER` require the user to have the `CLUSTER` grant.
415+
You will get the following error if you to try to use `ON CLUSTER` in a query without first granting the `CLUSTER` privilege:
416+
417+
```text
418+
Not enough privileges. To execute this query, it's necessary to have the grant CLUSTER ON *.*.
419+
```
420+
421+
The default behavior can be changed by setting the `on_cluster_queries_require_cluster_grant` setting,
422+
located in the `access_control_improvements` section of `config.xml` (see below), to `false`.
423+
424+
```yaml title="config.xml"
425+
<access_control_improvements>
426+
<on_cluster_queries_require_cluster_grant>true</on_cluster_queries_require_cluster_grant>
427+
</access_control_improvements>
428+
```
429+
406430
### DROP
407431

408432
Allows executing [DROP](../../sql-reference/statements/drop.md) and [DETACH](../../sql-reference/statements/detach.md) queries according to the following hierarchy of privileges:

docs/en/sql-reference/statements/system.md

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -128,13 +128,13 @@ Similar to `SYSTEM DROP REPLICA`, but removes the `Replicated` database replica
128128
## DROP UNCOMPRESSED CACHE
129129

130130
Clears the uncompressed data cache.
131-
The uncompressed data cache is enabled/disabled with the query/user/profile-level setting [use_uncompressed_cache](../../operations/settings/settings.md#setting-use_uncompressed_cache).
132-
Its size can be configured using the server-level setting [uncompressed_cache_size](../../operations/server-configuration-parameters/settings.md#server-settings-uncompressed_cache_size).
131+
The uncompressed data cache is enabled/disabled with the query/user/profile-level setting [`use_uncompressed_cache`](../../operations/settings/settings.md#use_uncompressed_cache).
132+
Its size can be configured using the server-level setting [`uncompressed_cache_size`](../../operations/server-configuration-parameters/settings.md#uncompressed_cache_size).
133133

134134
## DROP COMPILED EXPRESSION CACHE
135135

136136
Clears the compiled expression cache.
137-
The compiled expression cache is enabled/disabled with the query/user/profile-level setting [compile_expressions](../../operations/settings/settings.md#compile-expressions).
137+
The compiled expression cache is enabled/disabled with the query/user/profile-level setting [`compile_expressions`](../../operations/settings/settings.md#compile_expressions).
138138

139139
## DROP QUERY CACHE
140140

@@ -148,7 +148,7 @@ If a tag is specified, only query cache entries with the specified tag are delet
148148

149149
## DROP FORMAT SCHEMA CACHE {#system-drop-schema-format}
150150

151-
Clears cache for schemas loaded from [format_schema_path](../../operations/server-configuration-parameters/settings.md#format_schema_path).
151+
Clears cache for schemas loaded from [`format_schema_path`](../../operations/server-configuration-parameters/settings.md#format_schema_path).
152152

153153
Supported formats:
154154

@@ -195,7 +195,7 @@ Aborts ClickHouse process (like `kill -9 {$ pid_clickhouse-server}`)
195195

196196
## Managing Distributed Tables
197197

198-
ClickHouse can manage [distributed](../../engines/table-engines/special/distributed.md) tables. When a user inserts data into these tables, ClickHouse first creates a queue of the data that should be sent to cluster nodes, then asynchronously sends it. You can manage queue processing with the [STOP DISTRIBUTED SENDS](#stop-distributed-sends), [FLUSH DISTRIBUTED](#flush-distributed), and [START DISTRIBUTED SENDS](#start-distributed-sends) queries. You can also synchronously insert distributed data with the [distributed_foreground_insert](../../operations/settings/settings.md#distributed_foreground_insert) setting.
198+
ClickHouse can manage [distributed](../../engines/table-engines/special/distributed.md) tables. When a user inserts data into these tables, ClickHouse first creates a queue of the data that should be sent to cluster nodes, then asynchronously sends it. You can manage queue processing with the [`STOP DISTRIBUTED SENDS`](#stop-distributed-sends), [FLUSH DISTRIBUTED](#flush-distributed), and [`START DISTRIBUTED SENDS`](#start-distributed-sends) queries. You can also synchronously insert distributed data with the [`distributed_foreground_insert`](../../operations/settings/settings.md#distributed_foreground_insert) setting.
199199

200200
### STOP DISTRIBUTED SENDS
201201

@@ -205,6 +205,10 @@ Disables background data distribution when inserting data into distributed table
205205
SYSTEM STOP DISTRIBUTED SENDS [db.]<distributed_table_name> [ON CLUSTER cluster_name]
206206
```
207207

208+
:::note
209+
In case of [`prefer_localhost_replica`](../../operations/settings/settings.md#prefer_localhost_replica) is enabled (the default), the data to local shard will be inserted anyway.
210+
:::
211+
208212
### FLUSH DISTRIBUTED
209213

210214
Forces ClickHouse to send data to cluster nodes synchronously. If any nodes are unavailable, ClickHouse throws an exception and stops query execution. You can retry the query until it succeeds, which will happen when all nodes are back online.

docs/ja/sql-reference/data-types/simpleaggregatefunction.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ sidebar_label: SimpleAggregateFunction
2323
- [`groupBitXor`](../../sql-reference/aggregate-functions/reference/groupbitxor.md#groupbitxor)
2424
- [`groupArrayArray`](../../sql-reference/aggregate-functions/reference/grouparray.md#agg_function-grouparray)
2525
- [`groupUniqArrayArray`](../../sql-reference/aggregate-functions/reference/groupuniqarray.md)
26+
- [`groupUniqArrayArrayMap`](../../sql-reference/aggregate-functions/combinators#-map)
2627
- [`sumMap`](../../sql-reference/aggregate-functions/reference/summap.md#agg_functions-summap)
2728
- [`minMap`](../../sql-reference/aggregate-functions/reference/minmap.md#agg_functions-minmap)
2829
- [`maxMap`](../../sql-reference/aggregate-functions/reference/maxmap.md#agg_functions-maxmap)

docs/ja/sql-reference/functions/conditional-functions.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,7 @@ SELECT greatest(toDateTime32(now() + toIntervalDay(1)), toDateTime64(now(), 3))
191191
```
192192

193193
:::note
194-
返される型は DateTime64 であり、DataTime32 は比較のために 64 ビットに昇格しなければならないためです。
194+
返される型は DateTime64 であり、DateTime32 は比較のために 64 ビットに昇格しなければならないためです。
195195
:::
196196

197197
## least
@@ -232,7 +232,7 @@ SELECT least(toDateTime32(now() + toIntervalDay(1)), toDateTime64(now(), 3))
232232
```
233233

234234
:::note
235-
返される型は DateTime64 であり、DataTime32 は比較のために 64 ビットに昇格しなければならないためです。
235+
返される型は DateTime64 であり、DateTime32 は比較のために 64 ビットに昇格しなければならないためです。
236236
:::
237237

238238
## clamp

docs/ru/sql-reference/data-types/simpleaggregatefunction.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ slug: /ru/sql-reference/data-types/simpleaggregatefunction
2121
- [`groupBitXor`](../../sql-reference/aggregate-functions/reference/groupbitxor.md#groupbitxor)
2222
- [`groupArrayArray`](../../sql-reference/aggregate-functions/reference/grouparray.md#agg_function-grouparray)
2323
- [`groupUniqArrayArray`](../../sql-reference/aggregate-functions/reference/groupuniqarray.md)
24+
- [`groupUniqArrayArrayMap`](../../sql-reference/aggregate-functions/combinators#-map)
2425
- [`sumMap`](../../sql-reference/aggregate-functions/reference/summap.md#agg_functions-summap)
2526
- [`minMap`](../../sql-reference/aggregate-functions/reference/minmap.md#agg_functions-minmap)
2627
- [`maxMap`](../../sql-reference/aggregate-functions/reference/maxmap.md#agg_functions-maxmap)

docs/zh/sql-reference/data-types/simpleaggregatefunction.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ slug: /zh/sql-reference/data-types/simpleaggregatefunction
1818
- [`groupBitXor`](../../sql-reference/aggregate-functions/reference/groupbitxor.md#groupbitxor)
1919
- [`groupArrayArray`](../../sql-reference/aggregate-functions/reference/grouparray.md#agg_function-grouparray)
2020
- [`groupUniqArrayArray`](../../sql-reference/aggregate-functions/reference/groupuniqarray.md)
21+
- [`groupUniqArrayArrayMap`](../../sql-reference/aggregate-functions/combinators#-map)
2122
- [`sumMap`](../../sql-reference/aggregate-functions/reference/summap.md#agg_functions-summap)
2223
- [`minMap`](../../sql-reference/aggregate-functions/reference/minmap.md#agg_functions-minmap)
2324
- [`maxMap`](../../sql-reference/aggregate-functions/reference/maxmap.md#agg_functions-maxmap)

docs/zh/sql-reference/functions/type-conversion-functions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ SELECT toDecimal32OrZero(toString(-1.111), 2) AS val, toTypeName(val)
235235
当将其他类型转换到字符串或从字符串转换到其他类型时,使用与TabSeparated格式相同的规则对字符串的值进行格式化或解析。如果无法解析字符串则抛出异常并取消查询。
236236

237237
当将Date转换为数字或反之,Date对应Unix时间戳的天数。
238-
将DataTime转换为数字或反之,DateTime对应Unix时间戳的秒数。
238+
将DateTime转换为数字或反之,DateTime对应Unix时间戳的秒数。
239239

240240
toDate/toDateTime函数的日期和日期时间格式定义如下:
241241

0 commit comments

Comments
 (0)