代码拉取完成,页面将自动刷新
同步操作将从 ClickHouse/ClickHouse 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
modulo
(operator %
) with at least one floating point number as argument will calculate remainder of division directly on floating point numbers without converting both arguments to integers. It makes behaviour compatible with most of DBMS. This also applicable for Date and DateTime data types. Added alias mod
. This closes #7323. #12585 (alexey-milovidov).0000-00-00
and 0000-00-00 00:00:00
. #12442 (alexey-milovidov).groupArrayMoving*
was not working for distributed queries. It's result was calculated within incorrect data type (without promotion to the largest type). The function groupArrayMovingAvg
was returning integer number that was inconsistent with the avg
function. This fixes #12568. #12622 (alexey-milovidov).background_pool_size
to value lower than number_of_free_entries_in_pool_to_execute_mutation
or number_of_free_entries_in_pool_to_lower_max_size_of_merge
. In these cases ALTERs won't work or the maximum size of merge will be too limited. It will throw exception explaining what to do. This closes #10897. #12728 (alexey-milovidov).alter_partition_verbose_result
which outputs information about touched parts for some types of ALTER TABLE ... PARTITION ...
queries (currently ATTACH
and FREEZE
). Closes #8076. #13017 (alesapin).bayesAB
function for bayesian-ab-testing. #12327 (achimbab).system.crash_log
table into which stack traces for fatal errors are collected. This table should be empty. #12316 (alexey-milovidov).X-ClickHouse-Database
and X-ClickHouse-Format
which may be used to set default database and output format. #12981 (hcz).minMap
and maxMap
functions support to SimpleAggregateFunction
. #12662 (Ildus Kurbangaliev).allow_non_metadata_alters
which restricts to execute ALTER
queries which modify data on disk. Disabled be default. Closes #11547. #12635 (alesapin).formatRow
is added to support turning arbitrary expressions into a string via given format. It's useful for manipulating SQL outputs and is quite versatile combined with the columns
function. #12574 (Amos Bird).FROM_UNIXTIME
function for compatibility with MySQL, related to 12149. #12484 (flynn).allow_nullable_key
table setting is enabled. Closes #5319. #12433 (Amos Bird).ON CLUSTER
timeouts for queries that must be executed on a single replica. Fixes #6704, #7228, #13361, #11884. #13450 (alesapin).LowCardinality
columns when ORDER BY multiple columns is used. This fixes #13958. #14223 (Nikita Mikhaylov).query_wait_timeout_milliseconds
setting for cache-dictionary. #14105 (Nikita Mikhaylov).Poco::Exception: no space left on device
. #14050 (tavplubix).DISTINCT
keyword when subqueries also have DISTINCT
in case optimize_duplicate_order_by_and_distinct
setting is enabled. #13925 (Artem Zuikov).Distributed
table. #13922 (tavplubix).FixedString
columns when ORDER BY multiple columns is used. Fixes #13182. #13887 (Nikolai Kochetov).topK
/topKWeighted
aggregations (with non-default parameters). #13817 (Azat Khuzhin).range()
. #13790 (Azat Khuzhin).Directory not empty
error when concurrently executing DROP DATABASE
and CREATE TABLE
. #13756 (alexey-milovidov).h3KRing
function. This fixes #13633. #13752 (alexey-milovidov).log_queries_min_type
greater than QUERY_START
. #13737 (Azat Khuzhin).clickhouse-server.init
while checking user and group. #13711 (ylchou).any(arrayJoin())
to arrayJoin()
under optimize_move_functions_out_of_any
. #13681 (Azat Khuzhin).ALTER ... REPLACE/MOVE PARTITION ...
queries. #13626 (tavplubix).netloc
. This fixes #13335. #13446 (alexey-milovidov).parseDateTimeBestEffort
function when unix timestamp was passed as an argument. This fixes #13362. #13441 (alexey-milovidov).NULL
elements. Fixes #12461. #13420 (Nikolai Kochetov).aggregate function any(x) is found inside another aggregate function in query
error with SET optimize_move_functions_out_of_any = 1
and aliases inside any()
. #13419 (Artem Zuikov).StorageMemory
. #13416 (Nikolai Kochetov).Arrow
and Parquet
formats in case if query return zero rows. It was done because empty output is not valid for this formats. #13399 (hcz).ORDER BY
clause. #13396 (Anton Popov).PrettyCompactMonoBlock
for clickhouse-local. Fix extremes/totals with PrettyCompactMonoBlock
. Fixes #7746. #13394 (Azat Khuzhin).File(TSVWithNames*)
(header was written multiple times), fixed clickhouse-local --format CSVWithNames*
(lacks header, broken after #12197), fixed clickhouse-local --format CSVWithNames*
with zero rows (lacks header). #13343 (Azat Khuzhin).groupArrayMovingSum
deserializes empty state. Fixes #13339. #13341 (alesapin).arrayJoin()
function in JOIN ON
section. #13330 (Artem Zuikov).LEFT ASOF JOIN
with join_use_nulls=1
. #13291 (Artem Zuikov).Totals having transform was already added to pipeline
in case of a query from delayed replica. #13290 (Nikolai Kochetov).h3ToChildren
. This fixes #13275. #13277 (alexey-milovidov).uniqExact
, topK
, sumDistinct
and similar aggregate functions called on Float types with NaN
values. It also triggered assert in debug build. This fixes #12491. #13254 (alexey-milovidov).arrayElement
function in case of array elements are Nullable and array subscript is also Nullable. This fixes #12172. #13224 (alexey-milovidov).redis
dictionary after connection was dropped once. It may happen with cache
and direct
dictionary layouts. #13082 (Anton Popov).MergeTree
tables. Fixes #13060. Fixes #12406. #13081 (Anton Popov).Cannot convert column because it is constant but values of constants are different in source and result
for remote queries which use deterministic functions in scope of query, but not deterministic between queries, like now()
, now64()
, randConstant()
. Fixes #11327. #13075 (Nikolai Kochetov).ORDER BY
tuple and small LIMIT
. Fixes #12623. #13009 (Nikolai Kochetov).Block structure mismatch
error for queries with UNION
and JOIN
. Fixes #12602. #12989 (Nikolai Kochetov).merge_with_ttl_timeout
logic which did not work well when expiration affected more than one partition over one time interval. (Authored by @excitoon). #12982 (Alexander Kazakov).ALTER DELETE
and ALTER MODIFY COLUMN
queries executed simultaneously as a single mutation. Bug leads to an incorrect amount of rows in count.txt
and as a consequence incorrect data in part. Also, fix a small bug with simultaneous ALTER RENAME COLUMN
and ALTER ADD COLUMN
. #12760 (alesapin).clickhouse
dictionary source to query remote tables. #12756 (sundyli).CAST(Nullable(String), Enum())
. #12745 (Azat Khuzhin).IN
section. The case when user writes WHERE x IN tuple(1, 2, ...)
instead of WHERE x IN (1, 2, ...)
for some obscure reason. #12700 (Anton Popov).optimize_move_functions_out_of_any=1
in case of any(func(<lambda>))
. #12664 (Artem Zuikov).if
with Array(UUID)
arguments. This fixes #11066. #12648 (alexey-milovidov).There is no supertype...
can be thrown during ALTER ... UPDATE
in unexpected cases (e.g. when subtracting from UInt64 column). This fixes #7306. This fixes #4165. #12633 (alexey-milovidov).Pipeline stuck
error for queries with external sorting. Fixes #12617. #12618 (Nikolai Kochetov).Output of TreeExecutor is not sorted
for OPTIMIZE DEDUPLICATE
. Fixes #11572. #12613 (Nikolai Kochetov).any
can be lost during query optimization. #12593 (Anton Popov).checksums.txt
is absent. Broken since #9827. #12545 (alesapin).ALTER DELETE
query when enable_mixed_granularity_parts=1
. Fixes #12536. #12543 (alesapin).AggregateFunction(avg, ...)
values. This fixes #12342. #12486 (alexey-milovidov).t JOIN dict ON expr(dict.id) = t.id
. Disable dictionary join optimisation for this case. #12458 (Artem Zuikov).QueryTimeMicroseconds
, SelectQueryTimeMicroseconds
and InsertQueryTimeMicroseconds
to system.events
, along with system.metrics, processes, query_log, etc. #13028 (ianton-ru).SelectedRows
and SelectedBytes
to system.events
, along with system.metrics, processes, query_log, etc. #12638 (ianton-ru).current_database
information to system.query_log
. #12652 (Amos Bird).TabSeparatedRaw
as input format. #12009 (hcz).joinGet
supports multi-key lookup. #12418 (Amos Bird).*Map
aggregate functions to work on Arrays with NULLs. Fixes #13157. #13225 (alexey-milovidov).1970-01-01 00:00:00
in Moscow). Saturate to zero instead. This fixes #3470. This fixes #4172. #12443 (alexey-milovidov).Max query size exceeded
for correct query. #13928 (Nikolai Kochetov).lgamma
function. This race was caught only in tsan
, no side effects really happened. #13842 (Nikolai Kochetov).geohashesInBox
. This fixes #12554. #13229 (alexey-milovidov).parseDateTimeBestEffort
. This fixes #12649. #13227 (alexey-milovidov).LEFT SEMI JOIN
instead of SEMI LEFT JOIN
. For now both are correct. #12520 (Artem Zuikov).multiple_joins_rewriter_version
to 2. It enables new multiple joins rewriter that knows about column names. #12469 (Artem Zuikov).--secure
argument. This fixes #11044. #12440 (alexey-milovidov).Log
, TinyLog
, StripeLog
engines. In previous versions insertion error lead to inconsisent table state (this works as documented and it is normal for these table engines). This fixes #12402. #12426 (alexey-milovidov).RENAME DATABASE
and RENAME DICTIONARY
for Atomic
database engine - Add implicit {uuid}
macro, which can be used in ZooKeeper path for ReplicatedMergeTree
. It works with CREATE ... ON CLUSTER ...
queries. Set show_table_uuid_in_table_create_query_if_not_nil
to true
to use it. - Make ReplicatedMergeTree
engine arguments optional, /clickhouse/tables/{uuid}/{shard}/
and {replica}
are used by default. Closes #12135. - Minor fixes. - These changes break backward compatibility of Atomic
database engine. Previously created Atomic
databases must be manually converted to new format. Atomic database is an experimental feature. #12343 (tavplubix).AWSAuthV4Signer
into different logger, removed excessive AWSClient: AWSClient
from log messages. #12320 (Vladimir Chebotarev).in
with invalid number of arguments. #12529 (Anton Popov).LowCardinality
. #14129 (Anton Popov).LIMIT
step for query plan (inside subqueries). #13016 (Nikolai Kochetov).set optimize_if_transform_strings_to_enum = 1
. #12515 (Artem Zuikov).ORDER BY
if set optimize_monotonous_functions_in_order_by=1
. #12467 (Artem Zuikov).ORDER BY x, f(x)
with ORDER by x
if set optimize_redundant_functions_in_order_by = 1
. #12404 (Artem Zuikov).WITH
clause. This fixes #12293 #12663 (Winter Zhang).DiskS3
. DiskS3 is an experimental feature. #12434 (Vladimir Chebotarev).shellcheck
for sh tests linting. #13200 #13207 (alexey-milovidov).materialize()
(the function for ClickHouse testing) will work for NULL as expected - by transforming it to non-constant column. #13212 (alexey-milovidov).00960_live_view_watch_events_live.py
test. #13108 (vzakaznikov).SELECT
privilege in TestFlows. #13061 (Ritaank Tiwari).rdkafka
to version 1.5 (master). #12991 (alexey-milovidov).ALTER TABLE CLEAR COLUMN
query for primary key columns. #12951 (alesapin).EXPLAIN
query. Syntax: EXPLAIN SELECT ...
. This fixes #1118. #11873 (Nikolai Kochetov).RabbitMQ
. #11069 (Kseniia Sumarokova).ILIKE
operator for #11710. #12125 (Mike).SET join_algorithm = 'partial_merge'
. Only ALL strictness is allowed (ANY, SEMI, ANTI, ASOF are not). #12118 (Artem Zuikov).initializeAggregation
to initialize an aggregation based on a single value. #12109 (Guillaume Tassery).ALTER TABLE ... [ADD|MODIFY] COLUMN ... FIRST
#4006. #12073 (Winter Zhang).parseDateTimeBestEffortUS
. #12028 (flynn).ORC
for output (was supported only for input). #11662 (Kruglov Pavel).aggregate function any(x) is found inside another aggregate function in query
error with SET optimize_move_functions_out_of_any = 1
and aliases inside any()
. #13419 (Artem Zuikov).PrettyCompactMonoBlock
for clickhouse-local. Fixed extremes/totals with PrettyCompactMonoBlock
. This fixes #7746. #13394 (Azat Khuzhin).Totals having transform was already added to pipeline
in case of a query from delayed replica. #13290 (Nikolai Kochetov).h3ToChildren
. This fixes #13275. #13277 (alexey-milovidov).uniqExact
, topK
, sumDistinct
and similar aggregate functions called on Float types with NaN values. It also triggered assert in debug build. This fixes #12491. #13254 (alexey-milovidov).arrayElement
function in case of array elements are Nullable and array subscript is also Nullable. This fixes #12172. #13224 (alexey-milovidov).DateTime64
conversion functions with constant argument. #13205 (Azat Khuzhin).MergeTree
tables. Fixes #13060. Fixes #12406. #13081 (Anton Popov).Cannot convert column because it is constant but values of constants are different in source and result
for remote queries which use deterministic functions in scope of query, but not deterministic between queries, like now()
, now64()
, randConstant()
. Fixes #11327. #13075 (Nikolai Kochetov).ALTER DELETE
and ALTER MODIFY COLUMN
queries executed simultaneously as a single mutation. Bug leads to an incorrect amount of rows in count.txt
and as a consequence incorrect data in part. Also, fix a small bug with simultaneous ALTER RENAME COLUMN
and ALTER ADD COLUMN
. #12760 (alesapin).CAST(Nullable(String), Enum())
. #12745 (Azat Khuzhin).IN
section. The case when user write WHERE x IN tuple(1, 2, ...)
instead of WHERE x IN (1, 2, ...)
for some obscure reason. #12700 (Anton Popov).input_format_parallel_parsing
(by attaching thread to group). #12672 (Azat Khuzhin).SIGSEGV
in StorageKafka
when broker is unavailable (and not only). #12658 (Azat Khuzhin).if
with Array(UUID)
arguments. This fixes #11066. #12648 (alexey-milovidov).CREATE USER IF NOT EXISTS
now doesn't throw exception if the user exists. This fixes #12507. #12646 (Vitaly Baranov).groupArrayMoving*
was not working for distributed queries. It's result was calculated within incorrect data type (without promotion to the largest type). The function groupArrayMovingAvg
was returning integer number that was inconsistent with the avg
function. This fixes #12568. #12622 (alexey-milovidov).any
. #12593 (Anton Popov).ALTER DELETE
query when enable_mixed_granularity_parts=1
. Fixes #12536. #12543 (alesapin).in
with invalid number of arguments. #12529 (Anton Popov).AggregateFunction(avg, ...)
values. This fixes #12342. #12486 (alexey-milovidov).text_log
is enabled. #12452 (alexey-milovidov).LIMIT
or OFFSET
is specified. This fixes #10470. This fixes #11372. #12427 (alexey-milovidov).StorageMerge
. This fixes #12054. #12401 (tavplubix).CLEAR
column even if there are depending DEFAULT
expressions. This fixes #12333. #12378 (alexey-milovidov).TOTALS/ROLLUP/CUBE
for aggregate functions with -State
and Nullable
arguments. This fixes #12163. #12376 (alexey-milovidov).ALTER RENAME COLUMN
queries, when RENAME
is not allowed. Fixes #12301 and #12303. #12335 (alesapin).ReplicatedMergeTreeQueue
. #12315 (alexey-milovidov).Delta
or DoubleDelta
with non fixed width types, exception with code LOGICAL_ERROR
was returned instead of exception with code BAD_ARGUMENTS
(we ensure that exceptions with code logical error never happen). This fixes #12110. #12308 (alexey-milovidov).WITH FILL
modifier. Previously order of columns of ORDER BY
statement wasn't respected. #12306 (Anton Popov)._table
in Merge
tables) or by "index" columns in system tables such as filtering by database name when querying from system.tables
, and this expression returns Nullable
type. This fixes #12166. #12305 (alexey-milovidov).TTL
after renaming column, on which depends TTL expression. #12304 (Anton Popov).Kafka
Engine. #12302 (Azat Khuzhin).DNS
cache updating. #12296 (tavplubix).TrieDictionary
failed to load. #12290 (Vitaly Baranov).arrayFill
worked incorrectly for empty arrays that may lead to crash. This fixes #12263. #12279 (alexey-milovidov).LowCardinality
types. This allows to execute UNION ALL of tables with columns of LowCardinality and other columns. This fixes #8212. This fixes #4342. #12275 (alexey-milovidov).S3
storage. #12256 (ianton-ru).StorageFile
header for some special types was written more than once. This fixed #6155. #12197 (Nikita Mikhaylov).GROUP BY
injective functions elimination. #12179 (Azat Khuzhin).SummingMergeTree
engine sums up columns from partition key. Added an exception in case of explicit definition of columns to sum which intersects with partition key columns. This fixes #7867. #12173 (Nikita Mikhaylov).ALTER DELETE
that leads to deleting of records when condition evaluates to NULL. This fixes #9088. This closes #12106. #12153 (alexey-milovidov).greatCircleDistance
, geoDistance
. This fixes #12117. #12137 (alexey-milovidov).Parquet
now properly works with LowCardinality
and LowCardinality(Nullable)
types. Fixes #12086, #8406. #12108 (Nikolai Kochetov).UNION
caused by wrong limit for the total number of threads. Fixes #12030. #12103 (Nikolai Kochetov).-StateResample
combinators. #12092 (Anton Popov).result_rows
and result_bytes
metrics in system.quey_log
for selects. Fixes #11595. #12089 (Nikolai Kochetov).VIEW
. Fixes #11937. #12085 (Nikolai Kochetov).PREWHERE
. Fixes #12053, #12060. #12060 (Nikolai Kochetov).Cannot capture column
for higher-order functions with Tuple(LowCardinality)
argument. Fixes #9766. #12055 (Nikolai Kochetov).if
with arguments of type FixedString
with different sizes. This fixes #11362. #12021 (alexey-milovidov).JOIN
kind and type in more standard way: LEFT SEMI JOIN
instead of SEMI LEFT JOIN
. For now both are correct. #12520 (Artem Zuikov).output_format_pretty_grid_charset
enables this feature. #12372 (Sabyanin Maxim).KILL QUERY [connection_id]
for the MySQL client/driver to cancel the long query, issue #12038. #12152 (BohuTANG).%g
(two digit ISO year) and %G
(four digit ISO year) substitutions in formatDateTime
function. #12136 (vivarum).REVOKE
command: now it requires grant/admin option for only access which will be revoked. For example, to execute REVOKE ALL ON *.* FROM user1
now it doesn't require to have full access rights granted with grant option. Added command REVOKE ALL FROM user1
- it revokes all granted roles from user1
. #12083 (Vitaly Baranov).optimize_aggregation_in_order
setting, disabled by default). #11696 (Anton Popov).uniq*()
if set optimize_injective_functions_inside_uniq=1
. #12337 (Ruslan Kamalov).MergeTree
-family tables, which stores data in memory. Parts are written on disk at first merge. Part will be created in in-memory format if its size in rows or bytes is below thresholds min_rows_for_compact_part
and min_bytes_for_compact_part
. Also optional support of Write-Ahead-Log is available, which is enabled by default and is controlled by setting in_memory_parts_enable_wal
. #10697 (Anton Popov).00746_sql_fuzzy.pl
. #12111 (Alexander Kuzmenkov).clickhouse-test
script. #12287 (alesapin).orc
. #12258 (Nikita Mikhaylov).CodeQL
is another static analyzer that we will use along with clang-tidy
and PVS-Studio
that we use already. #12138 (alexey-milovidov).clickhouse-server
docker image. #12124 (Ivan Blinkov).UNBUNDLED
flag to system.build_options
table. Move skip lists for clickhouse-test
to clickhouse repo. #12107 (alesapin).clickhouse-server
Docker image. Also confirms that Dockerfile
is buildable. Runs daily on master
and on pull-requests to Dockerfile
. #12102 (Ivan Blinkov).ca-certificates
before the first apt-get update
in Dockerfile. #12095 (Ivan Blinkov).MergeTree
tables. Fixes #13060. Fixes #12406. #13081 (Anton Popov).IN
section. The case when user write WHERE x IN tuple(1, 2, ...)
instead of WHERE x IN (1, 2, ...)
for some obscure reason. #12700 (Anton Popov).SIGSEGV
in StorageKafka
when broker is unavailable (and not only). #12658 (Azat Khuzhin).if
with Array(UUID)
arguments. This fixes #11066. #12648 (alexey-milovidov).any
. #12593 (Anton Popov).ALTER DELETE
query when enable_mixed_granularity_parts=1
. Fixes #12536. #12543 (alesapin).in
with invalid number of arguments. #12529 (Anton Popov).AggregateFunction(avg, ...)
values. This fixes #12342. #12486 (alexey-milovidov).text_log
is enabled. #12452 (alexey-milovidov).-State
and Nullable
arguments. This fixes #12163. #12376 (alexey-milovidov).Kafka
Engine. #12302 (Azat Khuzhin).SummingMergeTree
engine sums up columns from partition key. Added an exception in case of explicit definition of columns to sum which intersects with partition key columns. This fixes #7867. #12173 (Nikita Mikhaylov).VIEW
. Fixes #11937. #12085 (Nikolai Kochetov).join_algorithm=partial_merge
. #12035 (Artem Zuikov).if()
with NULLs in condition. #11807 (Artem Zuikov).ca-certificates
before the first apt-get update
in Dockerfile. #12095 (Ivan Blinkov).uniq
aggregate functions family. If all passed values are NULL, return zero instead. This improves SQL compatibility. #11661 (alexey-milovidov).users.xml
inside <profile>
section for specific user profile (or in <default>
for default settings). The server won't start with exception message in log. This fixes #9051. If you want to skip the check, you can either move settings to the appropriate place or add <skip_check_for_incorrect_settings>1</skip_check_for_incorrect_settings>
to config.xml. #11449 (alexey-milovidov).input_format_with_names_use_header
is enabled by default. It will affect parsing of input formats -WithNames
and -WithNamesAndTypes
. #10937 (alexey-milovidov).experimental_use_processors
setting. It is enabled by default. #10924 (Nikolai Kochetov).zstd
to 1.4.4. It has some minor improvements in performance and compression ratio. If you run replicas with different versions of ClickHouse you may see reasonable error messages Data after merge is not byte-identical to data on another replicas.
with explanation. These messages are Ok and you should not worry. This change is backward compatible but we list it here in changelog in case you will wonder about these messages. #10663 (alexey-milovidov).allow_suspicious_codecs
to control this check. This closes #4966. #10645 (alexey-milovidov).TTL DELETE WHERE
and TTL GROUP BY
for automatic data coarsening and rollup in tables. #10537 (expl0si0nn).perf_events
(these metrics are calculated with hardware CPU counters and OS counters). It is optional and requires CAP_SYS_ADMIN
to be set on clickhouse binary. #9545 Andrey Skobtsov. #11226 (Alexander Kuzmenkov).NULL
and NOT NULL
modifiers for data types in CREATE
query. #11057 (Павел Потемкин).ArrowStream
input and output format. #11088 (hcz).direct
which loads all the data directly from the source for each query, without storing or caching data. #10622 (Artem Streltsov).complex_key_direct
layout to dictionaries, that does not store anything locally during query execution. #10850 (Artem Streltsov).clickhouse-client
using replxx
. #11422 (Tagir Kuskarov).minMap
and maxMap
functions were added. #11603 (Ildus Kurbangaliev).system.asynchronous_metric_log
table that logs historical metrics from system.asynchronous_metrics
. #11588 (Alexander Kuzmenkov).extractAllGroupsHorizontal(haystack, re)
and extractAllGroupsVertical(haystack, re)
. #11554 (Vasily Nemkov).netloc
function for extracting network location, similar to urlparse(url)
, netloc
in python. #11356 (Guillaume Tassery)._timestamp_ms
virtual column for Kafka engine (type is Nullable(DateTime64(3))
). #11260 (filimonov).randomFixedString
. #10866 (Andrei Nekrashevich).fuzzBits
that randomly flips bits in a string with given probability. #11237 (Andrei Nekrashevich).round_robin
load_balancing mode. #11645 (Azat Khuzhin).cast_keep_nullable
setting. If set CAST(something_nullable AS Type)
return Nullable(Type)
. #11733 (Artem Zuikov).position
to system.columns
table and column_position
to system.parts_columns
table. It contains ordinal position of a column in a table starting with 1. This closes #7744. #11655 (alexey-milovidov).port
function (to extract port from URL). #11120 (Azat Khuzhin).dictGet*
functions accept table names. #11050 (Vitaly Baranov).clickhouse-format
tool is now able to format multiple queries when the -n
argument is used. #10852 (Darío).pointInPolygon
work with non-constant polygon. PointInPolygon now can take Array(Array(Tuple(..., ...))) as second argument, array of polygon and holes. #10623 (Alexey Ilyukhov) #11421 (Alexey Ilyukhov).move_ttl_info
to system.parts
in order to provide introspection of move TTL functionality. #10591 (Vladimir Chebotarev).NCHAR
and NVARCHAR
synonims for data types. #11025 (alexey-milovidov).FailedQuery
, FailedSelectQuery
and FailedInsertQuery
metrics to system.events
table. #11151 (Nikita Orlov).jemalloc
statistics to system.asynchronous_metrics
, and ensure that we see up-to-date values for them. #11748 (Alexander Kuzmenkov).to-/fromUnixTimestamp64Milli/-Micro/-Nano
. #10923 (Vasily Nemkov).mongodb://
URI for MongoDB dictionaries. #10915 (Alexander Kuzmenkov).system.licenses
table. This table contains licenses of third-party libraries that are located in contrib
directory. This closes #2890. #10795 (alexey-milovidov).JSONAsString
that accepts a sequence of JSON objects separated by newlines, spaces and/or commas. #10607 (Kruglov Pavel).SimpleAggregateFunction
now also supports sumMap
. #10000 (Ildus Kurbangaliev).ALTER RENAME COLUMN
for the distributed table engine. Continuation of #10727. Fixes #10747. #10887 (alesapin).Nullable
column in prewhere condition. #11895 #11608 #11869 (Nikolai Kochetov).if
with NULLs in condition. #11807 (Artem Zuikov).Scalar doesn't exist
exception when using WITH <scalar subquery> ...
in SELECT ... FROM merge_tree_table ...
https://github.com/ClickHouse/ClickHouse/issues/11621. #11767 (Amos Bird).SELECT *, xyz.*
which were success while an error expected. #11753 (hexiaoting).ORDER BY ... WITH FILL
over const columns. #11697 (Anton Popov).SYSTEM SYNC REPLICA
command on that table (this is unlikely, because another client should be aware that the table is created), it's possible to get nullptr dereference. #11691 (alexey-milovidov).LIMIT n WITH TIES
usage together with ORDER BY
statement, which contains aliases. #11689 (Anton Popov).Pipeline stuck
for selects with parallel FINAL
. Fixes #11636. #11682 (Nikolai Kochetov).system.mutations
. It may show that whole mutation is already done but the server still has MUTATE_PART
tasks in the replication queue and tries to execute them. This fixes #11611. #11681 (alesapin).-q
option the database does not get created at startup. #11604 (giordyb).Block structure mismatch
for queries with sampling reading from Buffer
table. #11602 (Nikolai Kochetov).exception.code() % 256 == 0
. #11601 (filimonov).Size of offsets doesn't match size of column
for queries with PREWHERE column in (subquery)
and ARRAY JOIN
. #11580 (Nikolai Kochetov).SHOW CREATE TABLE
Fixes #11490. #11579 (tavplubix).Data compressed with different methods
that can happen if min_bytes_to_use_direct_io
is enabled and PREWHERE is active and using SAMPLE or high number of threads. This fixes #11539. #11540 (alexey-milovidov).<node>
(breaks use_compact_format_in_distributed_parts_names). #11528 (Azat Khuzhin).-State
functions. This fixes #8995. #11496 (alexey-milovidov).Pipeline stuck
exception for INSERT SELECT FINAL
where SELECT
(max_threads
>1) has multiple streams but INSERT
has only one (max_insert_threads
==0). #11455 (Azat Khuzhin).select count() from t, u
. #11454 (Artem Zuikov).LowCarinality(T)
and Nullable(T)
. #11380. #11414 (Artem Zuikov).USING
key. #11373. #11404 (Artem Zuikov).geohashesInBox
with arguments outside of latitude/longitude range. #11403 (Vasily Nemkov).joinGet()
functions. #11389 (Artem Zuikov).Pipeline stuck
error for queries with external sort and limit. Fixes #11359. #11366 (Nikolai Kochetov).\G
(vertical output) in clickhouse-client in multiline mode. This closes #9933. #11350 (alexey-milovidov).Lazy
database. #11348 (alexey-milovidov).Join
table engine (without JOIN) and wrong nullability. #11340 (Artem Zuikov).quantilesExactWeightedArray
. #11337 (Nikolai Kochetov).ALTER
queries. #11335 (alesapin).MATERIALIZED VIEW
with setting parallel_view_processing = 1
parallel again. Fixes #10241. #11330 (Nikolai Kochetov).visitParamExtractRaw
when extracted JSON has strings with unbalanced { or [. #11318 (Ewout).clickhouse-copier
. Found by integration tests. #11313 (alexey-milovidov).SELECT toIntervalSecond(now64())
. #11311 (alexey-milovidov).empty
or notEmpty
functions. This fixes #11286. #11303 (alexey-milovidov).min_execution_speed
may not work or work incorrectly if the query is throttled by max_network_bandwidth
, max_execution_speed
or priority
settings. Change the default value of timeout_before_checking_execution_speed
to non-zero, because otherwise the settings min_execution_speed
and max_execution_speed
have no effect. This fixes #11297. This fixes #5732. This fixes #6228. Usability improvement: avoid concatenation of exception message with progress bar in clickhouse-client
. #11296 (alexey-milovidov).SET DEFAULT ROLE
is called with wrong arguments. This fixes https://github.com/ClickHouse/ClickHouse/issues/10586. #11278 (Vitaly Baranov).Protobuf
format. This fixes https://github.com/ClickHouse/ClickHouse/issues/5957, fixes https://github.com/ClickHouse/ClickHouse/issues/11203. #11258 (Vitaly Baranov).cache
dictionary could return default value instead of normal (when there are only expired keys). This affects only string fields. #11233 (Nikita Mikhaylov).Block structure mismatch in QueryPipeline
while reading from VIEW
with constants in inner query. Fixes #11181. #11205 (Nikolai Kochetov).Invalid status for associated output
. #11200 (Nikolai Kochetov).primary.idx
will be checked if it's defined in CREATE
query. #11199 (alesapin).Cannot capture column
for higher-order functions with Array(Array(LowCardinality))
captured argument. #11185 (Nikolai Kochetov).S3
globbing which could fail in case of more than 1000 keys and some backends. #11179 (Vladimir Chebotarev).No such name in Block::erase()
when JOIN appears with PREWHERE or optimize_move_to_prewhere
makes PREWHERE from WHERE. #11051 (Artem Zuikov).ADD/DROP
and RENAME
the same one column in a single ALTER
query. Exception message for simultaneous MODIFY
and RENAME
became more clear. Partially fixes #10669. #11037 (alesapin).GROUP BY
when there is a LIMIT
. #11022 (Azat Khuzhin).ALTER
and DROP DATABASE
queries with Atomic
database engine. #10968 (tavplubix).SELECT count(notNullIn(NULL, []))
. #10920 (Nikolai Kochetov).ALTER RENAME
like a TO b, c TO a
. #10895 (alesapin).finalizeAggregation
function while reading from table with Memory
engine which stores AggregateFunction
state for quanite*
function. #10890 (Nikolai Kochetov).WATCH
hangs after LiveView
table was dropped from database with Atomic
engine. #10859 (tavplubix).ReplicatedMergeTree
which might cause some ALTER
on OPTIMIZE
query to hang waiting for some replica after it become inactive. #10849 (tavplubix).CONSTRAINT
expression was renamed. Fixes #10844. #10847 (alesapin).src_type
for correct type conversion in key conditions. Fixes #6287. #10791 (Andrew Onyshchuk).-fno-omit-frame-pointer
in clang
builds that improves performance at least by 1% in average. #10761 (Amos Bird).parallel_view_processing
behavior. Now all insertions into MATERIALIZED VIEW
without exception should be finished if exception happened. Fixes #10241. #10757 (Nikolai Kochetov).generateRandom
with nested types. Fixes #10583. #10734 (Nikolai Kochetov).LowCardinality(FixedString)
key column in SummingMergeTree
which could have happened after merge. Fixes #10489. #10721 (Nikolai Kochetov).h3EdgeAngle
. #10711 (alexey-milovidov).IN
operator with the identical set in one query. #10686 (Anton Popov).readonly=2
and cancel_http_readonly_queries_on_client_close=1
. Fixes #7939, #7019, #7736, #7091. #10684 (tavplubix).distributed_aggregation_memory_efficient
enabled. Fixes #10655. #10664 (Nikolai Kochetov).LIMIT
. Fixes #10566, #10709. #10660 (Nikolai Kochetov).enable_optimize_predicate_expression=1
) for queries with HAVING
section (i.e. when filtering on the server initiator is required), by preserving the order of expressions (and this is enough to fix), and also force aggregator use column names over indexes. Fixes: #10613, #11413. #10621 (Azat Khuzhin).SYSTEM DROP DNS CACHE
query also drop caches, which are used to check if user is allowed to connect from some IP addresses. #10608 (tavplubix).MATERIALIZED VIEW
in case if this query contained dependent table. #10603 (Nikolai Kochetov).createDictionary()
is called before loadStoredObject()
has finished. #10587 (Vitaly Baranov).the BloomFilter false positive must be a double number between 0 and 1
#10551. #10569 (Winter Zhang).optimize_distributed_group_by_sharding_key
had been introduced and turned of by default, due to trickery of sharding_key analyzing, simple example is if
in sharding key) and fix it for WITH ROLLUP/CUBE/TOTALS. #10516 (Azat Khuzhin).internal_replication == false
, multiple local shards (activates the hardlinking code) and distributed_storage_policy
(makes link(2)
fails on EXDEV
)). #10486 (Azat Khuzhin).TTL
for old data, after ALTER MODIFY TTL
query. This behaviour is controlled by setting materialize_ttl_after_modify
, which is enabled by default. #11042 (Anton Popov).\%
or \w
) that will make usage of LIKE
and match
regular expressions more convenient (it's enough to write name LIKE 'used\_cars'
instead of name LIKE 'used\\_cars'
) and more compatible at the same time. This fixes #10922. #11208 (alexey-milovidov).CAP_NET_ADMIN
capability. #10544 (Alexander Kazakov).hostname
as an alias to function hostName
. This feature was suggested by Victor Tarnavskiy from Yandex.Metrica. #11821 (alexey-milovidov).DDL
(update/delete/drop partition) on cross replication clusters. #11703 (Nikita Mikhaylov).UPDATE/DELETE/DROP PARTITION
) on cross replication clusters. #11508 (frank lee).clickhouse-client
and clickhouse-benchmark
if the user has specified it with explicit value. This prevents password exposure by ps
and similar tools. #11665 (alexey-milovidov).http://localhost:8123/?&a=b
or http://localhost:8123/?a=b&&c=d
. This closes #10749. #11651 (alexey-milovidov).groupArrayArray
and groupUniqArrayArray
as SimpleAggregateFunction
. #11650 (Volodymyr Kuznetsov).kafka_num_consumers
is greater than number of partitions in topic. #11599 (filimonov).multiple_joins_rewriter_version=2
logic. Fix unknown columns error for lambda aliases. #11587 (Artem Zuikov).enable_optimize_predicate_expression=1
logic for VIEW. #11513 (Artem Zuikov).clickhouse-client
or clickhouse-format
in some cases. #11325 (alexey-milovidov).client.id
used by ClickHouse when communicating with Kafka to be more verbose and usable. #11252 (filimonov).DistributedFilesToInsert
metric on exceptions. In previous versions, the value was set when we are going to send some files, but it is zero, if there was an exception and some files are still pending. Now it corresponds to the number of pending files in filesystem. #11220 (alexey-milovidov).DOUBLE PRECISION
and CHAR VARYING
) for better SQL compatibility. #11214 (Павел Потемкин).DROP DATABASE
for Memory
database engine. Fixes #10557. #11021 (tavplubix).tupleElement
. #10874 (hcz).min_insert_block_size_rows_for_materialized_views
, min_insert_block_size_bytes_for_materialized_views
settings. This settings are similar to min_insert_block_size_rows
and min_insert_block_size_bytes
, but applied only for blocks inserted into MATERIALIZED VIEW
. It helps to control blocks squashing while pushing to MVs and avoid excessive memory usage. #10858 (Azat Khuzhin).varSamp
, varPop
cannot return negative results due to numerical errors and that stddevSamp
, stddevPop
cannot be calculated from negative variance. This fixes #10532. #10829 (alexey-milovidov).INSERT INTO [db.]table WATCH
query. #10498 (vzakaznikov).optimize_aggregation_in_order
setting. #9113 (dimarub2000).max_final_threads
to limit the number of threads used. #10463 (Nikolai Kochetov).INSERT SELECT
or INSERT with clickhouse-client when small blocks are generated (typical case with parallel parsing). This fixes #11275. Fix the issue that CONSTRAINTs were not working for DEFAULT fields. This fixes #11273. Fix the issue that CONSTRAINTS were ignored for TEMPORARY tables. This fixes #11274. #11276 (alexey-milovidov).optimize_aggregators_of_group_by_keys
setting. #11667 (xPoSx). #11806 (Azat Khuzhin).any
function, enabled with optimize_move_functions_out_of_any
#11529 (Ruslan).clickhouse-client
in interactive mode when Pretty formats are used. In previous versions, significant amount of time can be spent calculating visible width of UTF-8 string. This closes #11323. #11323 (alexey-milovidov).ORDER BY
and small LIMIT
(less, then max_block_size
). #11171 (Albert Kidrachev).mlock
of clickhouse binary by default. It will prevent clickhouse executable from being paged out under high IO load. #11139 (alexey-milovidov).sum
aggregate function and without GROUP BY keys to run multiple times faster. #10992 (alexey-milovidov).ORDER BY
with simple keys) by removing some redundant data moves. #10981 (Arslan Gumerov).partial_merge_join_left_table_buffer_bytes
setting to manage the left blocks buffers sizes. #10601 (Artem Zuikov).optimize_duplicate_order_by_and_distinct
#10067 (Mikhail Malafeev).optimize_group_by_function_keys
#10051 (xPoSx).optimize_arithmetic_operations_in_aggregate_functions
#10047 (Ruslan).Point
(Tuple(Float64, Float64)) and Polygon
(Array(Array(Tuple(Float64, Float64))). #10678 (Alexey Ilyukhov).hasSubstr
function that allows for look for subsequences in arrays. Note: this function is likely to be renamed without further notice. #11071 (Ryad Zenine).-DENABLE_OPENCL=1
. For using bitonic sort algorithm instead of others you need to set bitonic_sort
for Setting's option special_sort
and make sure that OpenCL is available. This feature does not improve performance or anything else, it is only provided as an example and for demonstration purposes. It is likely to be removed in near future if there will be no further development in this direction. #10232 (Ri).tzdata
: do not fail if /usr/share/zoneinfo
directory does not exist. Note that all timezones work in ClickHouse even without tzdata installed in system. #11827 (alexey-milovidov).buildId
. #11824 (alexey-milovidov).Too many simultaneous queries
error. Also increased timeout and decreased fault probability. #11573 (Nikita Mikhaylov).test_insertion_sync_fails_with_timeout
. #11343 (alesapin).00731_long_merge_tree_select_opened_files.sh
. It does not fail frequently but we have discovered potential race condition in this test while experimenting with ThreadFuzzer: #9814 See link for the example. #11270 (alexey-milovidov).curl
invocation was timed out. It is possible due to system hangups for 10+ seconds that are typical in our CI infrastructure. This fixes #11267. #11268 (alexey-milovidov).cctz
library will not be shuffled with other libraries. #11213 (alesapin).00979_live_view_watch_continuous_aggregates
test. #11024 (vzakaznikov).-Weverything
) for base, utils, programs. Note that we already have it for the most of the code. #10779 (alexey-milovidov).tests/queries/0_stateless/01246_insert_into_watch_live_view.py
test. #10670 (vzakaznikov).ld
(bfd) linker during tzdata processing in compile time. #10634 (alesapin).lld
to link blobs (resources). #10632 (alexey-milovidov).LZ4
library. #10631 (alexey-milovidov). See also https://github.com/lz4/lz4/issues/857
capnproto
version check for capnp::UnalignedFlatArrayMessageReader
. #10618 (Matwey V. Kornilov).parseDateTimeBestEffort
function when unix timestamp was passed as an argument. This fixes #13362. #13441 (alexey-milovidov).uniqExact
, topK
, sumDistinct
and similar aggregate functions called on Float types with NaN values. It also triggered assert in debug build. This fixes #12491. #13254 (alexey-milovidov).arrayElement
function in case of array elements are Nullable and array subscript is also Nullable. This fixes #12172. #13224 (alexey-milovidov).MergeTree
tables. Fixes #13060. Fixes #12406. #13081 (Anton Popov).WITH TOTALS
. #12747 (Nikolai Kochetov).IN
section. The case when user write WHERE x IN tuple(1, 2, ...)
instead of WHERE x IN (1, 2, ...)
for some obscure reason. #12700 (Anton Popov).input_format_parallel_parsing
(by attaching thread to group). #12672 (Azat Khuzhin).SIGSEGV
in StorageKafka
when broker is unavailable (and not only). #12658 (Azat Khuzhin).if
with Array(UUID)
arguments. This fixes #11066. #12648 (alexey-milovidov).ALTER DELETE
query when enable_mixed_granularity_parts=1
. Fixes #12536. #12543 (alesapin).in
with invalid number of arguments. #12529 (Anton Popov).t JOIN dict ON expr(dict.id) = t.id
. Disable dictionary join optimisation for this case. #12458 (Artem Zuikov).WITH FILL
modifier. Previously order of columns of ORDER BY
statement wasn't respected. #12306 (Anton Popov)._table
in Merge
tables) or by "index" columns in system tables such as filtering by database name when querying from system.tables
, and this expression returns Nullable
type. This fixes #12166. #12305 (alexey-milovidov).arrayFill
worked incorrectly for empty arrays that may lead to crash. This fixes #12263. #12279 (alexey-milovidov).LowCardinality
types. This allows to execute UNION ALL of tables with columns of LowCardinality and other columns. This fixes #8212. This fixes #4342. #12275 (alexey-milovidov).StorageFile
header for some special types was written more than once. This fixed #6155. #12197 (Nikita Mikhaylov).dictGet
arguments check during GROUP BY injective functions elimination. #12179 (Azat Khuzhin).ALTER DELETE
that leads to deleting of records when condition evaluates to NULL. This fixes #9088. This closes #12106. #12153 (alexey-milovidov).greatCircleDistance
, geoDistance
. This fixes #12117. #12137 (alexey-milovidov).UNION
caused by wrong limit for the total number of threads. Fixes #12030. #12103 (Nikolai Kochetov).-StateResample
combinators. #12092 (Anton Popov).result_rows
and result_bytes
metrics in system.quey_log
for selects. Fixes #11595. #12089 (Nikolai Kochetov).VIEW
. Fixes #11937. #12085 (Nikolai Kochetov).PREWHERE
. Fixes #12053, #12060. #12060 (Nikolai Kochetov).Expected single dictionary argument for function
for function defaultValueOfArgumentType
with LowCardinality
type. Fixes #11808. #12056 (Nikolai Kochetov).Cannot capture column
for higher-order functions with Tuple(LowCardinality)
argument. Fixes #9766. #12055 (Nikolai Kochetov).topK
aggregate function return Enum for Enum types. This fixes #3740. #12043 (alexey-milovidov).Nullable
columns. Fixes #11985. #12039 (Nikolai Kochetov).if
with arguments of type FixedString
with different sizes. This fixes #11362. #12021 (alexey-milovidov).neighbor
as the only returned expression may return empty result if the function is called with offset -9223372036854775808
. This fixes #11367. #12019 (alexey-milovidov).Query parameter was not set
in Values
format. Fixes #11918. #11936 (tavplubix).DateTime64
. This fixes #11374. #11875 (alexey-milovidov).wait_end_of_query=1
). #11840 (Azat Khuzhin).ca-certificates
before the first apt-get update
in Dockerfile. #12095 (Ivan Blinkov).Nullable
column in prewhere condition. Continuation of #11608. #11869 (Nikolai Kochetov).if()
with NULLs in condition. #11807 (Artem Zuikov).SELECT *, xyz.*
which were success while an error expected. #11753 (hexiaoting).ORDER BY ... WITH FILL
over const columns. #11697 (Anton Popov).LIMIT n WITH TIES
usage together with ORDER BY
statement, which contains aliases. #11689 (Anton Popov).system.mutations
. It may show that whole mutation is already done but the server still has MUTATE_PART
tasks in the replication queue and tries to execute them. This fixes #11611. #11681 (alesapin).Nullable
column in prewhere condition. (Probably it is connected with #11572 somehow). #11608 (Nikolai Kochetov).Block structure mismatch
for queries with sampling reading from Buffer
table. #11602 (Nikolai Kochetov).Size of offsets doesn't match size of column
for queries with PREWHERE column in (subquery)
and ARRAY JOIN
. #11580 (Nikolai Kochetov).SHOW CREATE TABLE
Fixes #11490. #11579 (tavplubix).<node>
(breaks use_compact_format_in_distributed_parts_names). #11528 (Azat Khuzhin).-fno-omit-frame-pointer
in clang
builds that improves performance at least by 1% in average. #10761 (Amos Bird).Data compressed with different methods
that can happen if min_bytes_to_use_direct_io
is enabled and PREWHERE is active and using SAMPLE or high number of threads. This fixes #11539. #11540 (alexey-milovidov).Pipeline stuck
error for queries with external sort and limit. Fixes #11359. #11366 (Nikolai Kochetov).\G
(vertical output) in clickhouse-client in multiline mode. This closes #9933. #11350 (alexey-milovidov).Lazy
database. #11348 (alexey-milovidov).quantilesExactWeightedArray
. #11337 (Nikolai Kochetov).ALTER
queries. #11335 (alesapin).MATERIALIZED VIEW
with setting parallel_view_processing = 1
parallel again. Fixes #10241. #11330 (Nikolai Kochetov).SELECT toIntervalSecond(now64())
. #11311 (alexey-milovidov).empty
or notEmpty
functions. This fixes #11286. #11303 (alexey-milovidov).min_execution_speed
may not work or work incorrectly if the query is throttled by max_network_bandwidth
, max_execution_speed
or priority
settings. Change the default value of timeout_before_checking_execution_speed
to non-zero, because otherwise the settings min_execution_speed
and max_execution_speed
have no effect. This fixes #11297. This fixes #5732. This fixes #6228. Usability improvement: avoid concatenation of exception message with progress bar in clickhouse-client
. #11296 (alexey-milovidov).Block structure mismatch in QueryPipeline
while reading from VIEW
with constants in inner query. Fixes #11181. #11205 (Nikolai Kochetov).Invalid status for associated output
. #11200 (Nikolai Kochetov).Cannot capture column
for higher-order functions with Array(Array(LowCardinality))
captured argument. #11185 (Nikolai Kochetov).enable_optimize_predicate_expression=1
) for queries with HAVING
section (i.e. when filtering on the server initiator is required), by preserving the order of expressions (and this is enough to fix), and also force aggregator use column names over indexes. Fixes: #10613, #11413. #10621 (Azat Khuzhin).No changes compared to v20.4.3.16-stable.
parseDateTime64BestEffort
argument resolution bugs. #11038 (Vasily Nemkov).MergeTree
if table was not created successfully. #10986, #10970 (alexey-milovidov).ALTER
and DROP DATABASE
queries with Atomic
database engine. #10968 (tavplubix).getRawData()
method. #10964 (Igr).DistributedBlockOutputStream
. #10940 (Azat Khuzhin).SELECT count(notNullIn(NULL, []))
. #10920 (Nikolai Kochetov).DROP
of Kafka
table engine. (or during server restarts). #10910 (filimonov).ALTER RENAME
like a TO b, c TO a
. #10895 (alesapin).finalizeAggregation
function while reading from table with Memory
engine which stores AggregateFunction
state for quantile*
function. #10890 (Nikolai Kochetov).SIGSEGV
in StringHashTable
if such a key does not exist. #10870 (Azat Khuzhin).WATCH
hangs after LiveView
table was dropped from database with Atomic
engine. #10859 (tavplubix).ReplicatedMergeTree
which might cause some ALTER
on OPTIMIZE
query to hang waiting for some replica after it become inactive. #10849 (tavplubix).CONSTRAINT
expression was renamed. Fixes #10844. #10847 (alesapin).Block::sortColumns()
. #10826 (Azat Khuzhin).ODBC
bridge when no quoting of identifiers is requested. Fixes [#7984] (https://github.com/ClickHouse/ClickHouse/issues/7984). #10821 (alexey-milovidov).UBSan
and MSan
report in DateLUT
. #10798 (alexey-milovidov).parallel_view_processing
behavior. Now all insertions into MATERIALIZED VIEW
without exception should be finished if exception happened. Fixes #10241. #10757 (Nikolai Kochetov).-OrNull
and -OrDefault
when combined with -State
. #10741 (hcz).h3EdgeAngle
. #10711 (alexey-milovidov).nullptr
dereference in StorageBuffer
if server was shutdown before table startup. #10641 (alexey-milovidov).optimize_skip_unused_shards
with LowCardinality
. #10611 (Azat Khuzhin).createDictionary()
is called before loadStoredObject()
has finished. #10587 (Vitaly Baranov).SELECT
of column ALIAS
which default expression type different from column type. #10563 (Azat Khuzhin).GROUP BY
sharding_key optimization by default (optimize_distributed_group_by_sharding_key
had been introduced and turned of by default, due to trickery of sharding_key analyzing, simple example is if
in sharding key) and fix it for WITH ROLLUP/CUBE/TOTALS
. #10516 (Azat Khuzhin).max_rows_to_sort
setting. #10268 (alexey-milovidov)./var/lib/clickhouse/data/system/
.validate_polygons
that is used in pointInPolygon
function and enabled by default. #9857 (alexey-milovidov)Markdown
for embedding tables in markdown documents. #10317 (Kruglov Pavel)always_fetch_merged_part
which restrict replica to merge parts by itself and always prefer dowloading from other replicas. #10379 (alesapin)system.asynchronous_metrics
. #10361 (alexey-milovidov)least
and greatest
. Now they work with arbitrary number of arguments of arbitrary types. This fixes #4767 #10318 (alexey-milovidov)strict_max_lifetime_seconds
, which is max_lifetime
by default, and query_wait_timeout_milliseconds
, which is one minute by default. The first settings is also useful with allow_read_expired_keys
settings (to forbid reading very expired keys). #10337 (Nikita Mikhaylov)isConstant
. This function checks whether its argument is constant expression and returns 1 or 0. It is intended for development, debugging and demonstration purposes. #10198 (alexey-milovidov)NULL
to be equal to NULL
in IN
operator, if the option transform_null_in
is set. #10085 (achimbab)ALTER TABLE ... RENAME COLUMN
for MergeTree table engines family. #9948 (alesapin)distributed_group_by_no_merge
) ... #9923 (Azat Khuzhin)arrayReduceInRanges
which aggregates array elements in given ranges. #9598 (hcz)DROP VIEW
statement for better TPC-H compatibility. #9831 (Amos Bird)DATE
and TIMESTAMP
SQL operators, e.g. SELECT date '2001-01-01'
#9691 (Artem Zuikov)DROP
and RENAME TABLE
queries and atomic EXCHANGE TABLES t1 AND t2
query #7512 (tavplubix)MATERIALIZED VIEW
in case if this query contained dependent table #10603 (Nikolai Kochetov)readonly=2
and cancel_http_readonly_queries_on_client_close=1
. #10684 (tavplubix)SYSTEM DROP DNS CACHE
now also drops caches used to check if user is allowed to connect from some IP addresses #10608 (tavplubix)IN
operators with an identical set in one query. Fixes #10539 #10686 (Anton Popov)generateRandom
with nested types. Fixes #10583. #10734 (Nikolai Kochetov)LowCardinality(FixedString)
key column in SummingMergeTree
which could have happened after merge. Fixes #10489. #10721 (Nikolai Kochetov)JOIN
or subquery with external WHERE
condition. Fixes #10674 #10698 (Nikolai Kochetov)distributed_aggregation_memory_efficient
enabled. Fixes #10655 #10664 (Nikolai Kochetov)LIMIT
. Fixes #10566, #10709 #10660 (Nikolai Kochetov)is_done=0
. #10526 (alesapin)simpleLinearRegression()
over large integers #10474 (hcz)addressToLine
function or AggregateFunctionState columns. #10466 (Alexander Kuzmenkov)ATTACH DATABASE
fails #10442 (Winter Zhang)Africa/Casablanca
timezone on CentOS 8. Fixes #10211 #10425 (alexey-milovidov)fallback_to_stale_replicas
over skip_unavailable_shards
, otherwise when both settings specified and there are no up-to-date replicas the query will fail (patch from @alex-zaitsev ) #10422 (Azat Khuzhin)SYSTEM RELOAD
query #10415 (Azat Khuzhin)distributed_group_by_no_merge
is enabled (introduced in 20.3.7.46 by #10131). #10399 (Nikolai Kochetov)Array(Tuple(...))
data types. Fixes #10259 #10390 (alexey-milovidov)Pipeline stuck
error in ConcatProcessor
which may happen in remote query. #10381 (Nikolai Kochetov)dictIsIn
function. Fixes #515 #10365 (alexey-milovidov)DROP
vs OPTIMIZE
race in ReplicatedMergeTree
. DROP
could left some garbage in replica path in ZooKeeper if there was concurrent OPTIMIZE
query. #10312 (tavplubix)max_bytes_before_external_group_by
. #10302 (Artem Zuikov)max_query_size
and max_parser_depth
accordingly. #10295 (alexey-milovidov)count(*)
with multiple JOINs. Fixes #9853 #10291 (Artem Zuikov)Pipeline stuck
with max_rows_to_group_by
and group_by_overflow_mode = 'break'
. #10279 (Nikolai Kochetov)range_hashed
dictionary using DDL query. Fixes #10093. #10235 (alesapin)Cannot drain connections: cancel first
. #10239 (Nikolai Kochetov)system.numbers
or system.zeros
. #10206 (Nikolai Kochetov)parseDateTimeBestEffort
for strings in RFC-2822 when day of week is Tuesday or Thursday. This fixes #10082 #10214 (alexey-milovidov)allow_nondeterministic_mutations
setting. #10186 (filimonov)DROP TABLE
invoked for dictionary #10165 (Azat Khuzhin)INSERT
into Distributed table #10135 (Azat Khuzhin)index_granularity_bytes
check while creating new replica. Fixes #10098. #10121 (alesapin)CHECK TABLE
query when table contain skip indices. #10068 (alesapin)JOIN
and UNION ALL
. Fixes #9826, #10113. ... #10099 (Nikolai Kochetov)/table/replicas/replica_name/metadata
node doesn't exist. Fixes #10037. #10095 (alesapin)Cannot clone block with columns because block has 0 columns ... While executing GroupingAggregatedTransform
. It happened when setting distributed_aggregation_memory_efficient
was enabled, and distributed query read aggregating data with mixed single and two-level aggregation from different shards. #10063 (Nikolai Kochetov)SYSTEM RESTART REPLICAS
#9955 (tavplubix)Distributed
table was executed simultaneously on local and remote shards. Fixes #9965 #9971 (Nikolai Kochetov)DeleteOnDestroy
logic in ATTACH PART
which could lead to automatic removal of attached part and added few tests #9410 (Vladimir Chebotarev)ON CLUSTER
DDL queries freezing on server startup. #9927 (Gagan Arneja)JOIN
appears with TOTALS
. Fixes #9839 #9939 (Artem Zuikov)TRUNCATE
for Join table engine (#9917). #9920 (Amos Bird)ReplicatedMergeTree
. #9901 (alesapin)DISTINCT
for Distributed when optimize_skip_unused_shards
is set. #9808 (Azat Khuzhin)distributed_product_mode=\'local\'
. Fixes #4756 #9891 (Artem Zuikov)offsets.commit.timeout.ms
there were no enough replicas available for the __consumer_offsets
topic #9884 (filimonov)WHERE
#9847 (Azat Khuzhin)SET distributed_product_mode = 'local'
. #9871 (Artem Zuikov)allow_introspection_functions
. #9840 (Vitaly Baranov)Got 0 in totals chunk, expected 1
on client. It happened for queries with JOIN
in case if right joined table had zero rows. Example: select * from system.one t1 join system.one t2 on t1.dummy = t2.dummy limit 0 FORMAT TabSeparated;
. Fixes #9777. ... #9823 (Nikolai Kochetov)optimize_skip_unused_shards
is set and expression for key can't be converted to its field type #9804 (Azat Khuzhin)splitByString
. #9767 (hcz)ALTER TABLE DELETE COLUMN
query for compact parts. #9779 (alesapin)rows_before_limit_at_least
for queries over http (with processors pipeline). Fixes #9730 #9757 (Nikolai Kochetov)ALTER
queries (mutations). This fixes #9533 and #9670. #9754 (alesapin)text_log
. It does not correspond to any real bug. #9726 (alexey-milovidov)sumKahan
and sumWithOverflow
. It led to exception while using this functions in remote queries. #9636 (Azat Khuzhin)use_compact_format_in_distributed_parts_names
which allows to write files for INSERT
queries into Distributed
table with more compact format. This fixes #9647. #9653 (alesapin)Size of filter doesn't match size of column
and Invalid number of rows in Chunk
in MergeTreeRangeReader
. They could appear while executing PREWHERE
in some cases. #9612 (Anton Popov)ALTER ON CLUSTER
of Distributed tables with internal replication. This fixes #3268 #9617 (shinoi2)time + 1
(in contrast to an expression like time + INTERVAL 1 SECOND
). This fixes #5743 #9323 (alexey-milovidov)SAMPLE OFFSET
query instead of cityHash64(PRIMARY KEY) % N == n
for splitting in clickhouse-copier
. To use this feature, pass --experimental-use-sample-offset 1
as a command line argument. #10414 (Nikita Mikhaylov)distributed_group_by_no_merge
on GROUP BY sharding key (if optimize_skip_unused_shards
is set) #10341 (Azat Khuzhin)max_server_memory_usage
to limit total memory usage of the server. The metric MemoryTracking
is now calculated without a drift. The setting max_memory_usage_for_all_queries
is now obsolete and does nothing. This closes #10293. #10362 (alexey-milovidov)system_tables_lazy_load
. If it's set to false, then system tables with logs are loaded at the server startup. Alexander Burmak, Svyatoslav Tkhon Il Pak, #9642 #10359 (alexey-milovidov)+inf
for floating point types. This closes #1839 #10272 (alexey-milovidov)generateRandom
table function for Nested types. This closes #9903 #10219 (alexey-milovidov)max_allowed_packed
in MySQL compatibility interface that will help some clients to communicate with ClickHouse via MySQL protocol. #10199 (BohuTANG)SELECT * FROM remote('localhost', system.one) WHERE dummy global in (0)
) #10196 (Azat Khuzhin)toString
is considered monotonic and can be used for index analysis even when applied in tautological cases with String or LowCardinality(String) argument. #10110 (Amos Bird)ON CLUSTER
clause support to commands {CREATE|DROP} USER/ROLE/ROW POLICY/SETTINGS PROFILE/QUOTA
, GRANT
. #9811 (Vitaly Baranov)total_rows
/total_bytes
into the system.tables
table. #9919 (Azat Khuzhin)ORDER BY
stage from mutations because we read from a single ordered part in a single thread. Also add check that the rows in mutation are ordered by sorting key and this order is not violated. #9886 (alesapin)force_optimize_skip_unused_shards_no_nested
that will disable force_optimize_skip_unused_shards
for nested Distributed table #9812 (Azat Khuzhin)optimize_skip_unused_shards
(i.e. SELECT * FROM foo_dist WHERE key=xxHash32(0)
) #8846 (Azat Khuzhin)Date
or DateTime
column from TTL expressions was removed. #9967 (Vladimir Chebotarev)set multiple_joins_rewriter_version = 2
enables second version of multiple JOIN rewrites that keeps not clashed column names as is. It supports multiple JOINs with USING
and allow select *
for JOINs with subqueries. #9739 (Artem Zuikov)splitByString
to support empty strings as separators. #9742 (hcz)timestamp_ns
column to system.trace_log
. It contains a high-definition timestamp of the trace event, and allows to build timelines of thread profiles ("flame charts"). #9696 (Alexander Kuzmenkov)send_logs_level
is enabled, avoid intermixing of log messages and query progress. #9634 (Azat Khuzhin)MATERIALIZE TTL IN PARTITION
. #9581 (Vladimir Chebotarev)dictGet()
functions with JOINs. It's not backward incompatible itself but could uncover #8400 on some installations. #10133 (Artem Zuikov)IN
operator. This fixes performance regression in version 20.3. #9740 (Anton Popov)FixedHashMap<UInt16, AggregateDataPtr>
and gets 25% performance gain #9829 (Amos Bird)limit
but without order by
(like select f(x) from (select x from t limit 1000000000)
) and use multiple threads for further processing. #9602 (Nikolai Kochetov)now64
with wrong arguments. This fixes #8973 #10511 (alexey-milovidov)ASAN_OPTIONS
environment variable to investigate errors in CI stress tests with Address sanitizer. #10440 (Nikita Mikhaylov)clang-10
in CI. It ensures that #10238 is fixed. #10384 (alexey-milovidov)OpenSSL SSL_read: error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error
and SSL Exception: error:2400006E:random number generator::error retrieving entropy
. The issue was present in version 20.1. #8956 (alexey-milovidov)test_settings_constraints_distributed.test_insert_clamps_settings
. #10346 (Vitaly Baranov)/dev/null
in the File
engine for better performance testing #8455 (Amos Bird)00964_live_view_watch_events_heartbeat.py
test to avoid race condition. #9944 (vzakaznikov)test_settings_constraints
#9962 (Vitaly Baranov)Data after merge is not byte-identical to data on another replicas.
with explanation. These messages are Ok and you should not worry. #10663 (alexey-milovidov)system.stack_trace
. #9832 (alexey-milovidov)clock_getres
. #9833 (alexey-milovidov)performance-test
tool that is no longer used in CI. clickhouse-performance-test
is great but now we are using way superior tool that is doing comparison testing with sophisticated statistical formulas to achieve confident results regardless to various changes in environment. #9796 (alexey-milovidov)-DUSE_STATIC_LIBRARIES=0 -DENABLE_JEMALLOC=0
#9651 (Artem Zuikov)vX.X-conflicts
tag in backport script. #9705 (Nikolai Kochetov)auto-label
for backporting script. #9685 (Nikolai Kochetov)01017_uniqCombined_memory_usage
. Continuation of #7236. #9667 (alexey-milovidov)pthread_mutex_lock
, pthread_mutex_unlock
functions. #9635 (alexey-milovidov)clang-tidy
in packager
script. #9625 (alexey-milovidov)parseDateTimeBestEffort
function when unix timestamp was passed as an argument. This fixes #13362. #13441 (alexey-milovidov).uniqExact
, topK
, sumDistinct
and similar aggregate functions called on Float types with NaN
values. It also triggered assert in debug build. This fixes #12491. #13254 (alexey-milovidov).arrayElement
function in case of array elements are Nullable and array subscript is also Nullable. This fixes #12172. #13224 (alexey-milovidov).WITH TOTALS
. #12747 (Nikolai Kochetov).IN
section. The case when user write WHERE x IN tuple(1, 2, ...)
instead of WHERE x IN (1, 2, ...)
for some obscure reason. #12700 (Anton Popov).ALTER DELETE
query when enable_mixed_granularity_parts=1
. Fixes #12536. #12543 (alesapin).in
with invalid number of arguments. #12529 (Anton Popov).text_log
is enabled. #12452 (alexey-milovidov).TOTALS/ROLLUP/CUBE
for aggregate functions with -State
and Nullable
arguments. This fixes #12163. #12376 (alexey-milovidov).WITH FILL
modifier. Previously order of columns of ORDER BY
statement wasn't respected. #12306 (Anton Popov)._table
in Merge
tables) or by "index" columns in system tables such as filtering by database name when querying from system.tables
, and this expression returns Nullable
type. This fixes #12166. #12305 (alexey-milovidov).TrieDictionary
failed to load. #12290 (Vitaly Baranov).arrayFill
worked incorrectly for empty arrays that may lead to crash. This fixes #12263. #12279 (alexey-milovidov).LowCardinality
types. This allows to execute UNION ALL of tables with columns of LowCardinality and other columns. This fixes #8212. This fixes #4342. #12275 (alexey-milovidov).StorageFile
header for some special types was written more than once. This fixed #6155. #12197 (Nikita Mikhaylov).dictGet
arguments check during GROUP BY injective functions elimination. #12179 (Azat Khuzhin).ALTER DELETE
that leads to deleting of records when condition evaluates to NULL. This fixes #9088. This closes #12106. #12153 (alexey-milovidov).greatCircleDistance
, geoDistance
. This fixes #12117. #12137 (alexey-milovidov).There is no query
exception for materialized views with joins or with subqueries attached to system logs (system.query_log, metric_log, etc) or to engine=Buffer underlying table. #12120 (filimonov).UNION
caused by wrong limit for the total number of threads. Fixes #12030. #12103 (Nikolai Kochetov).-StateResample
combinators. #12092 (Anton Popov).VIEW
. Fixes #11937. #12085 (Nikolai Kochetov).PREWHERE
. Fixes #12053, #12060. #12060 (Nikolai Kochetov).Expected single dictionary argument for function
for function defaultValueOfArgumentType
with LowCardinality
type. Fixes #11808. #12056 (Nikolai Kochetov).Cannot capture column
for higher-order functions with Tuple(LowCardinality)
argument. Fixes #9766. #12055 (Nikolai Kochetov).topK
aggregate function return Enum for Enum types. This fixes #3740. #12043 (alexey-milovidov).Nullable
columns. Fixes #11985. #12039 (Nikolai Kochetov).if
with arguments of type FixedString
with different sizes. This fixes #11362. #12021 (alexey-milovidov).neighbor
as the only returned expression may return empty result if the function is called with offset -9223372036854775808
. This fixes #11367. #12019 (alexey-milovidov).Query parameter was not set
in Values
format. Fixes #11918. #11936 (tavplubix).HTTP
interface (can be significant with wait_end_of_query=1
). #11840 (Azat Khuzhin).if()
with NULLs in condition. #11807 (Artem Zuikov).LIMIT n WITH TIES
usage together with ORDER BY
statement, which contains aliases. #11689 (Anton Popov).Nullable
column in prewhere condition. Continuation of #11608. #11869 (Nikolai Kochetov).SELECT *, xyz.*
which were success while an error expected. #11753 (hexiaoting).ORDER BY ... WITH FILL
over const columns. #11697 (Anton Popov).system.mutations
. It may show that whole mutation is already done but the server still has MUTATE_PART
tasks in the replication queue and tries to execute them. This fixes #11611. #11681 (alesapin).Nullable
column in prewhere condition. (Probably it is connected with #11572 somehow). #11608 (Nikolai Kochetov).Block structure mismatch
for queries with sampling reading from Buffer
table. #11602 (Nikolai Kochetov).Size of offsets doesn't match size of column
for queries with PREWHERE column in (subquery)
and ARRAY JOIN
. #11580 (Nikolai Kochetov).<node>
(breaks use_compact_format_in_distributed_parts_names). #11528 (Azat Khuzhin).strict_max_lifetime_seconds
, which is max_lifetime
by default and query_wait_timeout_milliseconds
, which is one minute by default. The first settings is also useful with allow_read_expired_keys
settings (to forbid reading very expired keys). #10337 (Nikita Mikhaylov).Data compressed with different methods
that can happen if min_bytes_to_use_direct_io
is enabled and PREWHERE is active and using SAMPLE or high number of threads. This fixes #11539. #11540 (alexey-milovidov).USING
key. #11373. #11404 (Artem Zuikov).joinGet()
functions. #11389 (Artem Zuikov).Pipeline stuck
error for queries with external sort and limit. Fixes #11359. #11366 (Nikolai Kochetov).\G
(vertical output) in clickhouse-client in multiline mode. This closes #9933. #11350 (alexey-milovidov).quantilesExactWeightedArray
. #11337 (Nikolai Kochetov).ALTER
queries. #11335 (alesapin).MATERIALIZED VIEW
with setting parallel_view_processing = 1
parallel again. Fixes #10241. #11330 (Nikolai Kochetov).SELECT toIntervalSecond(now64())
. #11311 (alexey-milovidov).empty
or notEmpty
functions. This fixes #11286. #11303 (alexey-milovidov).min_execution_speed
may not work or work incorrectly if the query is throttled by max_network_bandwidth
, max_execution_speed
or priority
settings. Change the default value of timeout_before_checking_execution_speed
to non-zero, because otherwise the settings min_execution_speed
and max_execution_speed
have no effect. This fixes #11297. This fixes #5732. This fixes #6228. Usability improvement: avoid concatenation of exception message with progress bar in clickhouse-client
. #11296 (alexey-milovidov).Block structure mismatch in QueryPipeline
while reading from VIEW
with constants in inner query. Fixes #11181. #11205 (Nikolai Kochetov).Invalid status for associated output
. #11200 (Nikolai Kochetov).Cannot capture column
for higher-order functions with Array(Array(LowCardinality))
captured argument. #11185 (Nikolai Kochetov).enable_optimize_predicate_expression=1
) for queries with HAVING
section (i.e. when filtering on the server initiator is required), by preserving the order of expressions (and this is enough to fix), and also force aggregator use column names over indexes. Fixes: #10613, #11413. #10621 (Azat Khuzhin).parseDateTime64BestEffort
argument resolution bugs. #11038 (Vasily Nemkov).getRawData()
. #10964 (Igr).GROUP BY
result is large and aggregation is performed by a single String
field. It leads to several unmerged rows for a single key in result. #10952 (alexey-milovidov).Distributed
tables. #10889 (Anton Popov).SIGSEGV
in StringHashTable
if such a key does not exist. #10870 (Azat Khuzhin).ReplicatedMergeTree
which might cause some ALTER
on OPTIMIZE
query to hang waiting for some replica after it become inactive. #10849 (tavplubix).Block::sortColumns()
. #10826 (Azat Khuzhin).ODBC
bridge when no quoting of identifiers is requested. Fixes [#7984] (https://github.com/ClickHouse/ClickHouse/issues/7984). #10821 (alexey-milovidov).UBSan
and MSan
report in DateLUT
. #10798 (alexey-milovidov).parallel_view_processing
behavior. Now all insertions into MATERIALIZED VIEW
without exception should be finished if exception happened. Fixes #10241. #10757 (Nikolai Kochetov).OrNull
and -OrDefault
when combined with -State
. #10741 (hcz).generateRandom
with nested types. Fixes #10583. #10734 (Nikolai Kochetov).LowCardinality(FixedString)
key column in SummingMergeTree
which could have happened after merge. Fixes #10489. #10721 (Nikolai Kochetov).h3EdgeAngle
. #10711 (alexey-milovidov).IN
operator with the identical set in one query. #10686 (Anton Popov).readonly=2
and cancel_http_readonly_queries_on_client_close=1
. Fixes #7939, #7019, #7736, #7091. #10684 (tavplubix).AggregateTransform
constructor. #10667 (palasonic1).distributed_aggregation_memory_efficient
enabled. Fixes #10655. #10664 (Nikolai Kochetov).LIMIT
. Fixes #10566, #10709. #10660 (Nikolai Kochetov).SYSTEM DROP DNS CACHE
query also drop caches, which are used to check if user is allowed to connect from some IP addresses. #10608 (tavplubix).MATERIALIZED VIEW
in case if this query contained dependent table. #10603 (Nikolai Kochetov).SELECT
of column ALIAS
which default expression type different from column type. #10563 (Azat Khuzhin).is_done=0
. #10526 (alesapin).UTC
. This fixes #9335. #10513 (alexey-milovidov).Distributed
storage. #10491 (Azat Khuzhin).simpleLinearRegression
over large integers. #10474 (hcz).max_rows_to_sort
setting. #10268 (alexey-milovidov).distributed_group_by_no_merge
enabled (introduced in 20.3.7.46 by #10131). #10399 (Nikolai Kochetov)Array(Tuple(...))
data types. This fixes #10259 #10390 (alexey-milovidov)DROP
vs OPTIMIZE
race in ReplicatedMergeTree
. DROP
could left some garbage in replica path in ZooKeeper if there was concurrent OPTIMIZE
query. #10312 (tavplubix)Pipeline stuck
error in ConcatProcessor
which could have happened in remote query. #10381 (Nikolai Kochetov)count(*)
with multiple JOINs. Fixes #9853 #10291 (Artem Zuikov)fallback_to_stale_replicas
over skip_unavailable_shards
, otherwise when both settings specified and there are no up-to-date replicas the query will fail (patch from @alex-zaitsev). Fixes: #2564. #10422 (Azat Khuzhin)IN
operator and tuples in the left side. This fixes performance regression in version 20.3. #9740, #10385 (Anton Popov)Logical error: CROSS JOIN has expressions
error for queries with comma and names joins mix. #10311 (Artem Zuikov).max_bytes_before_external_group_by
. #10302 (Artem Zuikov).allow_nondeterministic_mutations
setting. #10186 (filimonov).isConstant
. This function checks whether its argument is constant expression and returns 1 or 0. It is intended for development, debugging and demonstration purposes. #10198 (alexey-milovidov).Pipeline stuck
with max_rows_to_group_by
and group_by_overflow_mode = 'break'
. #10279 (Nikolai Kochetov).Cannot drain connections: cancel first
. #10239 (Nikolai Kochetov).parseDateTimeBestEffort
for strings in RFC-2822 when day of week is Tuesday or Thursday. This fixes #10082. #10214 (alexey-milovidov).system.numbers
or system.zeros
. #10206 (Nikolai Kochetov).index_granularity_bytes
check while creating new replica. Fixes #10098. #10121 (alesapin).JOIN
and UNION ALL
. Fixes #9826, #10113. #10099 (Nikolai Kochetov)./table/replicas/replica_name/metadata
node doesn't exist. Fixes #10037. #10095 (alesapin).CHECK TABLE
query when table contain skip indices. #10068 (alesapin).Cannot clone block with columns because block has 0 columns ... While executing GroupingAggregatedTransform
. It happened when setting distributed_aggregation_memory_efficient
was enabled, and distributed query read aggregating data with different level from different shards (mixed single and two level aggregation). #10063 (Nikolai Kochetov).Distributed
table was executed simultaneously on local and remote shards. Fixes #9965. #9971 (Nikolai Kochetov).JOIN
appears with TOTALS
. Fixes #9839. #9939 (Artem Zuikov).ON CLUSTER
DDL queries freezing on server startup. #9927 (Gagan Arneja).CREATE USER user6 HOST NAME REGEXP 'lo.?*host', NAME REGEXP 'lo*host'
. #9924 (Vitaly Baranov).TRUNCATE
for Join table engine (#9917). #9920 (Amos Bird).ReplicatedMergeTree
. #9901 (alesapin).distributed_product_mode='local'
. Fixes #4756. #9891 (Artem Zuikov).test_settings_constraints
. #9962 (Vitaly Baranov).clock_getres
. #9833 (alexey-milovidov).SET distributed_product_mode = 'local'
. #9871 (Artem Zuikov).Got 0 in totals chunk, expected 1
on client. It happened for queries with JOIN
in case if right joined table had zero rows. Example: select * from system.one t1 join system.one t2 on t1.dummy = t2.dummy limit 0 FORMAT TabSeparated;
. Fixes #9777. #9823 (Nikolai Kochetov).ALTER TABLE DELETE COLUMN
query for compact parts. #9779 (alesapin).rows_before_limit_at_least
for queries over http (with processors pipeline). This fixes #9730. #9757 (Nikolai Kochetov)use_compact_format_in_distributed_parts_names
which allows to write files for INSERT
queries into Distributed
table with more compact format. This fixes #9647. #9653 (alesapin). It makes version 20.3 backward compatible again.file name too long
when sending data for Distributed
tables for a large number of replicas. Fixed the issue that replica credentials were exposed in the server log. The format of directory name on disk was changed to [shard{shard_index}[_replica{replica_index}]]
. #8911 (Mikhail Korotov) After you upgrade to the new version, you will not be able to downgrade without manual intervention, because old server version does not recognize the new directory format. If you want to downgrade, you have to manually rename the corresponding directories to the old format. This change is relevant only if you have used asynchronous INSERT
s to Distributed
tables. In the version 20.3.3 we will introduce a setting that will allow you to enable the new format gradually.system.trace_log
every N bytes over soft allocation limit #8765 (Ivan) #9472 (alexey-milovidov) The column of system.trace_log
was renamed from timer_type
to trace_type
. This will require changes in third-party performance analysis and flamegraph processing tools.clickhouse-client
cannot receive logs that are send from the server when the setting send_logs_level
is enabled, because the names and types of the structured log messages were changed. On the other hand, different server versions can send logs with different types to each other. When you don't use the send_logs_level
setting, you should not care. #8954 (alexey-milovidov)indexHint
function #9542 (alexey-milovidov)findClusterIndex
, findClusterValue
functions. This fixes #8641. If you were using these functions, send an email to clickhouse-feedback@yandex-team.com
#9543 (alexey-milovidov)SELECT
subquery as default expression. #9481 (alesapin)ALTER MODIFY/ADD
queries logic. Now you cannot ADD
column without type, MODIFY
default expression doesn't change type of column and MODIFY
type doesn't loose default expression value. Fixes #8669. #9227 (alesapin)experimental_use_processors
is enabled by default. This setting enables usage of the new query pipeline. This is internal refactoring and we expect no visible changes. If you will see any issues, set it to back zero. #8768 (alexey-milovidov)Avro
and AvroConfluent
input/output formats #8571 (Andrew Onyshchuk) #8957 (Andrew Onyshchuk) #8717 (alexey-milovidov)cache
dictionaries (with optional permission to read old ones). #8303 (Nikita Mikhaylov)ALTER ... MATERIALIZE TTL
. It runs mutation that forces to remove expired data by TTL and recalculates meta-information about TTL in all parts. #8775 (Anton Popov)MOVE PARTITION
command for ALTER TABLE
#4729 #6168 (Guillaume Tassery)storage_policy
to not less rich one. #8107 (Vladimir Chebotarev)bitAnd
, bitOr
, bitXor
, bitNot
for FixedString(N)
datatype. #9091 (Guillaume Tassery)bitCount
. This fixes #8702. #8708 (alexey-milovidov) #8749 (ikopylov)generateRandom
table function to generate random rows with given schema. Allows to populate arbitrary test table with data. #8994 (Ilya Yatsishin)JSONEachRowFormat
: support special case when objects enclosed in top-level array. #8860 (Kruglov Pavel)DEFAULT
expression which depends on a column with default ALIAS
expression. #9489 (alesapin)--limit
more than the source data size in clickhouse-obfuscator
. The data will repeat itself with different random seed. #9155 (alexey-milovidov)groupArraySample
function (similar to groupArray
) with reservior sampling algorithm. #8286 (Amos Bird)cache
/complex_key_cache
dictionaries via system metrics. #9413 (Nikita Mikhaylov)output_format_csv_crlf_end_of_line
is set to 1 #8934 #8935 #8963 (Mikhail Korotov)h3GetBaseCell
, h3HexAreaM2
, h3IndexesAreNeighbors
, h3ToChildren
, h3ToString
and stringToH3
#8938 (Nico Mandery)max_parser_depth
to control maximum stack size and allow large complex queries. This fixes #6681 and #7668. #8647 (Maxim Smirnov)force_optimize_skip_unused_shards
setting to throw if skipping of unused shards is not possible #8805 (Azat Khuzhin)Distributed
engine #8756 (Azat Khuzhin)<tmp_policy>
) for storing temporary data. #8750 (Azat Khuzhin)X-ClickHouse-Exception-Code
HTTP header that is set if exception was thrown before sending data. This implements #4971. #8786 (Mikhail Korotov)ifNotFinite
. It is just a syntactic sugar: ifNotFinite(x, y) = isFinite(x) ? x : y
. #8710 (alexey-milovidov)last_successful_update_time
column in system.dictionaries
table #9394 (Nikita Mikhaylov)blockSerializedSize
function (size on disk without compression) #8952 (Azat Khuzhin)moduloOrZero
#9358 (hcz)system.zeros
and system.zeros_mt
as well as tale functions zeros()
and zeros_mt()
. Tables (and table functions) contain single column with name zero
and type UInt8
. This column contains zeros. It is needed for test purposes as the fastest method to generate many rows. This fixes #6604 #9593 (Nikolai Kochetov)MergeTree
-family tables in which all columns are stored in one file. It helps to increase performance of small and frequent inserts. The old format (one file per column) is now called wide. Data storing format is controlled by settings min_bytes_for_wide_part
and min_rows_for_wide_part
. #8290 (Anton Popov)Log
, TinyLog
and StripeLog
tables. #8862 (Pavel Kovalenko)File
table or file
table function. Now files are opened lazily. This fixes #8857 #8861 (alexey-milovidov)data
subdirectory. Fixed the issue when the amount of free space is not calculated correctly if the data
directory is mounted to a separate device (rare case). This fixes #7441 #9257 (Mikhail Korotov)GROUP BY
with enabled setting distributed_aggregation_memory_efficient
. Fixes #9134. #9289 (Nikolai Kochetov)queue_task_handle
at the startup of ReplicatedMergeTree
tables. #9552 (alexey-milovidov)NOT
didn't work in SHOW TABLES NOT LIKE
query #8727 #8940 (alexey-milovidov)h3EdgeLengthM
. Without this check, buffer overflow is possible. #8945 (alexey-milovidov)Inconsistent number of columns got from MergeTreeRangeReader
exception. #9024 (Anton Popov)Timeout exceeded while reading from socket
exception, which randomly happens on secure connection before timeout actually exceeded and when query profiler is enabled. Also add connect_timeout_with_failover_secure_ms
settings (default 100ms), which is similar to connect_timeout_with_failover_ms
, but is used for secure connections (because SSL handshake is slower, than ordinary TCP connection) #9026 (tavplubix)parts_to_do=0
and is_done=0
. #9022 (alesapin)partial_merge_join
setting. It's possible to make ANY|ALL|SEMI LEFT
and ALL INNER
joins with partial_merge_join=1
now. #8932 (Artem Zuikov)MergeTreeReadPool
. #8791 (Vladimir Chebotarev)toDecimal*OrNull()
functions family when called with string e
. Fixes #8312 #8764 (Artem Zuikov)FORMAT Null
sends no data to the client. #8767 (Alexander Kuzmenkov)LiveViewBlockInputStream
will not updated. LIVE VIEW
is an experimental feature. #8644 (vxider) #8625 (vxider)ALTER MODIFY TTL
wrong behavior which did not allow to delete old TTL expressions. #8422 (Vladimir Chebotarev)match
and extract
functions when haystack has zero bytes. The behaviour was wrong when haystack was constant. This fixes #9160 #9163 (alexey-milovidov) #9345 (alexey-milovidov)Kafka
partially as it can lead to holes in data. #8876 (filimonov)joinGet
with nullable return types. https://github.com/ClickHouse/ClickHouse/issues/8919 #9014 (Amos Bird)T64
codec. #9016 (Artem Zuikov) Fix data type ids in T64
compression codec that leads to wrong (de)compression in affected versions. #9033 (Artem Zuikov)enable_early_constant_folding
and disable it in some cases that leads to errors. #9010 (Artem Zuikov)Merge
tables, that can happen when reading from File
storages #9387 (tavplubix)ATTACH PARTITION FROM
, REPLACE PARTITION
, MOVE TO TABLE
. Otherwise it could make data of part inaccessible after restart and prevent ClickHouse to start. #9383 (Vladimir Chebotarev)SYSTEM RELOAD ALL DICTIONARIES
is executed while some dictionary is being modified/added/removed. #8801 (Vitaly Baranov)Memory
database engine use empty data path, so tables are created in path
directory (e.g. /var/lib/clickhouse/
), not in data directory of database (e.g. /var/lib/clickhouse/db_name
). #8753 (tavplubix)Log
engine be an alias #9231 (Ivan)MergeTree
table in one thread. It could lead to exceptions from MergeTreeRangeReader
or wrong query results. #9050 (Anton Popov)reinterpretAsFixedString
to return FixedString
instead of String
. #9052 (Andrew Onyshchuk)Success
instead of detailed error description). #9457 (alexey-milovidov)Template
format with empty row template. #8785 (Alexander Kuzmenkov)ATTACH TABLE IF NOT EXISTS
. Previously it was thrown if table already exists, despite the IF NOT EXISTS
clause. #8967 (Anton Popov)Possible deadlock avoided
at the startup of clickhouse-client in interactive mode. #9455 (alexey-milovidov)Kafka
in rare cases when exception happens after reading suffix but before commit. Fixes #9378 #9507 (filimonov)DROP TABLE IF EXISTS
#8663 (Nikita Vasilev)ALTER MODIFY SETTING
for old-formated MergeTree
table engines family. #9435 (alesapin)IN
constant in GROUP BY
#8868 (Amos Bird)ALTER DELETE
mutations which leads to index corruption. This fixes #9019 and #8982. Additionally fix extremely rare race conditions in ReplicatedMergeTree
ALTER
queries. #9048 (alesapin)compile_expressions
is enabled, you can get unexpected column
in LLVMExecutableFunction
when we use Nullable
type #8910 (Guillaume Tassery)Kafka
engine: 1) fix duplicates that were appearing during consumer group rebalance. 2) Fix rare 'holes' appeared when data were polled from several partitions with one poll and committed partially (now we always process / commit the whole polled block of messages). 3) Fix flushes by block size (before that only flushing by timeout was working properly). 4) better subscription procedure (with assignment feedback). 5) Make tests work faster (with default intervals and timeouts). Due to the fact that data was not flushed by block size before (as it should according to documentation), that PR may lead to some performance degradation with default settings (due to more often & tinier flushes which are less optimal). If you encounter the performance issue after that change - please increase kafka_max_block_size
in the table to the bigger value ( for example CREATE TABLE ...Engine=Kafka ... SETTINGS ... kafka_max_block_size=524288
). Fixes #7259 #8917 (filimonov)Parameter out of bound
exception in some queries after PREWHERE optimizations. #8914 (Baudouin Giard)arrayZip
. #8705 (alexey-milovidov)CREATE
query, fold constant expressions in storage engine arguments. Replace empty database name with current database. Fixes #6508, #3492 #9262 (tavplubix)a DEFAULT b, b DEFAULT a
. #9603 (alesapin)ALTER TABLE MOVE
#8680 (Vladimir Chebotarev)interval
identifier to correctly parse without backticks. Fixed issue when a query cannot be executed even if the interval
identifier is enclosed in backticks or double quotes. This fixes #9124. #9142 (alexey-milovidov)bitTestAll
/bitTestAny
functions. #9143 (alexey-milovidov)LIMIT n WITH TIES
when there are a lot of rows equal to n'th row. #9464 (tavplubix)insert_quorum
. #9463 (alesapin)Poco::HTTPServer
. It could happen when server is started and immediately shut down. #9468 (Anton Popov)SHOW CREATE TABLE a_table_that_does_not_exist
. #8899 (achulkov2)Parameters are out of bound
exception in some rare cases when we have a constant in the SELECT
clause when we have an ORDER BY
and a LIMIT
clause. #8892 (Guillaume Tassery)is_done=0
. #9217 (alesapin)ALTER ADD INDEX
for MergeTree tables with old syntax, because it doesn't work. #8822 (Mikhail Korotov)LIVE VIEW
depends on, so server will be able to start. Also remove LIVE VIEW
dependencies when detaching LIVE VIEW
. LIVE VIEW
is an experimental feature. #8824 (tavplubix)MergeTreeRangeReader
, while executing PREWHERE
. #9106 (Anton Popov)Method createColumn() is not implemented for data type Set
. This fixes #7799. #8674 (alexey-milovidov)intDiv
by minus one constant #9351 (hcz)BlockIO
. #9356 (Nikolai Kochetov)Kafka
table created with wrong parameters. #9513 (filimonov)timer_create
function. #8837 (alexey-milovidov)min_marks_for_seek
parameter. Fixed the error message when there is no sharding key in Distributed table and we try to skip unused shards. #8908 (Azat Khuzhin)ALTER MODIFY/DROP
queries on top of mutations for ReplicatedMergeTree*
engines family. Now ALTERS
blocks only at the metadata update stage, and don't block after that. #8701 (alesapin)WHERE
section containing unqialified names. #9512 (Artem Zuikov)SHOW TABLES
and SHOW DATABASES
queries support the WHERE
expressions and FROM
/IN
#9076 (sundyli)deduplicate_blocks_in_dependent_materialized_views
. #9070 (urykhy)sumMap
#8903 (Baudouin Giard)query_id
in clickhouse-benchmark
#9416 (Anton Popov)ALTER TABLE ... PARTITION partition
query. This addresses #7192 #8835 (alexey-milovidov)system.table_engines
now provides information about feature support (like supports_ttl
or supports_sort_order
). #8830 (Max Akhmedov)system.metric_log
by default. It will contain rows with values of ProfileEvents, CurrentMetrics collected with "collect_interval_milliseconds" interval (one second by default). The table is very small (usually in order of megabytes) and collecting this data by default is reasonable. #9225 (alexey-milovidov)LIVE VIEW
is created by CREATE LIVE VIEW name WITH TIMEOUT [42] ...
instead of CREATE TEMPORARY LIVE VIEW ...
, because the previous syntax was not consistent with CREATE TEMPORARY TABLE ...
#9131 (tavplubix)system.text_log
table #8809 (Azat Khuzhin)clickhouse-benchmark
output instead of interpolated values. It's better to show values that correspond to the execution time of some queries. #8712 (alexey-milovidov)Ordinary
database. #9527 (alexey-milovidov)arraySlice
for arrays with aggregate function states. This fixes #9388 #9391 (alexey-milovidov)clickhouse-client
. #8709 (alexey-milovidov)exception_code
in system.query_log
table. #8770 (Mikhail Korotov)9004
in the default server configuration file. Fixed password generation command in the example in configuration. #8771 (Yuriy Baranov)_path
and _file
virtual columns to HDFS
and File
engines and hdfs
and file
table functions #8489 (Olga Khvostikova)Cannot find column
while inserting into MATERIALIZED VIEW
in case if new column was added to view's internal table. #8766 #8788 (vzakaznikov) #8788 #8806 (Nikolai Kochetov) #8803 (Nikolai Kochetov)X-ClickHouse-Timezone
header set to the same timezone value that SELECT timezone()
would report. #9493 (Denis Glazachev)ColumnVector::replicate()
(this speeds up the materialize
function and higher order functions) an even further improvement to #9293 #9442 (Alexander Kazakov)stochasticLinearRegression
aggregate function. This patch is contributed by Intel. #8652 (alexey-milovidov)reinterpretAsFixedString
function. #9342 (alexey-milovidov)Null
format in processors pipeline. #8797 (Nikolai Kochetov) #8767 (Alexander Kuzmenkov)readline
with replxx
for interactive line editing in clickhouse-client
#8416 (Ivan)clang-tidy
in CI. See also #6044 #9566 (alexey-milovidov)lld
even for gcc
. #9049 (alesapin)THREAD_FUZZER_*
environment variables are set. This helps testing. #9459 (alexey-milovidov)00738_lock_for_inner_table
. This test relied on sleep. #9555 (alexey-milovidov)once
. This is needed to run all performance tests in statistical comparison mode (more reliable). #9557 (alexey-milovidov)sumMap
and sumMapWithOverflow
aggregate functions. Follow-up for #8933 #8947 (alexey-milovidov)-Wsuggest-override
to locate and fix all places where override
keyword must be used. #8760 (kreuzerkrieg)once
to loop
. #8783 (Nikolai Kochetov)libcxx
and libcxxabi
to master. In preparation to #9304 #9308 (alexey-milovidov)00910_zookeeper_test_alter_compression_codecs
. #9525 (alexey-milovidov)clickhouse-odbc
driver into test images. This allows to test interaction of ClickHouse with ClickHouse via its own ODBC driver. #9348 (filimonov)-Wmissing-include-dirs
GCC warning to eliminate all non-existing includes - mostly as a result of CMake scripting errors #8704 (kreuzerkrieg)OpenSSL SSL_read: error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error
and SSL Exception: error:2400006E:random number generator::error retrieving entropy
. The issue was present in version 20.1. #8956 (alexey-milovidov)numbers
to zeros
in perftests where number
column is not used. This will lead to more clean test results. #9600 (Nikolai Kochetov)rdkafka
and gsasl
libraries on Mac OS X. #9000 (Andrew Onyshchuk)Nullable
column in prewhere condition. Continuation of #11608. #11869 (Nikolai Kochetov).SELECT *, xyz.*
which were success while an error expected. #11753 (hexiaoting).ORDER BY ... WITH FILL
over const columns. #11697 (Anton Popov).Nullable
column in prewhere condition. (Probably it is connected with #11572 somehow). #11608 (Nikolai Kochetov).Size of offsets doesn't match size of column
for queries with PREWHERE column in (subquery)
and ARRAY JOIN
. #11580 (Nikolai Kochetov).Data compressed with different methods
that can happen if min_bytes_to_use_direct_io
is enabled and PREWHERE is active and using SAMPLE or high number of threads. This fixes #11539. #11540 (alexey-milovidov).Pipeline stuck
error for queries with external sort and limit. Fixes #11359. #11366 (Nikolai Kochetov).quantilesExactWeightedArray
. #11337 (Nikolai Kochetov).MATERIALIZED VIEW
with setting parallel_view_processing = 1
parallel again. Fixes #10241. #11330 (Nikolai Kochetov).SELECT toIntervalSecond(now64())
. #11311 (alexey-milovidov).empty
or notEmpty
functions. This fixes #11286. #11303 (alexey-milovidov).min_execution_speed
may not work or work incorrectly if the query is throttled by max_network_bandwidth
, max_execution_speed
or priority
settings. Change the default value of timeout_before_checking_execution_speed
to non-zero, because otherwise the settings min_execution_speed
and max_execution_speed
have no effect. This fixes #11297. This fixes #5732. This fixes #6228. Usability improvement: avoid concatenation of exception message with progress bar in clickhouse-client
. #11296 (alexey-milovidov).Cannot capture column
for higher-order functions with Array(Array(LowCardinality))
captured argument. #11185 (Nikolai Kochetov).ReplicatedMergeTree
which might cause some ALTER
on OPTIMIZE
query to hang waiting for some replica after it become inactive. #10849 (tavplubix).src_type
for correct type conversion in key conditions. Fixes #6287. #10791 (Andrew Onyshchuk).parallel_view_processing
behavior. Now all insertions into MATERIALIZED VIEW
without exception should be finished if exception happened. Fixes #10241. #10757 (Nikolai Kochetov).IN
operator with the identical set in one query. #10686 (Anton Popov).distributed_aggregation_memory_efficient
enabled. Fixes #10655. #10664 (Nikolai Kochetov).enable_optimize_predicate_expression=1
) for queries with HAVING
section (i.e. when filtering on the server initiator is required), by preserving the order of expressions (and this is enough to fix), and also force aggregator use column names over indexes. Fixes: #10613, #11413. #10621 (Azat Khuzhin).the BloomFilter false positive must be a double number between 0 and 1
#10551. #10569 (Winter Zhang).LowCardinality(FixedString)
key column in SummingMergeTree
which could have happened after merge. Fixes #10489. #10721 (Nikolai Kochetov).readonly=2
and cancel_http_readonly_queries_on_client_close=1
. Fixes #7939, #7019, #7736, #7091. #10684 (tavplubix).SYSTEM DROP DNS CACHE
query also drop caches, which are used to check if user is allowed to connect from some IP addresses. #10608 (tavplubix).MATERIALIZED VIEW
in case if this query contained dependent table. #10603 (Nikolai Kochetov).is_done=0
. #10526 (alesapin).simpleLinearRegression
over large integers. #10474 (hcz).BloomFilter
index #9623. #10431 (Winter Zhang).ARRAY JOIN
, ORDER BY
and LIMIT
may return incomplete result. This fixes #10226. #10427 (alexey-milovidov).fallback_to_stale_replicas
over skip_unavailable_shards
. #10422 (Azat Khuzhin).Array(Tuple(...))
data types. This fixes #10259. #10390 (alexey-milovidov).HashTable
that caused compilation error when trying to read HashMap from buffer. #10386 (palasonic1).Pipeline stuck
error in ConcatProcessor
which could have happened in remote query. #10381 (Nikolai Kochetov).Pipeline stuck
with max_rows_to_group_by
and group_by_overflow_mode = 'break'
. #10279 (Nikolai Kochetov).Cannot drain connections: cancel first
. #10239 (Nikolai Kochetov).'Unknown function lambda.'
error message when user tries to run ALTER UPDATE/DELETE
on tables with ENGINE = Replicated*
. Check for nondeterministic functions now handles lambda expressions correctly. #10237 (Alexander Kazakov).parseDateTimeBestEffort
for strings in RFC-2822 when day of week is Tuesday or Thursday. This fixes #10082. #10214 (alexey-milovidov).JOIN
that may clash with names of constants outside of JOIN
. #10207 (alexey-milovidov).system.numbers
or system.zeros
. #10206 (Nikolai Kochetov).arrayJoin
functions (in certain cases). This fixes #10092. #10195 (alexey-milovidov).allow_nondeterministic_mutations
setting. #10186 (filimonov).INSERT
into table with Distributed
engine. #10135 (Azat Khuzhin).SIGSEGV
on INSERT
into Distributed
table when its structure differs from the underlying tables. #10105 (Azat Khuzhin).JOIN
and UNION ALL
. Fixes #9826, #10113. #10099 (Nikolai Kochetov).Cannot clone block with columns because block has 0 columns ... While executing GroupingAggregatedTransform
. It happened when setting distributed_aggregation_memory_efficient
was enabled, and distributed query read aggregating data with different level from different shards (mixed single and two level aggregation). #10063 (Nikolai Kochetov).GROUP BY
over string keys containing trailing zero bytes (#8636, #8925). #10025 (Alexander Kuzmenkov).'Not found column in block'
error when JOIN
appears with TOTALS
. Fixes #9839. #9939 (Artem Zuikov).ON CLUSTER
DDL queries freezing on server startup. #9927 (Gagan Arneja).TRUNCATE
for Join table engine (#9917). #9920 (Amos Bird).'scalar doesn't exist'
error in ALTER queries (#9878). #9904 (Amos Bird).ReplicatedMergeTree
. #9901 (alesapin).DeleteOnDestroy
logic in ATTACH PART
which could lead to automatic removal of attached part and added few tests. #9410 (Vladimir Chebotarev).collapsing_sorted_stream
. #9367 (Deleted user).'Different expressions with the same alias'
error when query has PREWHERE
and WHERE
on distributed table and SET distributed_product_mode = 'local'
. #9871 (Artem Zuikov).INSERT
queries to a shard with another constraints. This change improves fix #9447. #9852 (Vitaly Baranov).Got 0 in totals chunk, expected 1
on client. It happened for queries with JOIN
in case if right joined table had zero rows. Example: select * from system.one t1 join system.one t2 on t1.dummy = t2.dummy limit 0 FORMAT TabSeparated;
. Fixes #9777. #9823 (Nikolai Kochetov).SIGSEGV
with optimize_skip_unused_shards
when type cannot be converted. #9804 (Azat Khuzhin).ORDER BY
stage from mutations because we read from a single ordered part in a single thread. Also add check that the order of rows in mutation is ordered in sorting key order and this order is not violated. #9886 (alesapin).Cannot schedule a task
error (due to unhandled exception in ParallelAggregatingBlockInputStream::Handler::onFinish/onFinishThread
). This fixes #6833. #9154 (Azat Khuzhin)ALTER
queries (mutations). This fixes #9533 and #9670. #9754 (alesapin)sumKahan
and sumWithOverflow
. I lead to exception while using this functions in remote queries. #9636 (Azat Khuzhin). This issue was in all ClickHouse releases.ALTER ON CLUSTER
of Distributed
tables with internal replication. This fixes #3268. #9617 (shinoi2). This issue was in all ClickHouse releases.Size of filter doesn't match size of column
and Invalid number of rows in Chunk
in MergeTreeRangeReader
. They could appear while executing PREWHERE
in some cases. Fixes #9132. #9612 (Anton Popov)time + 1
(in contrast to an expression like time + INTERVAL 1 SECOND
). This fixes #5743. #9323 (alexey-milovidov). This issue was in all ClickHouse releases.a DEFAULT b, b DEFAULT a
. #9603 (alesapin)Poco::HTTPServer
. It could happen when server is started and immediately shut down. #9468 (Anton Popov)LIMIT n WITH TIES
when there are a lot of rows equal to n'th row. #9464 (tavplubix)ALTER MODIFY SETTING
for old-formated MergeTree
table engines family. #9435 (alesapin)match
and extract
functions when haystack has zero bytes. The behaviour was wrong when haystack was constant. This fixes #9160 #9163 (alexey-milovidov) #9345 (alexey-milovidov)T64
codec.
#9039 (abyss7)
MergeTreeRangeReader
, while executing PREWHERE
. Fixes #9064.
#9106 (CurtizJ)
reinterpretAsFixedString
to return FixedString
instead of String
.
#9052 (oandrew)
joinGet
with nullable return types. Fixes #8919
#9014 (amosbird)
CROSS
to INNER JOIN
if there's [NOT] LIKE
operator in WHERE
section. Fixes #9191
#9229 (4ertus2)
IN()
inside. Fixes #7314.
#9251 (4ertus2)
ALTER MODIFY/ADD
queries logic. Now you cannot ADD
column without type, MODIFY
default expression doesn't change type of column and MODIFY
type doesn't loose default expression value. Fixes #8669.
#9227 (alesapin)
max_execution_time
is not respected.
#7796 (KochetovNicolai)
DictCacheKeysRequestedFound
metric.
#9411 (nikitamikhaylov)
ATTACH PARTITION FROM
, REPLACE PARTITION
, MOVE TO TABLE
which otherwise could make data of part inaccessible after restart and prevent ClickHouse to start.
#9383 (excitoon)
MergeTreeIndexSet
. This fixes #9250
#9365 (alexey-milovidov)
UInt64
numbers that don't fit in Int64 in JSON-related functions. Update SIMDJSON
to master. This fixes #9209
#9344 (alexey-milovidov)
OpenSSL SSL_read: error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error and SSL Exception: error:2400006E:random number generator::error retrieving entropy.
Update OpenSSL to upstream master.
#8956 (alexey-milovidov)
CREATE
query, fold constant expressions in storage engine arguments. Replace empty database name with current database. Fixes #6508, #3492. Also fix check for local address in ClickHouseDictionarySource.
#9262 (tabplubix)
StorageMerge
, which can happen when reading from StorageFile.
#9387 (tabplubix)
Kafka
in rare cases when exception happens after reading suffix but before commit. Fixes #9378. Related: #7175
#9507 (filimonov)
Kafka
table created with wrong parameters. Fixes #9494. Incorporates #9507.
#9513 (filimonov)
deduplicate_blocks_in_dependent_materialized_views
option to control the behaviour of idempotent inserts into tables with materialized views. This new feature was added to the bugfix release by a special request from Altinity.
#9070 (urykhy)
merge_tree_uniform_read_distribution
obsolete. The server still recognizes this setting but it has no effect. #8308 (alexey-milovidov)greatCircleDistance
to Float32
because now the result of calculation is Float32
. #7993 (alexey-milovidov)a<tab>b
you have to write a\tb
or a\<tab>b
and respectively, a%5Ctb
or a%5C%09b
in URL. This is needed to add the possibility to pass NULL as \N
. This fixes #7488. #8517 (alexey-milovidov)use_minimalistic_part_header_in_zookeeper
setting for ReplicatedMergeTree
by default. This will significantly reduce amount of data stored in ZooKeeper. This setting is supported since version 19.1 and we already use it in production in multiple services without any issues for more than half a year. Disable this setting if you have a chance to downgrade to versions older than 19.1. #6850 (alexey-milovidov)allow_experimental_data_skipping_indices
, allow_experimental_cross_to_join_conversion
and allow_experimental_multiple_joins_emulation
are now obsolete and do nothing. #7974 (alexey-milovidov)ANY JOIN
logic for StorageJoin
consistent with JOIN
operation. To upgrade without changes in behaviour you need add SETTINGS any_join_distinct_right_table_keys = 1
to Engine Join tables metadata or recreate these tables after upgrade. #8400 (Artem Zuikov)system.merges
. #8043 (Vladimir Chebotarev)SYSTEM RELOAD DICTIONARY
query in ON CLUSTER
mode. #8288 (Guillaume Tassery)CREATE DICTIONARY
queries in ON CLUSTER
mode. #8163 (alesapin)users.xml
can inherit multiple profiles. #8343 (Mikhail f. Shiryaev)system.stack_trace
table that allows to look at stack traces of all server threads. This is useful for developers to introspect server state. This fixes #7576. #8344 (alexey-milovidov)DateTime64
datatype with configurable sub-second precision. #7170 (Vasily Nemkov)clusterAllReplicas
which allows to query all the nodes in the cluster. #8493 (kiran sunkari)categoricalInformationValue
which calculates the information value of a discrete feature. #8117 (hcz)CSV
, TSV
and JSONEachRow
format by doing it in parallel. #7780 (Alexander Kuzmenkov)bankerRound
which performs banker's rounding. #8112 (hcz)ANY JOIN
logic. Now t1 ANY LEFT JOIN t2
equals t2 ANY RIGHT JOIN t1
. #7665 (Artem Zuikov)any_join_distinct_right_table_keys
which enables old behaviour for ANY INNER JOIN
. #7665 (Artem Zuikov)SEMI
and ANTI JOIN
. Old ANY INNER JOIN
behaviour now available as SEMI LEFT JOIN
. #7665 (Artem Zuikov)Distributed
format for File
engine and file
table function which allows to read from .bin
files generated by asynchronous inserts into Distributed
table. #8535 (Nikolai Kochetov)runningAccumulate
which allows to reset aggregation results for each new key value. #8326 (Sergey Kononenko)<remote_url_allow_hosts>
in config.xml
which restricts allowed hosts for remote table engines and table functions URL
, S3
, HDFS
. #7154 (Mikhail Korotov)greatCircleAngle
which calculates the distance on a sphere in degrees. #8105 (alexey-milovidov)JSONCompactEachRow
and JSONCompactEachRowWithNamesAndTypes
formats for input and output. #7841 (Mikhail Korotov)File
, S3
, URL
, HDFS
) which allows to read and write gzip
files based on additional engine parameter or file extension. #7840 (Andrey Bodrov)randomASCII(length)
function, generating a string with a random set of ASCII printable characters. #8401 (BayoNet)JSONExtractArrayRaw
which returns an array on unparsed json array elements from JSON
string. #8081 (Oleg Matrokhin)arrayZip
function which allows to combine multiple arrays of equal lengths into one array of tuples. #8149 (Winter Zhang)TTL
-expressions for *MergeTree
table engines family. #8140 (Vladimir Chebotarev)avgWeighted
which allows to calculate weighted average. #7898 (Andrey Bodrov)TSV
, TSKV
, CSV
and JSONEachRow
formats. #7894 (Nikita Mikhaylov)H3
library: h3GetResolution
, h3EdgeAngle
, h3EdgeLength
, h3IsValid
and h3kRing
. #8034 (Konstantin Malanchev)br
) compression in file-related storages and table functions. This fixes #8156. #8526 (alexey-milovidov)groupBit*
functions for the SimpleAggregationFunction
type. #8485 (Guillaume Tassery)Distributed
engine. Fixes issue #7868. #8306 (tavplubix)EXPRESSION
for attributes in arbitrary string in non-ClickHouse SQL dialect. #8098 (alesapin)INSERT SELECT FROM mysql(...)
query. This fixes #8070 and #7960. #8234 (tavplubix)Tuple
from JSONEachRow
. This fixes #5653. #8606 (tavplubix)WITH TIES
alongside LIMIT BY
. Also add ability to use TOP
with LIMIT BY
. This fixes #7472. #7637 (Nikita Mikhaylov)clickhouse-odbc-bridge
binary. #8046 (Amos Bird)*MergeTree
engines family. Now it doesn't fail in case when we have equal amount of rows in last granule and last mark (non-final). #8047 (alesapin)Enum*
columns after ALTER
query, when underlying numeric type is equal to table specified type. This fixes #7836. #7908 (Anton Popov)substring
. It was not allowed by mistake. This fixes #4832. #7703 (alexey-milovidov)(O|J)DBC
table engine. #7709 (alesapin)localhost
. This PR fixes the solution provided in #8241. #8342 (Vitaly Baranov)argMin
and argMax
functions for long string arguments, when result is used in runningAccumulate
function. This fixes #8325 #8341 (dinosaur)Buffer
engine. #8345 (Azat Khuzhin)NULL
as one of the arguments and return non-NULL. #8196 (alexey-milovidov)MergeTree
table engines. #8194 (Vladimir Chebotarev)IN
inside WHERE
statement when row-level table filter is present. Fixes #6687 #8357 (Ivan)host_regexp
specified in users.xml
. #8241 (Vitaly Baranov)JOIN ON
section. #8385 (Artem Zuikov)std::terminate
) when the server cannot send or write data in JSON
or XML
format with values of String
data type (that require UTF-8
validation) or when compressing result data with Brotli algorithm or in some other rare cases. This fixes #7603 #8384 (alexey-milovidov)StorageDistributedDirectoryMonitor
found by CI. This fixes #8364. #8383 (Nikolai Kochetov)*MergeTree
table engines family preserve storage policy volume order more accurately. #8549 (Vladimir Chebotarev)Kafka
works properly with Native
format. This fixes #6731 #7337 #8003. #8016 (filimonov)CSVWithNames
) which were throwing exception about EOF for table engine Kafka
. #8016 (filimonov)IN
section. This fixes #5767 and #2542. #7755 (Nikita Mikhaylov)File
. #7756 (Nikolai Kochetov)Parquet
format containing columns of type list
. #8334 (maxulan)Not found column
for distributed queries with PREWHERE
condition dependent on sampling key if max_parallel_replicas > 1
. #7913 (Nikolai Kochetov)Not found column
if query used PREWHERE
dependent on table's alias and the result set was empty because of primary key condition. #7911 (Nikolai Kochetov)rand
and randConstant
in case of Nullable
argument. Now functions always return UInt32
and never Nullable(UInt32)
. #8204 (Nikolai Kochetov)WITH FILL
expression. This fixes #7784. #7789 (Winter Zhang)count()
result for SummingMergeTree
when FINAL
section is used. #3280 #7786 (Nikita Mikhaylov)version()
, uptime()
, etc. which returns different constant values for different servers. This fixes #7666. #7689 (Nikolai Kochetov)CREATE TABLE .. AS dictionary
query. #8508 (Azat Khuzhin).g4
file. #8294 (taiyang-li)JOIN
s with tables with engine Join
. This fixes #7556 #8254 #7915 #8100. #8298 (Artem Zuikov)CREATE DATABASE
. #7916 (Azat Khuzhin)StorageFile
and StorageHDFS
. Fixes https://github.com/ClickHouse/ClickHouse/issues/7650. #7981 (alesapin)ALTER ... MODIFY ... CODEC
query, when user specify both default expression and codec. Fixes 8593. #8614 (alesapin)SimpleAggregateFunction(LowCardinality)
type. #8613 (Nikolai Kochetov)toDateTime64
. #8375 (Vasily Nemkov)LEFT
or FULL JOIN
with and Join engine and unsupported join_use_nulls
settings. #8479 (Artem Zuikov)DROP DICTIONARY IF EXISTS db.dict
query doesn't throw exception if db
doesn't exist. #8185 (Vitaly Baranov)file
, mysql
, remote
) caused by usage of reference to removed IStorage
object. Fix incorrect parsing of columns specified at insertion into table function. #7762 (tavplubix)clickhouse-server
. This fixes #7507. #8570 (Zhichang Yu)clickhouse-copier
's redundant contention between concurrent workers. #7816 (Ding Xiang Fei)*MergeTree
data parts after move to another disk and server restart. #7810 (Vladimir Chebotarev)FULL JOIN
with LowCardinality
in JOIN
key. #8252 (Artem Zuikov)INSERT INTO tbl (x, y, x)
. This fixes #5465, #7681. #7685 (alesapin)There's no column
error for materialized and alias columns. #8210 (Artem Zuikov)EXISTS
query was used without TABLE
or DICTIONARY
qualifier. Just like EXISTS t
. This fixes #8172. This bug was introduced in version 19.17. #8213 (alexey-milovidov)"Sizes of columns doesn't match"
that might appear when using SimpleAggregateFunction
column. #7790 (Boris Granveaud)allow_databases
got access to all databases (and same for allow_dictionaries
). #7793 (DeifyTheGod)ORDER BY
behaviour in case of sorting by primary key prefix and non primary key suffix. #7759 (Anton Popov)ALTER MOVE
ran immediately after merge finish moves superpart of specified. Fixes #8103. #8104 (Vladimir Chebotarev)UNION
with different number of columns. Fixes #7279. #7929 (Nikolai Kochetov)substr
with negative size. #8589 (Nikolai Kochetov)MergeTree
if there are not enough free threads in background pool. #8588 (tavplubix)UNION ALL
AST. #7999 (litao91)arrayIntersect
. #7777 (Nikolai Kochetov)OPTIMIZE TABLE
query will not wait for offline replicas to perform the operation. #8314 (javi santana)ALTER TTL
parser for Replicated*MergeTree
tables. #8318 (Vladimir Chebotarev)bitmapAnd
function error when intersecting an aggregated bitmap and a scalar bitmap. #8082 (Yue Huang)ZXid
according to the ZooKeeper Programmer's Guide which fixes bug in clickhouse-cluster-copier
. #8088 (Ding Xiang Fei)odbc
table function now respects external_table_functions_use_nulls
setting. #7506 (Vasily Nemkov)SYSTEM RELOAD DICTIONARY
reloads a dictionary completely, ignoring update_field
. This fixes #7440. #8037 (Vitaly Baranov)Float*
parsing in Values
format. This fixes #7817. #7870 (tavplubix)*MergeTree
table engines family. #7873 (Vladimir Chebotarev)SimpleAggregateFunction(LowCardinality)
column. This fixes #8515. #8522 (Azat Khuzhin)system.collations
table. #8051 (alesapin)LIFETIME(MIN 0 MAX N)
, LIFETIME(N)
) don't update in background. #7983 (alesapin)URL
. This fixes #8157. #8419 (Andrey Bodrov)CHECK TABLE
query for *MergeTree
tables without key. Fixes #7543. #7979 (alesapin)Float64
to MySQL type. #8079 (Yuriy Baranov)file
while inserting into file that doesn't exist. Now in this case file would be created and then insert would be processed. #8177 (Olga Khvostikova)trace_log
is in enabled. #7838 (filimonov)Date
in RangeHashed
external dictionary created from DDL query. Fixes 7899. #8275 (alesapin)now64()
is called with result of another function. #8270 (Vasily Nemkov)arraySplit
function. This fixes #7708. #7747 (hcz)pid-file
of another running clickhouse-server
may be deleted. #8487 (Weiqing Xu)invalidate_query
, which stopped updates and some exception on previous update tries. #8029 (alesapin)arrayReduce
that may lead to "double free" and error in aggregate function combinator Resample
that may lead to memory leak. Added aggregate function aggThrow
. This function can be used for testing purposes. #8446 (alexey-milovidov)S3
table engine. #8251 (Grigory Pervakov)clickhouse-local
. This fixes #5335. #8230 (Andrey Nagorny)mutations_sync
which allows to wait ALTER UPDATE/DELETE
queries synchronously. #8237 (alesapin)user_files_path
in config.xml
(in the way similar to format_schema_path
). #7632 (hcz)-OrZero
postfix. #7880 (Andrey Konyaev)Live View
table engine refactoring. #8519 (vzakaznikov)Column ... already exists
while using FINAL
and SAMPLE
together, e.g. select count() from table final sample 1/2
. Fixes #5186. #7907 (Nikolai Kochetov)joinGet
function can be table indentifier. #7707 (Amos Bird)MaterializedView
with subqueries above Kafka
tables. #8197 (filimonov)SYSTEM RELOAD DICTIONARY
now executes synchronously. #8240 (Vitaly Baranov)addr2line
when binary is position independent and ASLR is active. This fixes #8360. #8387 (alexey-milovidov)<table name='table_name'>…</table>
. Fixes #5779. #8381 (Ivan)cityHash
function can work with Decimal
and UUID
types. Fixes #5184. #7693 (Mikhail Korotov)DROP DATABASE
, DETACH TABLE
, DROP TABLE
and ATTACH TABLE
for MySQL
database engine. #8202 (Winter Zhang)MergeTree
at different disks, in order to not allow to miss data parts at undefined disks. #8118 (Vladimir Chebotarev)clickhouse-client
now only enable bracketed-paste
when multiquery is on and multiline is off. This fixes (#7757)[https://github.com/ClickHouse/ClickHouse/issues/7757]. #7761 (Amos Bird)Array(Decimal)
in if
function. #7721 (Artem Zuikov)arrayDifference
, arrayCumSum
and arrayCumSumNegative
functions. #7724 (Artem Zuikov)lifetime
column to system.dictionaries
table. #6820 #7727 (kekekekule)*MergeTree
table engines. Addresses #7660. #8440 (Vladimir Chebotarev)AWS SDK
for S3
interactions which allows to use all S3 features out of the box. #8011 (Pavel Kovalenko)Live View
tables. #7792 (vzakaznikov)Date
or DateTime
column from TTL
expressions was removed. #7920 (Vladimir Chebotarev)system.detached_parts
table. #7833 (Vladimir Chebotarev)max_(table|partition)_size_to_drop
can be changed without a restart. #7779 (Grigory Pervakov)Stack trace:
. #7897 (alexey-milovidov)Kafka
engine in various formats after #7935. #8035 (Ivan)sha2_password
auth plugin. #8036 (Yuriy Baranov)ORDER BY
optimization for Merge
, Buffer
and Materilized View
storages with underlying MergeTree
tables. #8130 (Anton Popov)getrandom
to have better compatibility with old kernels (< 3.17). #7940 (Amos Bird)Distributed
table engine. #7933 (Azat Khuzhin)system.mutations
table. #8179 (alesapin)mark_cache_min_lifetime
is now obsolete and does nothing. In previous versions, mark cache can grow in memory larger than mark_cache_size
to accomodate data within mark_cache_min_lifetime
seconds. That was leading to confusion and higher memory usage than expected, that is especially bad on memory constrained systems. If you will see performance degradation after installing this release, you should increase the mark_cache_size
. #8484 (alexey-milovidov)tid
everywhere. This is needed for #7477. #8276 (alexey-milovidov)-fno-omit-frame-pointer
globally to spare one more register. #8097 (Amos Bird)greatCircleDistance
function and add performance tests for it. #7307 (Olga Khvostikova)roundDown
. #8465 (alexey-milovidov)max
, min
, argMin
, argMax
for DateTime64
data type. #8199 (Vasily Nemkov)modulo
function. #7750 (Amos Bird)ORDER BY
and merging with single column key. #8335 (alexey-milovidov)arrayReduce
, -Array
and -State
combinators. #7710 (Amos Bird)PREWHERE
should be optimized to be at least as efficient as WHERE
. #7769 (Amos Bird)round
and roundBankers
handling negative numbers. #8229 (hcz)DoubleDelta
and Gorilla
codecs by roughly 30-40%. This fixes #7082. #8019 (Vasily Nemkov)base64
related functions. #8444 (alexey-milovidov)geoDistance
. It is similar to greatCircleDistance
but uses approximation to WGS-84 ellipsoid model. The performance of both functions are near the same. #8086 (alexey-milovidov)min
and max
aggregation functions for Decimal
data type. #8144 (Artem Zuikov)arrayReduce
. #7608 (Amos Bird)if
chains are now optimized as multiIf
. #8355 (kamalov-ruslan)Kafka
table engine introduced in 19.15. This fixes #7261. #7935 (filimonov)gcc
from Debian packages occasionally brings by default. #8483 (alexey-milovidov)Values
with expressions by default (input_format_values_deduce_templates_of_expressions=1
). #8231 (tavplubix)ARM
and in minimal mode. #8304 (proller)clickhouse-server
when std::atexit is not called. Also slightly improved logging in stateless tests with coverage. #8267 (alesapin)curl
build fully quiet. #8232 #8203 (Pavel Kovalenko)MemorySanitizer
warnings. #8235 (Alexander Kuzmenkov)add_warning
and no_warning
macros in CMakeLists.txt
. #8604 (Ivan)libc
headers to contrib. It allows to make builds more consistent across various systems (only for x86_64-linux-gnu
). #5773 (alexey-milovidov)-fPIC
from some libraries. #8464 (alexey-milovidov)CMakeLists.txt
for curl. See https://github.com/ClickHouse/ClickHouse/pull/8011#issuecomment-569478910 #8459 (alexey-milovidov)CapNProto
library. #8220 (alexey-milovidov)AArch64
even if MADV_FREE
is not available. This fixes #8027. #8243 (Amos Bird)zlib-ng
to fix memory sanitizer problems. #7182 #8206 (Alexander Kuzmenkov)libc++
. This supersedes #8374. #8380 (alexey-milovidov)Field
methods more type-safe to find more errors. #7386 #8209 (Alexander Kuzmenkov)libc-headers
submodule. #8507 (alexey-milovidov)JSON
quoting in performance test output. #8497 (Nikolai Kochetov)std::exception
and Poco::Exception
. In previous versions it was available only for DB::Exception
. This improves diagnostics. #8501 (alexey-milovidov)clock_gettime
and clock_nanosleep
for fresh glibc versions. #8054 (Amos Bird)part_log
in example config for developers. #8609 (alexey-milovidov)01036_no_superfluous_dict_reload_on_create_database*
. #8111 (Azat Khuzhin).tgz
build and documentation for them. #8612 #8591 (alesapin)ZSTD
test (it was created in year 2016 to reproduce the bug that pre 1.0 version of ZSTD has had). This fixes #8618. #8619 (alexey-milovidov)LOGICAL_ERROR
exceptions as assertion failures, so that they are easier to notice. #8475 (Alexander Kuzmenkov)lz4
to fix a MemorySanitizer failure. #8181 (Alexander Kuzmenkov)gcc
and g++
to version 9 in build/docker/build.sh
#7766 (TLightSky)PREWHERE
is worse than WHERE
. #7768 (Amos Bird)libunwind
. #8539 (alexey-milovidov)libc++
to the latest version. #8324 (alexey-milovidov)libressl
to openssl
. ClickHouse should support TLS 1.3 and SNI after this change. This fixes #8171. #8218 (alexey-milovidov)chacha20_poly1305
from SSL (happens on connect to https://yandex.ru/). #8214 (alexey-milovidov).deb
linux distros. #8075 (proller)clickhouse-server
PID in clickhouse-test
. #8063 (Alexander Kazakov)base64
library. Also updated this library to the latest version, but it doesn't matter. This fixes #8397. #8403 (alexey-milovidov)00600_replace_running_query
for processors. #8272 (Nikolai Kochetov)tcmalloc
to make CMakeLists.txt
simpler. #8310 (alexey-milovidov)libc++
instead of libstdc++
. Recently libc++
was used only with clang. This will improve consistency of build configurations and portability. #8311 (alexey-milovidov)CapNProto
library. #8224 (alexey-milovidov)tcmalloc
, because it's no longer supported. #8225 (alexey-milovidov)Float64
and UInt64
values. #8349 (Vasily Nemkov)termcap
is very much deprecated and lead to various problems (f.g. missing "up" cap and echoing ^J
instead of multi line) . Favor terminfo
or bundled ncurses
. #7737 (Amos Bird)test_storage_s3
integration test. #7734 (Nikolai Kochetov)StorageFile(<format>, null)
to insert block into given format file without actually write to disk. This is required for performance tests. #8455 (Amos Bird)--print-time
to functional tests which prints execution time per test. #8001 (Nikolai Kochetov)KeyCondition
while evaluating RPN. This will fix warning from gcc-9. #8279 (alexey-milovidov)log_to_console.xml
always log to stderr, regardless of is it interactive or not. #8395 (Alexander Kuzmenkov)clickhouse-performance-test
tool. #8555 (alexey-milovidov)lld-X
with corresponding clang-X
version. #8092 (alesapin)min_bytes_to_use_mmap_io
. It allows to read big files without copying data from kernel to userspace. The setting is disabled by default. Recommended threshold is about 64 MB, because mmap/munmap is slow. #8520 (alexey-milovidov)system.quotas
, new functions currentQuota
, currentQuotaKey
, new SQL syntax CREATE QUOTA
, ALTER QUOTA
, DROP QUOTA
, SHOW QUOTA
. #7257 (Vitaly Baranov)system.row_policies
, new function currentRowPolicies()
, new SQL syntax CREATE POLICY
, ALTER POLICY
, DROP POLICY
, SHOW CREATE POLICY
, SHOW POLICIES
. #7808 (Vitaly Baranov)File
table engine. This fixes #8536. #8537 (alexey-milovidov)此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。