docs/changelogs/v26.1.1.912-stable.md
DEFLATE_QPL and ZSTD_QAT were removed. Users are advised to convert existing data compressed with DEFLATE_QPL or ZSTD_QAT to another codec before upgrade. Note that in order to use the codecs, settings enable_deflate_qpl_codec and enable_zstd_qat_codec had to be enabled. #92150 (Robert Schulze).system.query_log.exception. Previously, UDF stderr was only logged to files and not exposed in query logs, making debugging impossible. Now stderr triggers exceptions by default and is fully accumulated (up to 1MB) before throwing, so complete Python tracebacks and error messages appear in system.query_log.exception for effective troubleshooting. #92209 (Xu Jia).JOIN USING () clause is now considered a syntax error. Previously it was supposed to be INVALID_JOIN_ON_EXPRESSION during query execution. In some cases such as joining with Join storage it led to LOGICAL_ERROR, close #82502. #92371 (Vladimir Cherkasov).compatibility setting to the previous version or set MergeTree settings dynamic_serialization_version='v2', object_serialization_version='v2'. #92511 (Pavel Kruglov).Lazy database engine is removed and no longer available. Closes #91231. #93627 (Alexey Milovidov).transposed_with_wide_view mode of the metric_log - it is unusable due to a bug. It is no longer possible to define system.metric_log with this mode. This partially reverts #78412. #93867 (Alexey Milovidov).cpu_slot_preemption server setting. #94060 (Sergei Trifonov).escape_index_filenames. #94079 (Raúl Marín).exact_rows_before_limit, rows_before_aggregation, cross_to_inner_join_rewrite, regexp_dict_allow_hyperscan, regexp_dict_flag_case_insensitive, regexp_dict_flag_dotall and dictionary_use_async_executor were changed to be regular (non-format) settings now. This is a purely internal change without user-visible side effects except in the (unlikely) case that you specified any of these settings in Iceberg or DeltaLake or Kafka or S3 or S3Queue or Azure or Hive or RabbitMQ or Set or FileLog or NATS table engine definitions. In these cases, these settings were previously ignored, now such definitions throw an error. #94106 (Robert Schulze).joinGet/joinGetOrNull functions now enforce SELECT privileges on the underlying Join table. After this change, executing joinGet('db.table', 'column', key) requires the user to have SELECT privilege on both the key columns defined in the Join table and the attribute column being retrieved. Queries lacking these privileges will fail with ACCESS_DENIED. To migrate, grant the necessary permissions using GRANT SELECT ON db.join_table TO user for full table access, or GRANT SELECT(key_col, attr_col) ON db.join_table TO user for column-level access. This change affects all users and applications relying on joinGet/joinGetOrNull where explicit SELECT grants were not previously configured. #94307 (Vladimir Cherkasov).SHOW COLUMNS for CREATE TABLE ... AS ... queries. Previously, it checked SHOW TABLES, which is an incorrect grant for this type of permission check. #94556 (pufit).<interactive_history_legacy_keymap>true</interactive_history_legacy_keymap>, the CLI client can now fall back to Ctrl R for regular search like before, while Ctrl T does fuzzy search. #87785 (Larry Snizek).ClickHouse_Info metric to the Prometheus /metrics endpoint containing mainly version information so it's possible to build charts tracking detailed version information over time. #91125 (Christoph Wurm).rcfg command for keeper which allows to change cluster configuration. This command provides broader possibilities for configuration changes than standard reconfigure request. Command takes json string as an argument. The whole set of bytes sent to TCP interface should look like this: rcfg{json_string_length_big_endian}{json_string}. Some examples of command may look like this: {"preconditions": {"leaders": [1, 2], "members": [1, 2, 3, 4, 5]}, "actions": [{"transfer_leadership": [3]}, {"remove_members": [1, 2]}, {"set_priority": [{"id": 4, "priority": 100}, {"id": 5, "priority": 100}]}, {"transfer_leadership": [4, 5]}, {"set_priority": [{"id": 3, "priority": 0}]}]}. #91354 (alesapin).reverseBySeparator which reverses the order of substrings in a string separated by a specified separator. Close #91463. #91780 (Xuewei Wang).max_insert_block_size_bytes which control the formation of inserted blocks in finer detail. #92833 (Kirill Kopnev).ON CLUSTER clause for a Replicated database if the ignore_on_cluster_for_replicated_database setting is enabled. In this case, the cluster name will be ignored. #92872 (Kirill).mergeTreeAnalyzeIndex() function. #92954 (Azat Khuzhin).use_primary_key. Set it to false to disable granule pruning based on the primary key. #93319 (Nihal Z. Miaji).icebergLocalCluster table function. #93323 (Anton Ivashkin).cosineDistanceTransposed function that approximates the cosine distance between two points. #93621 (Raufs Dunamalijevs).SYSTEM DROP [...] CACHE gave the false impression that the statement disables the cache. ClickHouse now supports statement SYSTEM CLEAR [...] CACHE which is more obvious. The old syntax remains available. #93727 (Pranav Tiwari).concurrent_threads_scheduler server setting max_min_fair value. #94732 (Sergei Trifonov).Nullable(Tuple). Set allow_experimental_nullable_tuple_type = 1 to enable it. #89643 (Nihal Z. Miaji).LIMIT and OFFSET. #91167 (Ahmed Gouda).icebergCluster. Closes #91462. #91537 (Yang Jiang).DISTINCT on LowCardinality columns. Closes #5917. #91639 (Nihal Z. Miaji).ANY, SEMI, ANTI joins. #92584 (Dmitry Novik).SEMI JOIN. Closes #85239. #92837 (Dmitry Novik).sparseGrams tokenizer by reducing the number of searched tokens in the index. #93078 (Anton Popov).uniqExact in the case when identical elements often come consecutively. #93268 (Alexey Milovidov).isValidASCII was optimized for positive outcomes, i.e. all-ASCII input values. #93347 (Robert Schulze).isValidASCII was optimized for positive outcomes, i.e. all-ASCII input values. #93611 (Robert Schulze).x-amz-server-side-encryption headers from being propagated to HeadObject, UploadPart & CompleteMultipartUpload S3 requests as they're not supported. #64577 (Francisco J. Jurado Moreno).ALTER TABLE <table> ATTACH PART <part_name> FROM <directory_name> for ALTER query. It allows the attachment of parts from the arbitrary subdirectory of the detached/ directory. It can be useful for attaching parts with custom prefixes (such as broken-on-start, unexpected, etc.) that were detached by mistake and needed only to be attached back without manual intervention. Previously, manual renaming of directories on the filesystem was required. #74816 (Anton Popov).<warnings>false</warnings> instead of the command line --no-warnings. #87783 (Larry Snizek).avg() aggregate function with Date, DateTime and Time values as arguments. Closes #82267. #87845 (Yarik Briukhovetskyi).use_variant_as_common_type by default, which lets you use incompatible types inside an Array, in UNION queries, and in branches of if/multiIf/case. #90677 (Alexey Milovidov).min_free_disk_bytes_to_perform_insert setting to work correctly with JBOD volumes. #90878 (Aleksandr Musorin).storage_class_name setting in named collections for S3 table engine and s3 table function. #91926 (János Benjamin Antal).KeeperChangelogWrittenBytes, KeeperChangelogFileSyncMicroseconds, KeeperSnapshotWrittenBytes and KeeperSnapshotFileSyncMicroseconds profile events as well as KeeperBatchSizeElements and KeeperBatchSizeBytes histogram metrics. #92149 (Miсhael Stetsyuk).trace_profile_events_list, which limits tracing with trace_profile_event to the specified list of event names. This allows more precise data collection on large workloads. #92298 (Alexey Milovidov).openSSL.server config section to exist, which conflicts with setups where different TLS configurations are needed for different ports. For example, in keeper-in-server deployments, we need separate TLS configs for inter-keeper communication and clickhouse client connections. #92457 (Miсhael Stetsyuk).input_format_binary_max_type_complexity that limits the total number of type nodes that can be decoded in binary format to prevent malicious payloads. #92519 (Raufs Dunamalijevs).EXPLAIN indices = 1 as an alias for EXPLAIN indexes = 1. Closes #92483. #92774 (Pranav Tiwari).select x from file(f.parquet, auto, 'x JSON') works even if the type of column x in f.parquet is tuple or map. #92864 (Michael Kolupaev).AWSInstanceProfileCredentialsProvider, causing concurrent requests to the EC2 metadata service which could result in timeouts and HTTP response code: 403 errors. Now the credentials provider is cached and shared across all queries. #92891 (Sav).background_schedule_pool_log.duration_threshold_milliseconds=30) to avoid excessive tasks logging. #92965 (Azat Khuzhin).joinGet function calls. #92973 (Eduard Karacharov).mapContainsKeyLike and mapContainsValueLike can now leverage a text index on mapKeys() or mapValues(), respectively. #93049 (Michael Jarrett).system.trace_log and system.symbols, and the demangle function didn't process them well. Closes #93074. #93075 (Alexey Milovidov).backup_data_from_refreshable_materialized_view_targets backup setting to skip back up of refreshable materialized views. RMVs with APPEND refresh strategy which are always backed up. #93076 (Julia Kartseva).system.blob_storage_log is now available for Azure Blob Storage. #93105 (Alexey Milovidov).blob_storage_log for Local and HDFS. Fix an error when S3Queue used something other than the disk name for logging in blob_storage_log. Add error_code column to blob_storage_log. Split the test configuration file to simplify local testing. #93106 (Alexey Milovidov).clickhouse-client and clickhouse-local will highlight digit groups (thousands, millions, etc.) inside numeric literals while typing. This closes #93100. #93108 (Alexey Milovidov).clickhouse-client for command-line arguments with a space surrounding the equals sign. Closes #93077. #93174 (Cole Smith).clickhouse git-import tool - it was broken on large and invalid commits. See https://presentations.clickhouse.com/2020-matemarketing/. #93202 (Alexey Milovidov).flipCoordinates. #93303 (Bharat Nallan).REMOVE. #93345 (Pablo Marcos).materialize_statistics_on_merge which enables/disables materializing statistics during merge. The default value is 1. #93379 (Han Fei).use_skip_indexes_on_data_read is now enabled by default. This. #93407 (Shankar Iyer).SELECT without parentheses around DESCRIBE SELECT queries. Closes #58382. #93429 (Yarik Briukhovetskyi).val1 NOT IN if(cond, val2, val3)). #93495 (Yarik Briukhovetskyi).max_server_memory_usage exceeds memory_worker_purge_dirty_pages_threshold_ratio. #93500 (Eduard Karacharov).test_merges_memory_limit integration test less flaky. #93532 (Miсhael Stetsyuk).backup_data_from_refreshable_materialized_view_targets backup setting to control whether to back up data of refreshable materialized views. Targets of RMVs with APPEND refresh strategy are always backed up. #93658 (Julia Kartseva).QBit from Experimental to Beta. #93816 (Raufs Dunamalijevs).DeltaLake table engine. #93852 (Kseniia Sumarokova).alter table ... modify setting ... statements, it's possible not to aquire lock for 5 seconds. better to return timeout than logical error. #93856 (Han Fei).CHECK_STAT and TRY_REMOVE Keeper extension by default. #93886 (Mikhail Artemenko).FINAL query is on a column that is part of the primary key, the additional step to check for primary key intersection in other parts is unnecessary and now not performed. Resolves #85897. #93899 (Shankar Iyer).use_hash_table_stats_for_join_reordering setting to control whether runtime hash table size statistics are used for join reordering. This setting is enabled by default, preserving the existing behavior of collect_hash_table_stats_during_joins. #93912 (Vladimir Cherkasov).system.server_settings table (e.g. logger.level). This only covers settings with a fixed structure (no lists, enumerations, repetitions etc.). #94001 (Hechem Selmi).QBit can now be compared for equality. #94078 (Raufs Dunamalijevs).CREATE TABLE fails. #94174 (Azat Khuzhin).merge_max_dynamic_subcolumns_in_compact_part (simiar to already added merge_max_dynamic_subcolumns_in_wide_part) that limits number of dynamic subcolumns created during merge into a Compact part. Second is query level setting max_dynamic_subcolumns_in_json_type_parsing that limits number of dynamic subcolumns created during parsing of JSON data, it will allow to specify the limit on insert. #94184 (Pavel Kruglov).use_statistics for setting allow_statistics_optimize. This is more consistent with existing settings use_primary_key and use_skip_indexes. #94366 (Robert Schulze).input_format_numbers_enum_on_conversion_error for conversion from Numbers to Enums to check whether the element exists. #94384 (Elmi Ahmadov).default user in clickhouse-local. The default user in clickhouse-local was missing the access_management privilege, which caused operations like DROP ROW POLICY IF EXISTS to fail with ACCESS_DENIED error, even though the user should be unrestricted. #94501 (Alexey Milovidov).Hash output format independent of block sizes. #94503 (Alexey Milovidov).memory_worker_purge_total_memory_threshold_ratio to start purging dirty pages based on ratio of total memory usage. #94902 (Antonio Andelic).view_duration_ms shows the time when group was active, not the sum of the threads duration in it. #94966 (Sema Checherinda).hasAnyTokens and hasAllTokens functions which was limited to 64. Example: SELECT count() FROM table WHERE hasAllTokens(text, ['token_1', 'token_2', [...], 'token_65']]); The query would result in a BAD_ARGUMENTS error because there are 65 search tokens. With this PR, the limit has been removed completely and the same query would run without an error. #95152 (Elmi Ahmadov).max_parts_to_merge_at_once in TTL drop part merges. #95315 (Kseniia Sumarokova).input_format_numbers_enum_on_conversion_error for conversion from Numbers to Enums to check whether the element exists. Closes: #56144. #56240 (Nikolay Degterinsky).icebergHash function on constant argument. #90335 (Michael Kolupaev).system.warnings correctly after an ordinary database was converted to an atomic database. #90473 (sdk2).Couldn't pack tar archive: Failed to write all bytes error caused by an incorrect archive entry size header. Fixes #89075. #92122 (Julia Kartseva).USING clause and join_use_nulls. #92251 (Vladimir Cherkasov).join_on_disk_max_files_to_merge setting. #92335 (Bharat Nallan).SYSTEM SYNC FILE CACHE. Closes #92101. #92372 (Kseniia Sumarokova).count_distinct_optimization pass over window functions and over multiple arguments. #92376 (Raúl Marín).CREATE TABLE ... AS urlCluster() and database engine Replicated. Closes #92216. #92418 (Kseniia Sumarokova).LOGICAL_ERRORs that caused by not wanted modification of query plan when converting outer join to inner join. Also relax the requirements of optimization to be able to apply it in cases when injective functions are applied to the aggregating keys during joins. #92503 (János Benjamin Antal).SIZES_OF_COLUMNS_DOESNT_MATCH during sorting of emty tuple column. Closes #92422. #92520 (Pavel Kruglov).getSubcolumn and in some cases could be not resolved at all. Closes #91434. #92583 (Pavel Kruglov).IColumn::shrinkToFit) or filtering (IColumn::filter), which could've triggered concurrently from several threads. #92588 (Arsen Muk).Too large size (A) passed to allocator while executing JOINs. Closes #92043. #92667 (Yarik Briukhovetskyi).ngrambf_v1 indexes with ngram length (1st parameter) > 8 would throw an exception. #92672 (Robert Schulze).GRANT statements failing due to unrelated revokes. #92725 (pufit).not match(...) is used in WHERE causing incorrect results. Closes #92492. #92726 (Nihal Z. Miaji).Connection. #92807 (Raufs Dunamalijevs). Failed to set file processing within 100 retries in storgae S3Queue in Ordered mode. It is now replaced with a warning. This error could happen before 25.10 version if keeper session expired, however it will still be a warning in 25.10+ versions, as it is still theoretically possible to get this error in case of high processing concurrency in Ordered mode. #92814 (Kseniia Sumarokova).system.parts table. #92832 (Anton Popov).IN clause with subqueries in the predicate of the WHERE clause. #92838 (Anton Popov).FILE_DOESNT_EXIST after mutation of a sparse column with ratio_of_defaults_for_sparse_serialization=0.0. Closes #92633. #92860 (Pavel Kruglov).join_use_nulls, close #92640. #92892 (Vladimir Cherkasov).NOT_FOUND_COLUMN_IN_BLOCK during insert into a table with subcolumn in partition expression. Closes #93210. Closes #83406. #92905 (Pavel Kruglov).NO_SUCH_COLUMN_IN_TABLE in Merge engine over tables with aliases. Closes #88665. #92910 (Pavel Kruglov).MergeTree tables. #92925 (Anton Popov).has function. Closes #92906. #92995 (Nihal Z. Miaji).ratio_of_defaults_for_sparse_serialization was changed to 1.0 via alter. #93016 (Pavel Kruglov).not materialize(...) or not CAST(...) is used in WHERE causing incorrect results. Closes #88536. #93017 (Nihal Z. Miaji).groupConcat aggregate state with out-of-bounds offsets. #93028 (Raufs Dunamalijevs).set compatibility='23.3'. Not sure if it should be backported. #93038 (Amos Bird).Cannot finalize buffer after cancellation in estimateCompressionRatio(). Fixes: #87380. #93068 (Azat Khuzhin).concat(col1, col2)). #93073 (Anton Popov).__applyFilter used by join runtime filters was returning ILLEGAL_TYPE_OF_ARGUMENT in some valid cases. #93187 (Alexander Gololobov).s3queue_migrate_old_metadata_to_buckets. Closes #93392, #93196, #81739. #93232 (Kseniia Sumarokova).NOT_FOUND_COLUMN_IN_BLOCK error. #93273 (Dmitry Novik).Merge table engine query planning with the analyzer that could throw ILLEGAL_COLUMN for hostName() when merging local and remote/Distributed tables. Closes #92059. #93286 (Jinlin).Not found column for use_top_k_dynamic_filtering optimization. Fixes #93186. #93316 (Nikolai Kochetov).hasAllTokens and hasAnyTokens functions. #93328 (Anton Popov).tokens is called with non-const tokenizer parameters (the 2th, 3rd, 4th parameter), e.g., SELECT tokens(NULL, 1, materialize(1)). #93383 (Robert Schulze).groupConcat state deserialisation that could cause memory safety issues with crafted aggregate states. #93426 (Raufs Dunamalijevs).adls.sas-token.* keys from Iceberg REST catalogs and fix ABFSS URL parsing. #93477 (Karun Anantharaman).Unexpected type of result TTL column. #93619 (Pavel Kruglov).ngram_bf index on a non-UTF-8 data led to an uninitialized memory read, with values that could reside in the resulting index structure. Closes #92576. #93663 (Alexey Milovidov).SHOW COLUMNS permission using the merge table engine. #93695 (János Benjamin Antal).QueryPipeline::resources::storage_holders to make sure that the IStorage objects are not destroyed while PipelineExecutor is alive. #93746 (Miсhael Stetsyuk).!read_until_position in ReadBufferFromS3 which happened when cache is enabled. #93809 (Kseniia Sumarokova).Map column. Closes #93784. #93814 (Nihal Z. Miaji)._part_offset corruption when projections are rebuilt during merges, and optimized projection processing by avoiding unnecessary reads of the _part_offset column and skipping unneeded columns in projection calculations. This continues the optimizations introduced in #93233. #93827 (Amos Bird).optimize_inverse_dictionary_lookup not working with distributed query when key is signed integral type. Closes #93259. #93848 (Nihal Z. Miaji).lag/lead not working with distributed remote() query. Closes #90014. #93858 (Nihal Z. Miaji).TraceSender sends through an internal pipe. However, the buffer size was not updated (here), therefore we are writting more data to buffer than buffer_size which results in multiple flushes. And because TraceSender::send is called from different threads, different threads' flushes may interleave which breaks the invariant that the receiving end (TraceCollector) relies on. #93966 (Miсhael Stetsyuk).Join with USING clause. Fixes #91672. Fixes #78572. #94000 (Dmitry Novik).SELECT query containing a predicate on multiple columns with bloom filter skip indexes and both OR and NOT conditions are present could return inconsistent results. That is fixed now. #94026 (Shankar Iyer).ReadWriteBufferFromHTTP. #94058 (Alexey Milovidov).uniqTheta when using UInt8 aggregation keys in parallel (max_threads > 1 - default). #94095 (Azat Khuzhin).socket.setBlocking(true) call inside SCOPE_EXIT: logs. Because SCOPE_EXIT creates a scope guard object and runs the provided code in the scope guard's destructor, we can't use SCOPE_EXIT with functions that throw exceptions and should use SCOPE_EXIT_SAFE instead. #94100 (Miсhael Stetsyuk).input_format_parquet_use_native_reader_v3 = 0. #94125 (Michael Kolupaev).arrayShuffle, arrayPartialShuffle and arrayRandomSample to materialize const columns - so that different rows get different results. #94134 (Joanna Hulboj).PostgreSQL database engines (when the query is incorrect). Closes #92887. #94180 (Alexey Milovidov).SELECT queries with multiple subqueries. #94200 (Antonio Andelic).DataPartStorageOnDiskBase::remove vs system.parts. Closes #49076. #94262 (Alexey Milovidov).noexcept specifier at HashTable copy assignment that may lead to crash (std::terminate) on memory exceptions. #94275 (Nikita Taranov).GROUP BY c0, c0) and inserting data caused a std::length_error if optimize_row_order is enabled. Closes #94065. #94277 (Alexey Milovidov).enable_lazy_columns_replication is enabled. The bug caused all rows in replicated columns to incorrectly return the same value instead of their distinct values. Close #93891. #94339 (Vladimir Cherkasov).FilesystemCacheSizeLimit in case SLRU cache policy was used. #94363 (Kseniia Sumarokova).Wrong number of arguments instead of std::out_of_range: InlinedVector::at(size_type) const failed bounds check.). #94374 (Robert Schulze).alter_column_secondary_index_mode's throw mode is used. #94425 (Raúl Marín).TCPHandler::runImpl expects that the two receivePacketsExpectQuery calls won't both read Protocol::Client::IgnoredPartUUIDs, but given repeated crashes there, it's possible. #94434 (Miсhael Stetsyuk).system.functions. #94436 (Vitaly Baranov).send_profile_events. This feature was introduced recently for the ClickHouse Python driver. Closes #92488. #94466 (Alexey Milovidov).read_in_order_use_virtual_row is enabled, the code was accessing index columns based on the full primary key size without checking if the index was truncated, leading to use-after-free / uninitialized memory. Closes #85596. #94500 (Alexey Milovidov).Not found column. Closes #60660. #94515 (Alexey Milovidov).isNotNull is evaluated on a missing column. #94600 (Molly).data_type (which may be DataTypeNullable*) is static_cast-ed to DataTypeDateTime64*. Instead, we should cast check_type (the nested type variable). #94627 (Miсhael Stetsyuk).ORDER BY could return ALIAS columns with swapped values (i.e., column a showing column b’s data and vice versa). #94644 (filimonov).getURLHostRFC function was missing bounds checks before dereferencing pointers. When an empty string was passed to domainRFC, it would read uninitialized memory, triggering MSan errors. #94851 (Alexey Milovidov).LIMIT/OFFSET when using the old analyzer with Distributed tables. Closes #94712. #94999 (Ahmed Gouda).URL() and table function url(). #95006 (Vitaly Baranov).toStartOfInterval now works in the same way as toStartOfX, where X is Day, Week, Month, Quarter, Year when the enable_extended_results_for_datetime_functions is on. #95011 (Kirill Kopnev).cast_string_to_date_time_mode, bool_true_representation, bool_false_representation, and input_format_null_as_default. Closes #91681. #95040 (Nihal Z. Miaji).LIMIT is zero. Closes #93893. #95072 (Alexey Milovidov).toTime, which is not monotonic. The ToDateTimeMonotonicity template incorrectly claimed this conversion was monotonic, causing "Invalid binary search result in MergeTreeSetIndex" exception in debug builds. #95125 (Alexey Milovidov).redis table function now will be masked in the logs and system tables (e.g.: query_log). #95325 (János Benjamin Antal).optimize_syntax_fuse_functions to not rewrite sum/count/avg into sumCount() when the aggregate argument is Nullable. Closes #95390. #95441 (Nihal Z. Miaji).It is not possible to register multiple plain-rewritable disks with the same object storage prefix). #95470 (Azat Khuzhin).mergeTreeProjection table function was missing an access check, allowing users without SELECT permission on a table (but with permissions for table functions) to read data from its projections. This fix adds the same access check that mergeTreeIndex and mergeTreeAnalyzeIndexes already have. #95480 (Alexey Milovidov).stats.allocated metric before and after we parse query to AST representation to show what is allocated. Also it supports memory profiling mode that dumps profile before and after to build reports where allocations occurred. #93523 (Ilya Yatsishin).CVE-2025-62408, which is not relevant for ClickHouse. #94129 (Govind R Nair).curl 8.18.0. #94742 (Konstantin Bogdanov).postgres to REL_18_1. #95189 (Konstantin Bogdanov).libexpat 2.7.3. #95218 (Konstantin Bogdanov).test_storage_rabbitmq"'. #92151 (Nikita Mikhaylov).test_storage_nats"'. #92155 (Nikita Mikhaylov).uniqExact"'. #93294 (Alexey Milovidov).test_storage_nats""'. #93616 (Alexey Milovidov).test_projection_rebuild_with_required_columns"'. #93971 (Nikolai Kochetov).clearCaches when table is dropped during query"'. #95120 (Alexey Milovidov).ReadBufferFromEncryptedFile.cpp, add comments. #80513 (Vitaly Baranov).allow_experimental_full_text_index --> enable_full_text_index. #92638 (Robert Schulze).03737_text_index_materialization.sh. #92657 (Robert Schulze).03357_join_pk_sharding timeouts. #92704 (Konstantin Bogdanov).QBit performance tests. #92712 (Raufs Dunamalijevs).02246_is_secure_query_log. #92714 (Konstantin Bogdanov).01518_nullable_aggregate_states2. #92763 (Alexey Milovidov).uniq. #92775 (Alexey Milovidov).move partition query, if the part will not be immediately removed from the filesystem, because there is no covering, after reboot, it will be attached once again. #92853 (Mikhail Artemenko).AggregateFunctionWindowFunnel. #93035 (Nikita Taranov).timeSeriesTagsToGroup(), timeSeriesExtractTag(), timeSeriesCopyTags(), timeSeriesRemoveTags(), timeSeriesJoinTags(), timeSeriesReplaceTag() - Rename functions timeSeriesTagsGroupToTags() to timeSeriesGroupToTags(), timeSeriesIdToTagsGroup() to timeSeriesIdToGroup(). #93234 (Vitaly Baranov).01231_operator_null_in to avoid timouts. #93242 (Nikita Taranov).test_normalized_user_cpu. #93282 (Nikita Taranov).02346_text_index_parallel_replicas. #93287 (Nikita Taranov).test_prometheus_protocols/test_evaluation.py. #93350 (Vitaly Baranov).allow_suspicious_variant_types with geom type. #93548 (Konstantin Vedernikov).SELECT tokens('tkn1 tkn2', 'invalid_tokenizer'). #93618 (Robert Schulze).TokenExtractor. #93661 (Alexey Milovidov).03238_create_or_replace_view_atomically_with_replicated_engine.sh. #93664 (Alexey Milovidov).test_projection_rebuild_with_required_columns. #93877 (Alexey Milovidov).01459_manual_write_to_replicas_quorum_detach_attach. #93885 (Alexey Milovidov).groupConcat deserialize. #93898 (Raufs Dunamalijevs).02310_clickhouse_client_INSERT_progress_profile_events.expect. #94063 (Alexey Milovidov).1_000_000) - Fix passing the timestamp scale from Prometheus HTTP API - Improve ANTLR4 PromQL grammar - Add test to check parsing of prometheus queries. #94091 (Vitaly Baranov).Remove dangerous code. #94108 (Robert Schulze).--repo flag to gh pr commands in check_ci script. #94139 (Max Kainov).short from performance tests. #94173 (Raufs Dunamalijevs).EXPLAIN actions=1. #94183 (Alexander Gololobov).01201_read_single_thread_in_order. #94250 (Alexey Milovidov).fix-test-00091_prewhere_two_conditions. #94251 (Alexey Milovidov).01174_select_insert_isolation test. #94273 (Alexey Milovidov).03759_join_filterpushdown_granules_read. #94274 (Alexey Milovidov).03746_system_background_schedule_pool_log. #94280 (Alexey Milovidov).Date32 and Time64 types. Closes #93674. #94305 (Alexey Milovidov).toDecimalString. #94318 (Antonio Andelic).ReadBuffer is canceled. Can't read from it in TCPHandler::skipData(). #94360 (Vitaly Baranov).StdStreamFromReadBuffer. This PR fixes logical error ReadBuffer is canceled. Can't read from it in StdStreamBufFromReadBuffer::xsgetn(). #94362 (Vitaly Baranov).ReadBuffer is canceled. Can't read from it in TCPHandler::runImpl() after preserving canceled connection. #94373 (Vitaly Baranov).01396_inactive_replica_cleanup_nodes_zookeeper. #94479 (Alexey Milovidov).LogicalExpressionOptimizer in the presense of GROUPING SETS and group_by_use_nulls. #94493 (Alexey Milovidov).01040_dictionary_invalidate_query_switchover_long.sh. #94502 (Alexey Milovidov).01852_dictionary_query_count_long.sql. #94505 (Alexey Milovidov).01852_dictionary_query_count_long.sql. #94506 (Alexey Milovidov).set index and nested indexHint and non-UInt8 constants. #94514 (Alexey Milovidov).convertFieldToType. #94537 (Alexey Milovidov).test_postgresql_replica_database_engine/test_1.py::test_abrupt_connection_loss_while_heavy_replication:. #94614 (Kirill Kopnev).row_order_optimize. Continuation of https://github.com/ClickHouse/ClickHouse/pull/94277. #94649 (Mikhail Artemenko).max_estimated_execution_time. #94668 (Sergei Trifonov).automatic_parallel_replicas_min_bytes_per_replica to 1Mi by default. #94675 (Nikita Taranov).no-sanitizers tag to disable test under all sanitizers altogether. #94691 (Nikita Taranov).multi requests. #94830 (Mikhail Artemenko).TryRemove request zookeeper_log serialization. #94977 (Mikhail Artemenko).date_trunc function was returning wrong values for pre-epoch Date32 arguments. Closes #70529. #94996 (Yarik Briukhovetskyi).CONNECTION_LOSS error was thrown, which triggered background parts check from the sink, and because the check thread was enabled in this configuration, eventually got into this logical error. #95001 (Mikhail Artemenko).03300_merge_parts_metric.sh. #95025 (Alexey Milovidov).ReadFromMerge::addFilter when child plan is not initialized. #95047 (Alexey Milovidov).function_base for lambda functions. #95053 (Alexey Milovidov).adjustLastGranule with constant PREWHERE and patch parts. #95056 (Alexey Milovidov).03339_native_reader_exact_rows. #95058 (Alexey Milovidov).02435_rollback_cancelled_queries. #95061 (Alexey Milovidov).01583_parallel_parsing_exception_with_offset in debug/sanitizer builds. #95066 (Alexey Milovidov).test_ttl_compatibility in test_ttl_replicated. #95067 (Alexey Milovidov).clearCaches when table is dropped during query. #95074 (Alexey Milovidov).03593_backup_with_broken_projection under MSan. #95075 (Alexey Milovidov).test_auto_close_connection. #95082 (Alexey Milovidov).03211_nested_json_merges on debug builds. #95084 (Alexey Milovidov).test_rmv_append_backup. #95104 (Alexey Milovidov).test_missing_mv_transitive_target in TSan. #95105 (Alexey Milovidov).test_failure_in_the_middle in S3Queue integration test. #95106 (Alexey Milovidov).test_backup_restore_system_tables_with_plain_rewritable_disk. #95107 (Alexey Milovidov).test_refreshable_mv_in_system_db. #95108 (Alexey Milovidov).03794_read_in_order_virtual_row_and_sparse_primary_key_msan. #95110 (Alexey Milovidov).test_simple_alter_table for Replicated databases by adding explicit replica synchronization. #95111 (Alexey Milovidov).test_scheduler_cpu_preemptive::test_independent_pools. #95114 (Alexey Milovidov).test_quorum_inserts tests. #95115 (Alexey Milovidov).03300_merge_parts_metric. #95118 (Alexey Milovidov).03644_explain_indices. #95119 (Alexey Milovidov).02844_max_backup_bandwidth_s3. #95127 (Alexey Milovidov).02896_leading_zeroes_no_octal. #95179 (Alexey Milovidov).