All Versions
345
Latest Version
Avg Release Cycle
33 days
Latest Release
770 days ago
Changelog History
Page 20
Changelog History
Page 20
-
v19.18.1.1752
December 01, 2019 -
v19.18.1.1751
November 30, 2019 -
v19.18.1.1750
November 29, 2019 -
v19.18.1.1745
November 29, 2019 -
v19.17.9.60
February 10, 2020 -
v19.17.8.54
January 31, 2020 -
v19.17.7.52
January 22, 2020 -
v19.17.6.36 Changes
December 27, 2019๐ Bug Fix
- ๐ Fixed potential buffer overflow in decompress. Malicious user can pass fabricated compressed data that could cause read after buffer. This issue was found by Eldar Zaitov from Yandex information security team. #8404 (alexey-milovidov)
- ๐ Fixed possible server crash (
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. #8384 (alexey-milovidov) - ๐ Fixed dictionaries with source from a clickhouse
VIEW
, now reading such dictionaries doesn't cause the errorThere is no query
. #8351 (Nikolai Kochetov) - ๐ Fixed checking if a client host is allowed by host_regexp specified in users.xml. #8241, #8342 (Vitaly Baranov)
- ๐
RENAME TABLE
for a distributed table now renames the folder containing inserted data before sending to shards. This fixes an issue with successive renamestableA->tableB
,tableC->tableA
. #8306 (tavplubix) range_hashed
external dictionaries created by DDL queries now allow ranges of arbitrary numeric types. #8275 (alesapin)- ๐ Fixed
INSERT INTO table SELECT ... FROM mysql(...)
table function. #8234 (tavplubix) - ๐ Fixed segfault in
INSERT INTO TABLE FUNCTION file()
while inserting into a file which doesn't exist. Now in this case file would be created and then insert would be processed. #8177 (Olga Khvostikova) - ๐ Fixed bitmapAnd error when intersecting an aggregated bitmap and a scalar bitmap. #8082 (Yue Huang)
- ๐ Fixed segfault when
EXISTS
query was used withoutTABLE
orDICTIONARY
qualifier, just likeEXISTS t
. #8213 (alexey-milovidov) - ๐ Fixed return type for functions
rand
andrandConstant
in case of nullable argument. Now functions always returnUInt32
and neverNullable(UInt32)
. #8204 (Nikolai Kochetov) - ๐ Fixed
DROP DICTIONARY IF EXISTS db.dict
, now it doesn't throw exception ifdb
doesn't exist. #8185 (Vitaly Baranov) - โช If a table wasn't completely dropped because of server crash, the server will try to restore and load it #8176 (tavplubix)
- ๐ Fixed a trivial count query for a distributed table if there are more than two shard local table. #8164 (ๅฐ่ทฏ)
- ๐ Fixed bug that lead to a data race in DB::BlockStreamProfileInfo::calculateRowsBeforeLimit() #8143 (Alexander Kazakov)
- ๐ Fixed
ALTER table MOVE part
executed immediately after merging the specified part, which could cause moving a part which the specified part merged into. Now it correctly moves the specified part. #8104 (Vladimir Chebotarev) - Expressions for dictionaries can be specified as strings now. This is useful for calculation of attributes while extracting data from non-ClickHouse sources because it allows to use non-ClickHouse syntax for those expressions. #8098 (alesapin)
- ๐ Fixed a very rare race in
clickhouse-copier
because of an overflow in ZXid. #8088 (Ding Xiang Fei) - ๐ Fixed the bug when after the query failed (due to "Too many simultaneous queries" for example) it would not read external tables info, and the
next request would interpret this info as the beginning of the next query causing an error like
Unknown packet from client
. #8084 (Azat Khuzhin) - Avoid null dereference after "Unknown packet X from server" #8071 (Azat Khuzhin)
- โช Restore support of all ICU locales, add the ability to apply collations for constant expressions and add language name to system.collations table. #8051 (alesapin)
- Number of streams for read from
StorageFile
andStorageHDFS
is now limited, to avoid exceeding the memory limit. #7981 (alesapin) - ๐ Fixed
CHECK TABLE
query for*MergeTree
tables without key. #7979 (alesapin) - โ Removed the mutation number from a part name in case there were no mutations. This removing improved the compatibility with older versions. #8250 (alesapin)
- ๐ Fixed the bug that mutations are skipped for some attached parts due to their data_version are larger than the table mutation version. #7812 (Zhichang Yu)
- ๐ Allow starting the server with redundant copies of parts after moving them to another device. #7810 (Vladimir Chebotarev)
- ๐ Fixed the error "Sizes of columns doesn't match" that might appear when using aggregate function columns. #7790 (Boris Granveaud)
- ๐ป Now an exception will be thrown in case of using WITH TIES alongside LIMIT BY. And now it's possible to use TOP with LIMIT BY. #7637 (Nikita Mikhaylov)
- ๐ Fix dictionary reload if it has
invalidate_query
, which stopped updates and some exception on previous update tries. #8029 (alesapin)
-
v19.17.5.18
December 06, 2019 -
v19.17.4.11 Changes
November 22, 2019Backward Incompatible Change
- Using column instead of AST to store scalar subquery results for better performance. Setting
enable_scalar_subquery_optimization
was added in 19.17 and it was enabled by default. It leads to errors like this during upgrade to 19.17.2 or 19.17.3 from previous versions. This setting was disabled by default in 19.17.4, to make possible upgrading from 19.16 and older versions without errors. #7392 (Amos Bird)
๐ New Feature
- โ Add the ability to create dictionaries with DDL queries. #7360 (alesapin)
- ๐ Authentication in S3 table function and storage. Now we have complete support for S3 import/export. #7623 (Vladimir Chebotarev)
- ๐ Make
bloom_filter
type of index supportingLowCardinality
andNullable
#7363 #7561 (Nikolai Kochetov) - โ Add function
isValidJSON
to check that passed string is a valid json. #5910 #7293 (Vdimir) - Implement
arrayCompact
function #7328 (Memo) - Created function
hex
for Decimal numbers. It works likehex(reinterpretAsString())
, but doesn't delete last zero bytes. #7355 (Mikhail Korotov) - โ Add
arrayFill
andarrayReverseFill
functions, which replace elements by other elements in front/back of them in the array. #7380 (hcz) - Up precision of
avg
aggregate function result to max ofDecimal
type #7446 (Andrey Konyaev) - โ Add
CRC32IEEE()
/CRC64()
support #7480 (Azat Khuzhin) - Implement
char
function similar to one in mysql #7486 (sundyli) - โ Add
bitmapTransform
function. It transforms an array of values in a bitmap to another array of values, the result is a new bitmap #7598 (Zhichang Yu) - Implemented
javaHashUTF16LE()
function #7651 (achimbab) - Add
_shard_num
virtual column for the Distributed engine #7624 (Azat Khuzhin)
Experimental Feature
- ๐ Support for processors (new query execution pipeline) in
MergeTree
. #7181 (Nikolai Kochetov)
๐ Bug Fix
- ๐ Fix incorrect float parsing in
Values
#7817 #7870 (tavplubix) - ๐ Fix rare deadlock which can happen when trace_log is enabled. #7838 (filimonov)
- Prevent message duplication when producing Kafka table has any MVs selecting from it #7265 (Ivan)
- ๐ Support for
Array(LowCardinality(Nullable(String)))
inIN
. Resolves #7364 #7366 (achimbab) - Add handling of
SQL_TINYINT
andSQL_BIGINT
, and fix handling ofSQL_FLOAT
data source types in ODBC Bridge. #7491 (Denis Glazachev) - ๐ Fix aggregation (
avg
and quantiles) over empty decimal columns #7431 (Andrey Konyaev) - ๐ Fix
INSERT
into Distributed withMATERIALIZED
columns #7377 (Azat Khuzhin) - ๐ Make
MOVE PARTITION
work if some parts of partition are already on destination disk or volume #7434 (Vladimir Chebotarev) - ๐ Fixed bug with hardlinks failing to be created during mutations in
ReplicatedMergeTree
in multi-disk configurations. #7558 (Vladimir Chebotarev) - ๐ Fixed a bug with a mutation on a MergeTree when whole part remains unchanged and best space is being found on another disk #7602 (Vladimir Chebotarev)
- ๐ Fixed bug with
keep_free_space_ratio
not being read from disks configuration #7645 (Vladimir Chebotarev) - ๐ Fix bug with table contains only
Tuple
columns or columns with complex paths. Fixes 7541. #7545 (alesapin) - Do not account memory for Buffer engine in max_memory_usage limit #7552 (Azat Khuzhin)
- ๐ Fix final mark usage in
MergeTree
tables ordered bytuple()
. In rare cases it could lead toCan't adjust last granule
error while select. #7639 (Anton Popov) - ๐ Fix bug in mutations that have predicate with actions that require context (for example functions for json), which may lead to crashes or strange exceptions. #7664 (alesapin)
- ๐ Fix mismatch of database and table names escaping in
data/
andshadow/
directories #7575 (Alexander Burmak) - ๐ Support duplicated keys in RIGHT|FULL JOINs, e.g.
ON t.x = u.x AND t.x = u.y
. Fix crash in this case. #7586 (Artem Zuikov) - ๐ Fix
Not found column <expression> in block
when joining on expression with RIGHT or FULL JOIN. #7641 (Artem Zuikov) - One more attempt to fix infinite loop in
PrettySpace
format #7591 (Olga Khvostikova) - ๐ Fix bug in
concat
function when all arguments wereFixedString
of the same size. #7635 (alesapin) - ๐ Fixed exception in case of using 1 argument while defining S3, URL and HDFS storages. #7618 (Vladimir Chebotarev)
- ๐ Fix scope of the InterpreterSelectQuery for views with query #7601 (Azat Khuzhin)
๐ Improvement
Nullable
columns recognized and NULL-values handled correctly by ODBC-bridge #7402 (Vasily Nemkov)- Write current batch for distributed send atomically #7600 (Azat Khuzhin)
- ๐ป Throw an exception if we cannot detect table for column name in query. #7358 (Artem Zuikov)
- Add
merge_max_block_size
setting toMergeTreeSettings
#7412 (Artem Zuikov) - Queries with
HAVING
and withoutGROUP BY
assume group by constant. So,SELECT 1 HAVING 1
now returns a result. #7496 (Amos Bird) - ๐ Support parsing
(X,)
as tuple similar to python. #7501, #7562 (Amos Bird) - ๐ Make
range
function behaviors almost like pythonic one. #7518 (sundyli) - โ Add
constraints
columns to tablesystem.settings
#7553 (Vitaly Baranov) - ๐ Better Null format for tcp handler, so that it's possible to use
select ignore(<expression>) from table format Null
for perf measure via clickhouse-client #7606 (Amos Bird) - ๐ Queries like
CREATE TABLE ... AS (SELECT (1, 2))
are parsed correctly #7542 (hcz)
๐ Performance Improvement
- ๐ The performance of aggregation over short string keys is improved. #6243 (Alexander Kuzmenkov, Amos Bird)
- โ Run another pass of syntax/expression analysis to get potential optimizations after constant predicates are folded. #7497 (Amos Bird)
- ๐ Use storage meta info to evaluate trivial
SELECT count() FROM table;
#7510 (Amos Bird, alexey-milovidov) - Vectorize processing
arrayReduce
similar to AggregatoraddBatch
. #7608 (Amos Bird) - ๐ Minor improvements in performance of
Kafka
consumption #7475 (Ivan)
๐ Build/Testing/Packaging Improvement
- โ Add support for cross-compiling to the CPU architecture AARCH64. Refactor packager script. #7370 #7539 (Ivan)
- ๐ง Unpack darwin-x86_64 and linux-aarch64 toolchains into mounted Docker volume when building packages #7534 (Ivan)
- โก๏ธ Update Docker Image for Binary Packager #7474 (Ivan)
- ๐ Fixed compile errors on MacOS Catalina #7585 (Ernest Poletaev)
- ๐จ Some refactoring in query analysis logic: split complex class into several simple ones. #7454 (Artem Zuikov)
- ๐ Fix build without submodules #7295 (proller)
- ๐ Better
add_globs
in CMake files #7418 (Amos Bird) - โ Remove hardcoded paths in
unwind
target #7460 (Konstantin Podshumok) - ๐ Allow to use mysql format without ssl #7524 (proller)
Other
- โ Added ANTLR4 grammar for ClickHouse SQL dialect #7595 #7596 (alexey-milovidov)
- Using column instead of AST to store scalar subquery results for better performance. Setting