v.19.15
Backward Incompatible Change
1Bug Fix
26- Fixed Performance Degradation of Index Analysis on Complex Keys on Large Tables
- Fix Logical Error Causing Segfaults When Selecting from Kafka Empty Topic
- Fix Too Early Mysql Connection Close in Mysqlblockinputstream.cpp
- Returned Support for Very Old Linux Kernels #6853 (alexey-milovidov)
- Fix Possible Data Loss in Insert Select Query in Case of Empty Block in Input Stream
- Fix for Function Аrrayenumerateuniqranked with Empty Arrays in Params #6928 (proller)
- Fix Complex Queries with Array Joins and Global Subqueries
- Fix Unknown Identifier Error in ORDER BY and GROUP BY with Multiple Joins #7022 (artem Zuikov)
- Fixed Msan Warning While Executing Function with Lowcardinality Argument
- Fixed Bad_variant in Hashed Dictionary
- Fixed Up Bug with Segmentation Fault in ATTACH PART Query
- Fixed Time Calculation in Mergetreedata
- Commit to Kafka Explicitly After the Writing Is Finalized
- Serialize NULL Values Correctly in Min/max Indexes of Mergetree Parts
- Added Handling of Sql_tinyint and Sql_bigint, and Fix Handling of Sql_float Data Source Types in ODBC Bridge
- Allowed to Have Some Parts on Destination Disk or Volume in MOVE PARTITION
- Fixed Null-values in Nullable Columns Through Odbc-bridge
- Fixed INSERT into Distributed Non Local Node with MATERIALIZED Columns
- Fixed Function Getmultiplevaluesfromconfig
- Fixed Issue of Using HTTP Keep Alive Timeout Instead of TCP Keep Alive Timeout
- Wait for All Jobs to Finish on Exception (fixes Rare Segfaults)
- Don't Push to Mvs When Inserting into Kafka Table
- Disable Memory Tracker for Exception Stack
- Fixed Bad Code in Transforming Query for External Database
- Avoid Use of Uninitialized Values in Metricstransmitter
- Added Example Config with Macros for Tests (alexey-milovidov)
Build/Testing/Packaging Improvement
6- Add Gdb-index to Clickhouse Binary with Debug Info
- Speed Up Deb Packaging with Patched Dpkg-deb Which Uses Pigz
- Set Enable_fuzzing = 1 to Enable Libfuzzer Instrumentation of All the Project Code
- Add Split Build Smoke Test in CI
- Add Build with Memorysanitizer to CI
- Replace Libsparsehash with Sparsehash-c11 #6965 (azat Khuzhin)
Experimental Feature
2Improvement
9- Every Message Read from Kafka Is Inserted Atomically
- Improvements for Failover of Distributed Queries
- Support Numeric Values for Enums Directly in IN Section
- Support (optional, Disabled by Default) Redirects on URL Storage
- Add Information Message When Client with an Older Version Connects to a Server
- Remove Maximum Backoff Sleep Time Limit for Sending Data in Distributed Tables #6895 (azat Khuzhin)
- Add Ability to Send Profile Events (counters) with Cumulative Values to Graphite
- Add Automatically Cast Type T to Lowcardinality(t) While Inserting Data in Column of Type Lowcardinality(t) in Native Format via HTTP
- Add Ability to Use Function Hex Without Using Reinterpretasstring for Float32, Float64
New Feature
8- Tiered Storage: Support to Use Multiple Storage Volumes for Tables with Mergetree Engine
- Add Table Function Input for Reading Incoming Data in INSERT SELECT Query
- Add a Sparse_hashed Dictionary Layout, That Is Functionally Equivalent to the Hashed Layout, But Is More Memory Efficient
- Implement Ability to Define List of Users for Access to Dictionaries
- Add LIMIT Option to SHOW Query
- Add Bitmapsubsetlimit(bitmap, Range_start, Limit) Function, That Returns Subset of the Smallest Limit Values in Set That Is No Smaller Than Range_start
- Add Bitmapmin and Bitmapmax Functions
- Add Function Repeat Related to Issue-6648 #6999 (flynn)