mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-27 18:12:02 +00:00
68 KiB
68 KiB
sidebar_position | sidebar_label |
---|---|
1 | 2023 |
2023 Changelog
ClickHouse release v23.4.1.1943-stable (3920eb987f
) FIXME as compared to v23.3.1.2823-lts (46e85357ce
)
Backward Incompatible Change
- If
path
in cache configuration is not empty and is not absolute path, then it will be put in<clickhouse server data directory>/caches/<path_from_cache_config>
. #48784 (Kseniia Sumarokova). - Compatibility setting
parallelize_output_from_storages
to enable behavior before #48727. #49101 (Igor Nikonov).
New Feature
- Add
extractKeyValuePairs
function to extract key value pairs from strings. Input strings might contain noise (i.e log files / do not need to be 100% formatted in key-value-pair format), the algorithm will look for key value pairs matching the arguments passed to the function. As of now, function accepts the following arguments:data_column
(mandatory),key_value_pair_delimiter
(defaults to:
),pair_delimiters
(defaults to\space \, \;
) andquoting_character
(defaults to double quotes). #43606 (Arthur Passos). - Add MemoryTracker for the background tasks (merges and mutation). Introduces
merges_mutations_memory_usage_soft_limit
andmerges_mutations_memory_usage_to_ram_ratio
settings that represent the soft memory limit for merges and mutations. If this limit is reached ClickHouse won't schedule new merge or mutation tasks. AlsoMergesMutationsMemoryTracking
metric is introduced to allow observing current memory usage of background tasks. Closes #45710. #46089 (Dmitry Novik). - Support new aggregate function quantileGK/quantilesGK, like approx_percentile in spark. Greenwald-Khanna algorithm refer to http://infolab.stanford.edu/~datar/courses/cs361a/papers/quantiles.pdf. #46428 (李扬).
- Add statement
SHOW COLUMNS
which shows distilled information from system.columns. #48017 (Robert Schulze). - Added
LIGHTWEIGHT
andPULL
modifiers forSYSTEM SYNC REPLICA
query.LIGHTWEIGHT
version waits for fetches and drop-ranges only (merges and mutations are ignored).PULL
version pulls new entries from ZooKeeper and does not wait for them. Fixes #47794. #48085 (Alexander Tokmakov). - Add kafkaMurmurHash function for compatibility with Kafka DefaultPartitioner. Closes #47834. #48185 (Nikolay Degterinsky).
- Allow to easily create a user with the same grants as the current user by using
GRANT CURRENT GRANTS
. #48262 (pufit). - Add statistical aggregate function
kolmogorovSmirnovTest
. close #48228. #48325 (FFFFFFFHHHHHHH). - Added a
lost_part_count
column to thesystem.replicas
table. The column value shows the total number of lost parts in the corresponding table. Value is stored in zookeeper and can be used instead of not persistentReplicatedDataLoss
profile event for monitoring. #48526 (Sergei Trifonov). - Add soundex function. Closes #39880. #48567 (FriendLey).
- Support map type for JSONExtract. #48629 (李扬).
- Add PrettyJSONEachRow format to output pretty JSON with new line delimieters and 4 space indents. #48898 (Kruglov Pavel).
- Add ParquetMetadata input format to read Parquet file metadata. #48911 (Kruglov Pavel).
Performance Improvement
- Reading files in Parquet format is now much faster. IO and decoding are parallelized (controlled by
max_threads
setting), and only required data ranges are read. #47964 (Michael Kolupaev). - Only check dependencies if necessary when applying
ALTER TABLE
queries. #48062 (Raúl Marín). - Optimize function
mapUpdate
. #48118 (Anton Popov). - Now an internal query to local replica is sent explicitly and data from it received through loopback interface. Setting
prefer_localhost_replica
is not respected for parallel replicas. This is needed for better scheduling and makes the code cleaner: the initiator is only responsible for coordinating of the reading process and merging results, continiously answering for requests while all the secondary queries read the data. Note: Using loopback interface is not so performant, otherwise some replicas could starve for tasks which could lead to even slower query execution and not utilizing all possible resources. The initialization of the coordinator is now even more lazy. All incoming requests contain the information about the reading algorithm we initialize the coordinator with it when first request comes. If any replica will decide to read with different algorithm - an exception will be thrown and a query will be aborted. #48246 (Nikita Mikhaylov). - Do not build set for the right side of
IN
clause with subquery when it is used only for analysis of skip indexes and they are disabled by setting (use_skip_indexes=0
). Previously it might affect the performance of queries. #48299 (Anton Popov). - Query processing is parallelized right after reading
FROM file(...)
. Related to #38755. #48525 (Igor Nikonov). - Query processing is parallelized right after reading from a data source. Affected data sources are mostly simple or external storages like table functions
url
,file
. #48727 (Igor Nikonov). - Using correct memory order for counter in
numebers_mt()
. #48729 (Igor Nikonov). - Lowered contention of ThreadPool mutex (may increase performance for a huge amount of small jobs). #48750 (Sergei Trifonov).
- Simplify accounting of approximate size of granule in prefetched read pool. #49051 (Nikita Taranov).
Improvement
- Support config sections
keeper
/keeper_server
as an alternative tozookeeper
. Close #34766 , #34767. #35113 (李扬). - Many issues in ClickHouse applications's help were fixed. Help is now written to stdout from all tools. Status code for
clickhouse help
invocation is now 0. Updated help forclickhouse-local
,clickhouse-benchmark
,clickhouse-client
,clickhouse hash
,clickhouse su
,clickhouse-install
. #45819 (Ilya Yatsishin). - Entries in the query cache are now squashed to max_block_size and compressed. #45912 (Robert Schulze).
- It is possible to set secure flag in named_collections for a dictionary with a ClickHouse table source. Addresses #38450 . #46323 (Ilya Golshtein).
- Functions replaceOne(), replaceAll(), replaceRegexpOne() and replaceRegexpAll() can now be called with non-const pattern and replacement arguments. #46589 (Robert Schulze).
- Bump internal ZSTD from 1.5.4 to 1.5.5. #46797 (Robert Schulze).
- If we run a mutation with IN (subquery) like this:
ALTER TABLE t UPDATE col='new value' WHERE id IN (SELECT id FROM huge_table)
and the tablet
has multiple parts than for each part a set for subquerySELECT id FROM huge_table
is built in memory. And if there are many parts then this might consume a lot of memory (and lead to an OOM) and CPU. The solution is to introduce a short-lived cache of sets that are currently being built by mutation tasks. If another task of the same mutation is executed concurrently it can lookup the set in the cache, wait for it be be built and reuse it. #46835 (Alexander Gololobov). - Added configurable retries for all operations with [Zoo]Keeper for Backup queries. #47224 (Nikita Mikhaylov).
- Add async connection to socket and async writing to socket. Make creating connections and sending query/external tables async across shards. Refactor code with fibers. Closes #46931. We will be able to increase
connect_timeout_with_failover_ms
by default after this PR (https://github.com/ClickHouse/ClickHouse/issues/5188). #47229 (Kruglov Pavel). - Formatter '%M' in function formatDateTime() now prints the month name instead of the minutes. This makes the behavior consistent with MySQL. The previous behavior can be restored using setting "formatdatetime_parsedatetime_m_is_month_name = 0". #47246 (Robert Schulze).
- Several improvements around data lakes: - Make StorageIceberg work with non-partitioned data. - Support Iceberg format version V2 (previously only V1 was supported) - Support reading partitioned data for DeltaLake/Hudi - Faster reading of DeltaLake metadata by using Delta's checkpoint files - Fixed incorrect Hudi reads: previously it incorrectly chose which data to read and therefore was able to read correctly only small size tables - Made these engines to pickup updates of changed data (previously the state was set on table creation) - Make proper testing for Iceberg/DeltaLake/Hudi using spark. #47307 (Kseniia Sumarokova).
- Enable
use_environment_credentials
for S3 by default, so the entire provider chain is constructed by default. #47397 (Antonio Andelic). - Currently, the JSON_VALUE function is similar as spark's get_json_object function, which support to get value from json string by a path like '$.key'. But still has something different - 1. in spark's get_json_object will return null while the path is not exist, but in JSON_VALUE will return empty string; - 2. in spark's get_json_object will return a complext type value, such as a json object/array value, but in JSON_VALUE will return empty string. #47494 (KevinyhZou).
- Add CNF/constraint optimizer in new analyzer. #47617 (Antonio Andelic).
- For use_structure_from_insertion_table_in_table_functions more flexible insert table structure propagation to table function. Fixed bug with name mapping and using virtual columns. No more need for 'auto' setting. #47962 (Yakov Olkhovskiy).
- Do not continue retrying to connect to ZK if the query is killed or over limits. #47985 (Raúl Marín).
- Added functions to work with columns of type
Map
:mapConcat
,mapSort
,mapExists
. #48071 (Anton Popov). - Support Enum output/input in BSONEachRow, allow all map key types and avoid extra calculations on output. #48122 (Kruglov Pavel).
- Support more ClickHouse types in ORC/Arrow/Parquet formats: Enum(8|16), (U)Int(128|256), Decimal256 (for ORC), allow reading IPv4 from Int32 values (ORC outputs IPv4 as Int32 and we couldn't read it back), fix reading Nullable(IPv6) from binary data for ORC. #48126 (Kruglov Pavel).
- Add columns
perform_ttl_move_on_insert
,load_balancing
for tablesystem.storage_policies
, modify columnvolume_type
type toenum8
. #48167 (lizhuoyu5). - Added support for
BACKUP ALL
command which backups all tables and databases, including temporary and system ones. #48189 (Vitaly Baranov). - Function mapFromArrays support map type as input. #48207 (李扬).
- The output of some SHOW PROCESSLIST is now sorted. #48241 (Robert Schulze).
- Per-query/per-server throttling for remote IO/local IO/BACKUPs (server settings:
max_remote_read_network_bandwidth_for_server
,max_remote_write_network_bandwidth_for_server
,max_local_read_bandwidth_for_server
,max_local_write_bandwidth_for_server
,max_backup_bandwidth_for_server
, settings:max_remote_read_network_bandwidth
,max_remote_write_network_bandwidth
,max_local_read_bandwidth
,max_local_write_bandwidth
,max_backup_bandwidth
). #48242 (Azat Khuzhin). - Support more types in CapnProto format: Map, (U)Int(128|256), Decimal(128|256). Allow integer conversions during input/output. #48257 (Kruglov Pavel).
- It is now possible to define per-user quotas in the query cache. #48284 (Robert Schulze).
- Don't throw CURRENT_WRITE_BUFFER_IS_EXHAUSTED for normal behaviour. #48288 (Raúl Marín).
- Add new setting
keeper_map_strict_mode
which enforces extra guarantees on operations made on top ofKeeperMap
tables. #48293 (Antonio Andelic). - Check primary key type for simple dictionary is native unsigned integer type Add setting
check_dictionary_primary_key
for compatibility(setcheck_dictionary_primary_key =false
to disable checking). #48335 (lizhuoyu5). - Don't replicate mutations for
KeeperMap
because it's unnecessary. #48354 (Antonio Andelic). - Allow write/read unnamed tuple as nested Message in Protobuf format. Tuple elements and Message fields are mathced by position. #48390 (Kruglov Pavel).
- Support
additional_table_filters
andadditional_result_filter
settings in the new planner. Also, add a documentation entry foradditional_result_filter
. #48405 (Dmitry Novik). - Parsedatetime now understands format string '%f' (fractional seconds). #48420 (Robert Schulze).
- Format string "%f" in formatDateTime() now prints "000000" if the formatted value has no fractional seconds, the previous behavior (single zero) can be restored using setting "formatdatetime_f_prints_single_zero = 1". #48422 (Robert Schulze).
- Don't replicate DELETE and TRUNCATE for KeeperMap. #48434 (Antonio Andelic).
- Generate valid Decimals and Bools in generateRandom function. #48436 (Kruglov Pavel).
- Allow trailing commas in expression list of SELECT query, for example
SELECT a, b, c, FROM table
. Closes #37802. #48438 (Nikolay Degterinsky). - Override
CLICKHOUSE_USER
andCLICKHOUSE_PASSWORD
environment variables with--user
and--password
client parameters. Closes #38909. #48440 (Nikolay Degterinsky). - Added retries to loading of data parts in
MergeTree
tables in case of retryable errors. #48442 (Anton Popov). - Add support for
Date
,Date32
,DateTime
,DateTime64
data types toarrayMin
,arrayMax
,arrayDifference
functions. Closes #21645. #48445 (Nikolay Degterinsky). - Reduce memory usage for multiple
ALTER DELETE
mutations. #48522 (Nikolai Kochetov). - Primary/secondary indices and sorting keys with identical expressions are now rejected. This behavior can be disabled using setting
allow_suspicious_indices
. #48536 (凌涛). - Just fix small typo in comment around
lockForAlter
method inIStorage.h
. #48559 (artem-pershin). - Add support for
{server_uuid}
macro. It is useful for identifying replicas in autoscaled clusters when new replicas are constantly added and removed in runtime. This closes #48554. #48563 (Alexey Milovidov). - The installation script will create a hard link instead of copying if it is possible. #48578 (Alexey Milovidov).
- Support
SHOW TABLE
syntax meaning the same asSHOW CREATE TABLE
. Closes #48580. #48591 (flynn). - HTTP temporary buffer support working with fs cache. #48664 (Vladimir C).
- Make Schema inference works for
CREATE AS SELECT
. Closes #47599. #48679 (flynn). - Added a
replicated_max_mutations_in_one_entry
setting forReplicatedMergeTree
that allows limiting the number of mutation commands per oneMUTATE_PART
entry (default is 10000). #48731 (Alexander Tokmakov). - In AggregateFunction types, don't count unused arena bytes as
read_bytes
. #48745 (Raúl Marín). - Fix some mysql related settings not being handled with mysql dictionary source + named collection. Closes #48402. #48759 (Kseniia Sumarokova).
- Fix squashing in query cache. #48763 (Robert Schulze).
- Support following new jsonpath format - '$.1key', path element begins with number - '$[key]', '$[“key”]', '$[\'key\']', '$["key 123"]', path element embraced in []. #48768 (lgbo).
- If a user set
max_single_part_upload_size
to a very large value, it can lead to a crash due to a bug in the AWS S3 SDK. This fixes #47679. #48816 (Alexey Milovidov). - Not for changelog. #48824 (Yakov Olkhovskiy).
- Fix data race in
StorageRabbitMQ
(report), refactor the code. #48845 (Kseniia Sumarokova). - Add aliases
name
andpart_name
formsystem.parts
andsystem.part_log
. Closes #48718. #48850 (sichenzhao). - Functions "arrayDifferenceSupport()", "arrayCumSum()" and "arrayCumSumNonNegative()" now support input arrays of wide integer types (U)Int128/256. #48866 (cluster).
- Multi-line history in clickhouse-client is now no longer padded. This makes pasting more natural. #48870 (Joanna Hulboj).
- Not for changelog. #48873 (Yakov Olkhovskiy).
- Implement a slight improvement for the rare case when ClickHouse is run inside LXC and LXCFS is used. The LXCFS has an issue: sometimes it returns an error "Transport endpoint is not connected" on reading from the file inside
/proc
. This error was correctly logged into ClickHouse's server log. We have additionally workaround this issue by reopening a file. This is a minuscule change. #48922 (Real). - Improve memory accounting for prefetches. Randomise prefetch settings In CI. #48973 (Kseniia Sumarokova).
- Correctly set headers for native copy operations on GCS. #48981 (Antonio Andelic).
- Add support for specifying setting names in the command line with dashes instead of underscores, for example,
--max-threads
instead of--max_threads
. Additionally, support Unicode dash characters like—
instead of--
- this is useful when you communicate with a team in another company, and a manager from that team copy-pasted code from MS Word. #48985 (alekseygolub). - Add fallback to password authentication when authentication with SSL user certificate has failed. Closes #48974. #48989 (Nikolay Degterinsky).
- Increase default value for
connect_timeout_with_failover_ms
to 1000 ms (because of adding async connections in https://github.com/ClickHouse/ClickHouse/pull/47229) . Closes #5188. #49009 (Kruglov Pavel). - Improve the embedded dashboard. Close #46671. #49036 (Kevin Zhang).
- Add profile events for log messages, so you can easily see the count of log messages by severity. #49042 (Alexey Milovidov).
bitCount
function supportFixedString
andString
data type. #49044 (flynn).- In previous versions, the
LineAsString
format worked inconsistently when the parallel parsing was enabled or not, in presence of DOS or MacOS Classic line breaks. This closes #49039. #49052 (Alexey Milovidov). - The exception message about the unparsed query parameter will also tell about the name of the parameter. Reimplement #48878. Close #48772. #49061 (Alexey Milovidov).
- Added field
rows
with number of rows parsed from asynchronous insert tosystem.asynchronous_insert_log
. #49120 (Anton Popov).
Build/Testing/Packaging Improvement
- Reduce the number of dependencies in the header files to speed up the build. #47984 (Dmitry Novik).
- Randomize compression of marks and indices in tests. #48286 (Alexey Milovidov).
- Randomize vertical merges from compact to wide parts in tests. #48287 (Raúl Marín).
- With the current approach, all ports are calculated at the beginning and could overlap or even be highjacked, see the report for
port is already allocated
. It's possibly the reason for #45368. #48393 (Mikhail f. Shiryaev). - Update time zones. The following were updated: Africa/Cairo, Africa/Casablanca, Africa/El_Aaiun, America/Bogota, America/Cambridge_Bay, America/Ciudad_Juarez, America/Godthab, America/Inuvik, America/Iqaluit, America/Nuuk, America/Ojinaga, America/Pangnirtung, America/Rankin_Inlet, America/Resolute, America/Whitehorse, America/Yellowknife, Asia/Gaza, Asia/Hebron, Asia/Kuala_Lumpur, Asia/Singapore, Canada/Yukon, Egypt, Europe/Kirov, Europe/Volgograd, Singapore. #48572 (Alexey Milovidov).
- Support for CRC32 checksum in HDFS. Fix performance issues. #48614 (Alexey Milovidov).
- Remove remainders of GCC support. #48671 (Robert Schulze).
- Add CI run with new analyzer infrastructure enabled. #48719 (Dmitry Novik).
- Not for changelog. #48879 (larryluogit).
- After the recent update, the
dockerd
requires--tlsverify=false
together with the http port explicitly. #48924 (Mikhail f. Shiryaev). - Run more functional tests concurrently. #48970 (alesapin).
- Fix glibc compatibility check: replace
preadv
from musl. #49144 (alesapin). - Use position independent encoding/code for sanitizers (at least msan :D) build to avoid issues with maximum relocation size. #49145 (alesapin).
Bug Fix (user-visible misbehavior in an official stable release)
- Fix system.query_views_log for MVs that are pushed from background threads #46668 (Azat Khuzhin).
- Fix several
RENAME COLUMN
bugs #46946 (alesapin). - Fix minor hiliting issues in clickhouse-format #47610 (Natasha Murashkina).
- Fix crash for uploading parts which size is greater then INT_MAX to S3 #47693 (Azat Khuzhin).
- Fix overflow in sparkbar function #48121 (Vladimir C).
- Fix race in StorageS3 #48190 (Anton Popov).
- Remove a feature #48195 (Alexey Milovidov).
- Fix alter formatting (minor) #48289 (Natasha Murashkina).
- Fix cpu usage in rabbitmq (was worsened in 23.2 after #44404) #48311 (Kseniia Sumarokova).
- Fix ThreadPool for DistributedSink and use StrongTypedef for CurrentMetrics/ProfileEvents/StatusInfo to avoid further errors #48314 (Azat Khuzhin).
- Fix crash in EXPLAIN PIPELINE for Merge over Distributed #48320 (Azat Khuzhin).
- Check node for Backup Restore concurrency #48342 (SmitaRKulkarni).
- close client #48347 (Yakov Olkhovskiy).
- Fix serializing LowCardinality as Arrow dictionary #48361 (Kruglov Pavel).
- Reset downloader for cache file segment in TemporaryFileStream #48386 (Vladimir C).
- Fix possible SYSTEM SYNC REPLICA stuck in case of DROP/REPLACE PARTITION #48391 (Azat Khuzhin).
- ClickHouse startup error when loading a distributed table that depends on a dictionary #48419 (MikhailBurdukov).
- Don't check dependencies when renaming system tables automatically #48431 (Raúl Marín).
- Some fixes for parallel replicas #48433 (Nikita Mikhaylov).
- Update only affected rows in KV storage #48435 (Antonio Andelic).
- Fix possible segfault in cache #48469 (Kseniia Sumarokova).
- toTimeZone function throw an error when no constant string is provided #48471 (Jordi Villar).
- Fix logical error with IPv4 in Protobuf, add support for Date32 #48486 (Kruglov Pavel).
- "changed" flag in system.settings is calculated incorrectly for settings with multiple values #48516 (MikhailBurdukov).
- Fix storage
Memory
with enabled compression #48517 (Anton Popov). - Fix bracketed-paste mode messing up password input in client reconnect #48528 (Michael Kolupaev).
- Avoid sending
nullptr
tomemcpy
incopyStringInArena
#48532 (Antonio Andelic). - Fix nested map for keys of IP and UUID types #48556 (Yakov Olkhovskiy).
- Fix uncaught exception in case of parallel loader for hashed dictionaries #48571 (Azat Khuzhin).
groupArray
returns cannot be nullable #48593 (lgbo).- Fix bug in Keeper when a node is not created with scheme
auth
in ACL sometimes. #48595 (Aleksei Filatov). - Fix IPv4 comparable with UInt #48611 (Yakov Olkhovskiy).
- Fix possible error from cache #48636 (Kseniia Sumarokova).
- Fix async inserts with empty data #48663 (Anton Popov).
- Fix table dependencies in case of failed RENAME TABLE #48683 (Azat Khuzhin).
- Fix zero-copy-replication on encrypted disks. #48741 (Vitaly Baranov).
- Fix skip_unavailable_shards in case of unavailable hosts #48771 (Azat Khuzhin).
- Fix key condition on duplicate primary keys #48838 (Amos Bird).
- Fix for race in ZooKeeper when joining send_thread/receive_thread #48849 (Alexander Gololobov).
- Fix unexpected part name error when trying to drop a ignored detached part with zero copy replication #48862 (Michael Lex).
- Fix reading Date32 Parquet/Arrow column into not Date32 column #48864 (Kruglov Pavel).
- Fix UNKNOWN_IDENTIFIER error while select from table with row policy and column with dots #48976 (Kruglov Pavel).
- Fix aggregate empty string error #48999 (LiuNeng).
- Fix postgres database setting #49100 (Kseniia Sumarokova).
- Fix flaky test_cache_with_full_disk_space #49110 (Kseniia Sumarokova).
- Fix "prepared statement insert already exists" #49154 (Alexander Tokmakov).
- Fix replace[Regexp]{One,All}() with const haystacks #49220 (Robert Schulze).
Build Improvement
NO CL ENTRY
- NO CL ENTRY: 'Revert "Randomize JIT settings in tests"'. #48277 (Alexander Tokmakov).
- NO CL ENTRY: 'Fix test "02494_query_cache_drop.sql"'. #48358 (Anton Popov).
- NO CL ENTRY: 'Revert "Check simple dictionary key is native unsigned integer"'. #48732 (Alexander Tokmakov).
- NO CL ENTRY: 'Revert "Make Schema inference works for CREATE AS SELECT"'. #48758 (pufit).
- NO CL ENTRY: 'Revert "Add MemoryTracker for the background tasks"'. #48760 (Alexander Tokmakov).
- NO CL ENTRY: 'Revert "Added tests for ClickHouse apps help and fixed help issues"'. #48991 (Alexey Milovidov).
- NO CL ENTRY: 'Revert "Adapt marks count for prefetch read pool"'. #49068 (Nikita Taranov).
NOT FOR CHANGELOG / INSIGNIFICANT
- merge and mutation make thread group for setting memory trackers right #47104 (Sema Checherinda).
- Query plan: update sort description #47319 (Igor Nikonov).
- Sqllogic #47784 (Sema Checherinda).
- Fix race between DROP MatView and RESTART REPLICAS #47863 (Alexander Tokmakov).
- Merge #35113 #47934 (Antonio Andelic).
- Add a test for ClientInfo initial_query_start_time in inter-server mode #48036 (Azat Khuzhin).
- Make custom key for parallel replicas work in new analyzer #48054 (Antonio Andelic).
- throw exception while non-parametric functions having parameters #48115 (save-my-heart).
- Move FunctionsJSON implementation to header file #48142 (DimasKovas).
- Use ThreadPool in PipelineExecutor #48146 (Azat Khuzhin).
- Add sanity checks for writing number in variable length format (resubmit) #48154 (Azat Khuzhin).
- Try fix 02151_hash_table_sizes_stats.sh test #48178 (Nikita Taranov).
- Add scripts for sparse checkout of some contribs #48183 (Alexander Tokmakov).
- Do not take lock for shared context in setTempDataOnDisk #48219 (Vladimir C).
- parseDateTimeInJodaSyntax: Require format argument #48222 (Robert Schulze).
- Do not partially cancel processors added from expand pipeline. #48231 (Nikolai Kochetov).
- Fix some tests #48267 (Alexander Tokmakov).
- Fix compiling examples without Hive #48269 (Azat Khuzhin).
- In messages, put values into quotes #48271 (Vadim Chekan).
- Fix 01710_projection_optimize_materialize flakiness #48276 (Azat Khuzhin).
- Fix UB (signed integer overflow) in StorageMergeTree::backupData() #48278 (Azat Khuzhin).
- Update version after release #48279 (Alexey Milovidov).
- Update version_date.tsv and changelogs after v23.3.1.2823-lts #48281 (robot-clickhouse).
- Small follow-up to #48017 #48292 (Robert Schulze).
- Try to update arrow library to release 11.0.0 #48294 (Kruglov Pavel).
- fix test numbers again 2 #48295 (Alexander Tokmakov).
- Fix: copy forgotten show_secrets in FormatSettings semi-copy-ctor #48297 (Natasha Murashkina).
- Do not remove inputs from maybe compiled DAG. #48303 (Nikolai Kochetov).
- Update version_date.tsv and changelogs after v22.3.20.29-lts #48304 (robot-clickhouse).
- Update version_date.tsv and changelogs after v22.12.6.22-stable, v22.3.20.29-lts #48305 (robot-clickhouse).
- Merging #46323 #48312 (Kseniia Sumarokova).
- Follow-up to #47863 #48315 (Alexander Tokmakov).
- test / some complex query (it fails with analyzer enabled) #48324 (Denny Crane).
- Fix constraints after merge #48328 (Alexey Milovidov).
- Add logging for concurrency checks for backups #48337 (Vitaly Baranov).
- Update version_date.tsv and changelogs after v23.1.6.42-stable #48345 (robot-clickhouse).
- Update version_date.tsv and changelogs after v23.2.5.46-stable #48346 (robot-clickhouse).
- Fix lambda type resolution #48355 (Dmitry Novik).
- Avoid abort in protobuf library in debug build #48356 (Kruglov Pavel).
- Batch fix for projections analysis with analyzer. #48357 (Nikolai Kochetov).
- Fix tests with explain and analyzer where names changed. #48360 (Nikolai Kochetov).
- Small follow-up to #45912 #48373 (Robert Schulze).
- Update version_date.tsv and changelogs after v22.8.16.32-lts #48376 (robot-clickhouse).
- Add script for a slack bot that reports broken tests #48382 (Alexander Tokmakov).
- Fix flaky
test_keeper_mntr_data_size
#48384 (Antonio Andelic). - WITH FILL clarification and cleanup #48395 (Igor Nikonov).
- Cleanup mess in .clang-tidy #48396 (Robert Schulze).
- Fix test_backup_all #48400 (Vitaly Baranov).
- Find big allocations without memory limits checks #48401 (Alexander Tokmakov).
- Fix issue with krb5 and building w/ OpenSSL #48407 (Boris Kuschel).
- Make CI slack bot less noisy #48409 (Alexander Tokmakov).
- AST fuzzer: Fix assertion in TopK serialization #48412 (Robert Schulze).
- Fix possible flakiness of lightweight delete tests (due to index granularity randomization) #48413 (Azat Khuzhin).
- Fix flaky
test_keeper_snapshots
#48417 (Antonio Andelic). - Update sort desc: more efficient original node search in ActionsDAG #48427 (Igor Nikonov).
- test for #16399 #48439 (Denny Crane).
- Better exception messages from Keeper client #48444 (Alexey Milovidov).
- Small documentation follow-up to #47246 #48463 (Robert Schulze).
- Update 00002_log_and_exception_messages_formatting.sql #48467 (Alexander Tokmakov).
- Avoid operation on uninitialised data in readDateTimeTextImpl #48472 (Kruglov Pavel).
- Add reading step for system zookeeper. Analyze path from filter DAG. #48485 (Nikolai Kochetov).
- Fix deadlock due to debug tracking of memory allocations #48487 (Azat Khuzhin).
- Register datediff and trim aliases in system.functions #48489 (Robert Schulze).
- Change error code #48490 (Anton Popov).
- Update 00002_log_and_exception_messages_formatting.sql #48499 (Alexander Tokmakov).
- Fix query cache with sparse columns #48500 (Anton Popov).
- Use std::string_view to get rid of strlen #48509 (ltrk2).
- Fix bytesSize() of zk SetRequest #48512 (Sergei Trifonov).
- Remove dead code and unused dependencies #48518 (ltrk2).
- Use forward declaration of ThreadPool #48519 (Azat Khuzhin).
- Use std::string_view instead of strlen #48520 (ltrk2).
- Use std::string::starts_with instead of a roll your own variant #48521 (ltrk2).
- Fix flaky
test_alternative_keeper_config
#48533 (Antonio Andelic). - Use one ThreadGroup while pushing to materialized views (and some refactoring for ThreadGroup) #48543 (Azat Khuzhin).
- Fix some tests #48550 (Alexander Tokmakov).
- Fix 02477_projection_materialize_and_zero_copy flakiness (due to index granularity randomization) #48551 (Azat Khuzhin).
- Better exception message for ZSTD #48552 (Alexey Milovidov).
- Remove misleading comment and block #48562 (Sergei Trifonov).
- Update 02207_allow_plaintext_and_no_password.sh #48566 (Alexey Milovidov).
- bugfix: compare Bits and sizeof(Arithmetic) * 8 #48569 (caipengxiang).
- Remove superfluous includes of logger_userful.h from headers #48570 (Azat Khuzhin).
- Remove slow test from debug builds #48574 (Alexey Milovidov).
- Don't use type conversion with String query parameters #48577 (Nikolay Degterinsky).
- Fix TSan report in Kerberos #48579 (Alexey Milovidov).
- Add second_deadlock_stack=1 for TSan on CI and fix some lock-order-inversion problems #48596 (Azat Khuzhin).
- Fix LOGICAL_ERROR in executable table function #48605 (Nikolay Degterinsky).
- Fix flakiness of test_store_cleanup in case of image rebuild #48610 (Azat Khuzhin).
- Remove strange code #48612 (Alexey Milovidov).
- Minor refactoring of formatDateTime() #48627 (Robert Schulze).
- Better handling of values too large for VarInt encoding #48628 (Robert Schulze).
- refine some messages of exception in regexp tree #48632 (Han Fei).
- Partially revert
e0252db8d
and fix pr-bugfix labeling #48637 (Mikhail f. Shiryaev). - Fix build src/Interpreters/InterpreterInsertQuery.h #48638 (Vladimir C).
- Fix build ThreadGroupPtr #48641 (Vladimir C).
- Fix flaky test test_drop_replica_and_achieve_quorum #48642 (Kruglov Pavel).
- fix 02504_regexp_dictionary_table_source #48662 (Han Fei).
- Remove strange code from MutateTask #48666 (alesapin).
- SonarCloud: C++ Reporting Standards #48668 (Julio Jimenez).
- Remove lock for duplicated parts UUIDs (allow_experimental_query_deduplication=1) #48670 (Azat Khuzhin).
- show result of minio listings for test test_attach_detach_partition #48674 (Sema Checherinda).
- Fix tests for analyzer #48675 (Igor Nikonov).
- Call IProcessor::onCancel() once #48687 (Igor Nikonov).
- Update MergeTree syntax for optional index granularity argument #48692 (Robert Schulze).
- Add test for old bug #7826 #48697 (Robert Schulze).
- Fix flaky
test_keeper_session
#48699 (Antonio Andelic). - Better messages formatting in the CI Slack bot #48712 (Alexander Tokmakov).
- Add trusted contributors #48715 (Aleksei Filatov).
- Do not remove broken detached parts on startup #48730 (Alexander Tokmakov).
- Remove
-Wshadow
suppression which leaked into global namespace #48737 (Robert Schulze). - VarInt coding: Always perform sanity check #48740 (Robert Schulze).
- Try to fix flaky 02455_one_row_from_csv_memory_usage #48756 (Dmitry Novik).
- insert UInt32 Hashvalue in reverse order on big endian machine #48764 (Suzy Wang).
- Limit size of messages from the CI slack bot #48766 (Alexander Tokmakov).
- Update README.md #48776 (Tyler Hannan).
- Remove duplicate definition of SingleEndpointHTTPSessionPool #48779 (JaySon).
- Fix flaky test_version_update_after_mutation/test.py::test_upgrade_while_mutation #48783 (Kseniia Sumarokova).
- Fix flaky test test_backup_all #48789 (Vitaly Baranov).
- Fix a confusing warning about interserver mode #48793 (Alexander Tokmakov).
- Store clusters from ClusterDiscovery in separate map #48795 (Vladimir C).
- Reimplement #48790 #48797 (Alexey Milovidov).
- Allow running integration tests without spark #48803 (Vitaly Baranov).
- forbid gwpsan in debug mode to rescue stress tests #48804 (Han Fei).
- Simplify FileCacheFactory #48805 (Kseniia Sumarokova).
- Fix double whitespace in exception message #48815 (Alexey Milovidov).
- Add a test for #38128 #48817 (Alexey Milovidov).
- Remove excessive logging #48826 (Alexey Milovidov).
- remove duplicate indentwith in clang-format #48834 (cluster).
- Try fix flacky test_concurrent_alter_move_and_drop #48843 (Sergei Trifonov).
- fix the race wait loading parts #48844 (Sema Checherinda).
- suppress assert of progress for test_system_replicated_fetches #48856 (Han Fei).
- Fix: do not run test_store_cleanup_disk_s3 in parallel #48863 (Igor Nikonov).
- Update README.md #48883 (Tyler Hannan).
- Fix test reference files for join using nullable column #48893 (Vladimir C).
- bitNot marked as NO_SANITIZE_UNDEFINED #48899 (Vladimir C).
- Fix order by in test_storage_delta #48903 (Vladimir C).
- Fix segfault when set is not built yet #48904 (Alexander Gololobov).
- A non significant change (does not affect anything): add support for signed integers in the maskBits function #48920 (caipengxiang).
- Follow-up to #48866 #48929 (Robert Schulze).
- Un-flake 01079_new_range_reader_segfault #48934 (Robert Schulze).
- Add building stage to the fasttests report, respect existing status on rerun #48935 (Mikhail f. Shiryaev).
- Update Settings.h #48948 (Kseniia Sumarokova).
- Update cluster.py #48949 (Kseniia Sumarokova).
- Docs: Replace annoying three spaces in enumerations by a single space #48951 (Robert Schulze).
- Fix flaky 02706_arrow_different_dictionaries #48952 (Kruglov Pavel).
- Use default
{replica}
,{shard}
arguments in Replicated engine #48961 (Nikolay Degterinsky). - Rename quantileApprox -> quantileGK #48969 (Vladimir C).
- Don't throw logical error when column is not found in Parquet/Arrow schema #48987 (Kruglov Pavel).
- Reimplement #48986 #49005 (Alexey Milovidov).
- Dont allow bad changelogs #49006 (Alexey Milovidov).
- Update README.md #49007 (Nick-71).
- Remove outdated test #49014 (alesapin).
- Fix typo #49027 (Kseniia Sumarokova).
- Fix assertion after #48636 #49029 (Kseniia Sumarokova).
- Fix build error for big-endian platforms #49037 (ltrk2).
- Update version_date.tsv and changelogs after v22.8.17.17-lts #49046 (robot-clickhouse).
- Update version_date.tsv and changelogs after v23.1.7.30-stable #49047 (robot-clickhouse).
- Update version_date.tsv and changelogs after v23.3.2.37-lts #49048 (robot-clickhouse).
- Remove some code #49054 (Alexey Milovidov).
- Remove some dead code in poco #49075 (Robert Schulze).
- Prevent false positive report by static analyzer #49078 (Alexey Milovidov).
- Update version_date.tsv and changelogs after v23.2.6.34-stable #49080 (robot-clickhouse).
- Enforce documentation change for a new-feature PR #49090 (Mikhail f. Shiryaev).
- Update clickhouse-test #49094 (Kseniia Sumarokova).
- Disable long 02581 in debug, enable with sanitizers #49105 (Alexander Gololobov).
- Fix flaky integration test test_async_query_sending #49107 (Kruglov Pavel).
- Correct functional test to reflect interoperability #49108 (ltrk2).
- Cleanup build guide #49119 (Robert Schulze).
- Fix building iceberg without avro #49125 (Azat Khuzhin).
- Add slash for close tag of user_defined_zookeeper_path #49131 (Hollin).
- Improve some lambdas #49133 (Mikhail f. Shiryaev).
- Do not randomize prefetch settings for debug build #49134 (Kseniia Sumarokova).
- Don't throw LOGICAL_ERROR when reading from remote if there is no local replica #49136 (Raúl Marín).
- Docs: Make caption of processors_profile_log page consistent with other pages #49138 (Robert Schulze).
- Improve test reports #49151 (Mikhail f. Shiryaev).
- Add a note regarding private/public repo to logs #49152 (Mikhail f. Shiryaev).
- suppress two timeout tests #49175 (Han Fei).
- Document makeDateTime() and its variants #49183 (Robert Schulze).
- Fix after #49110 #49206 (Kseniia Sumarokova).