docs/changelogs/v25.3.1.2703-lts.md
compatibility setting. It's still possible to change this behavior by explicitly setting parallel_replicas_only_with_analyzer to false. #77115 (Igor Nikonov).NaN or inf for float values as settings. #77546 (Yarik Briukhovetskyi).concurrent_threads_scheduler server setting that governs how CPU slots are distributed among concurrent queries. Could be set to round_robin (previous behavior) or fair_round_robin to address the issue of unfair CPU distribution between INSERTs and SELECTs. #75949 (Sergei Trifonov).arraySymmetricDifference. It returns all elements from multiple array arguments which do not occur in all arguments. Example: SELECT arraySymmetricDifference([1, 2], [2, 3]) returns [1, 3]. (issue #61673). #76231 (Filipp Abapolov).estimatecompressionratio aggregate function- see #70801. #76661 (Tariq Almawash).FilterTransformPassedRows and FilterTransformPassedBytes profile events will show the number of rows and number of bytes filtered during the query execution. #76662 (Onkar Deshpande).icebergTruncate according to specification. https://iceberg.apache.org/spec/#truncate-transform-details, toYearNumSinceEpoch and toMonthNumSinceEpoch. Support truncate transform in partition pruning for Iceberg engine. #77403 (alesapin).JSON data type is production-ready. See https://jsonbench.com/. Dynamic and Varaint data types are production ready. #77785 (Alexey Milovidov).<multicluster_root_path>. #76001 (Anton Ivashkin).enable_replacing_merge_with_cleanup_for_min_age_to_force_merge. #76440 (Christoph Wurm).preserve_most attribute at some places in code. #67778 (Nikita Taranov).compile_expressions) now considers the machine type. This speeds up such queries significantly. #76753 (Robert Schulze).filesystem_cache_prefer_bigger_buffer_size when the cache is used passively, such as for merges. #77898 (Kseniia Sumarokova).server-logs-file. Disabled the ability to pass client options through the environment variables by default (it is still possible via ssh-server.enable_client_options_passing in config.xml). Supported progress table, query cancellation, completion, profile events progress, stdin and send_logs_level option. This closes: #74340. #74989 (Nikita Mikhaylov).observe(value) to increment the counter in the bucket corresponding to the value. The histogram metrics are exposed via system.histogram_metrics. #75736 (Miсhael Stetsyuk).encrypted_by) can now be applied to any configuration file (config.xml, users.xml, nested configuration files). Previously, it worked only for the top-level config.xml file. #75911 (Mikhail Gorshkov).system.warnings table and add some dynamic warning messages that can be added, updated or removed. #76029 (Bharat Nallan).ALTER USER user1 ADD PROFILES a, DROP ALL PROFILES because all DROP operations should come first in the order. #76242 (pufit).engine=Kafka no longer explicitly leaves the consumer group when a table is dropped. Instead, the consumer remains in the group until it is automatically removed after session_timeout_ms (default: 45 seconds) of inactivity. #76621 (filimonov).server_settings or settings have a default value column which is convenient. only merge_tree_settings and replicated_merge_tree_settings do not have that column enabled. #76942 (Diego Nieto).ProfileEvents::QueryPreempted, which has the same logic as CurrentMetrics::QueryPreempted. #77015 (VicoWu).TRUNCATE is used with INTO OUTFILE. Resolves #70323. #77181 (Onkar Deshpande).iceberg_metadata_file_path . Fixes #47412. #77318 (alesapin).allow_s3_native_copy now supports value three possible values: - False - s3 native copy will not be used; - True (old default) - ClickHouse will try s3 native copy first, if it fails then fallback to the reading+writing approach; - 'auto' (new default) - ClickHouse will compare the source and destination credentials first. If they are same, ClickHouse will try s3 native copy and then may fallback to the reading+writing approach. If they are different, ClickHouse will go directly to the reading+writing approach. #77401 (Vitaly Baranov).No such file or directory). #72939 (Azat Khuzhin).toDateTime conversion when date_time_overflow_behavior = 'ignore' which is the default value. #73326 (Amos Bird).RENAME and RESTART REPLICA, in case of concurrent RENAME with SYSTEM RESTART REPLICA you may get end up restarting wrong replica, or/and leaving one of the tables in a Table X is being restarted state). #76308 (Azat Khuzhin).squashing. #76343 (Han Fei).system.data_skipping_indices. #76374 (Robert Schulze).used_flag initialization in parallel hash. It might cause a server crash. #76580 (Nikita Taranov).defaultProfiles() function inside a projection. #76627 (pufit).Not found column in block after altering a table with a subcolumn in PK. After https://github.com/ClickHouse/ClickHouse/pull/72644, requires https://github.com/ClickHouse/ClickHouse/pull/74403. #76686 (Nikolai Kochetov).LOGICAL_ERROR generated during the finalization of some output format, e.g. JSONEachRowWithProgressRowOutputFormat. #76726 (Antonio Andelic).multi_if may return different types of columns during planning and main execution. This resulted in code producing undefined behavior from the C++ perspective. #76914 (Nikita Taranov).BFloat16 values. This closes #75487. This closes #75669. #77000 (Alexey Milovidov).SELECT toBFloat16(-0.0) == toBFloat16(0.0) now correctly returns true (from previously false). This makes the behavior consistent with Float32 and Float64. #77290 (Shankar Iyer).(1, null) and a String '(1,null)' would result in an error. Another example would be a comparison between a Tuple (1, a), where a is a Nullable column, and a String '(1, 2)'. This change addresses these issues. #77323 (Alexey Katsman).close_session query parameter didn't have any effect leading to named sessions being closed only after session_timeout. #77336 (Alexey Katsman).async_insert with input(). #77340 (Azat Khuzhin).WITH FILL may fail with NOT_FOUND_COLUMN_IN_BLOCK when sorting column is removed by planer. Similar issue related to inconsistent DAG calculated for INTERPOLATE expression. #77343 (Yakov Olkhovskiy).enable_filesystem_cache_log. #77650 (Kseniia Sumarokova).defaultRoles() function inside a projection. Follow-up for #76627. #77667 (pufit).Nullable for function arrayResize are now disallowed. Previously, anything from errors to wrong results could happen with Nullable as second argument. (issue #48398). #77724 (Manish Gill).clickhouse-odbc-bridge and clickhouse-library-bridge are moved to a separate repository, https://github.com/ClickHouse/odbc-bridge/. #76225 (Alexey Milovidov).libcpuid to 0.7.1. #76573 (Konstantin Bogdanov).sccache to 0.10.0. #77580 (Konstantin Bogdanov).CASE support"'. #77713 (Raúl Marín).multi_if"'. #77715 (Raúl Marín).DISTINCT. Added benchmark functionality when compiled with BuzzHouse. Using a peer ClickHouse server, compare the performance of each modified query (query time and memory usage). Sometimes settings are added to the query such as the join algorithm and block size. #75279 (Pedro Ferreira).parallel_replicas_only_with_analyzer is introduced to prevent using parallel replicas without analyzer in backward-compatible way. #76427 (Igor Nikonov).ignore_drop_queries_probability should only change DROP to TRUNCATE when it is the initial query. Otherwise, it will cause cluster inconsistency with some replicas dropping and some truncating the table in question. #76510 (Nikolay Degterinsky).LoggerElapsedNanoseconds to Keeper metrics. #76517 (Antonio Andelic).libunwind from llvm-project. #76574 (Konstantin Bogdanov).MultiRead when querying system.distributed_ddl_queue. #76575 (Antonio Andelic).HashJoin. #76582 (Nikita Taranov).python3 and rsync to docs container. #76629 (Shaun Struwig).{server_uuid} macro was substituted before the metadata was written to the disk, or to ZooKeeper. This could cause the REPLICA_ALREADY_EXISTS exception in Database Replicated when we add a new replica to the cluster. #76636 (Nikolay Degterinsky).-DENABLE_LIBRARIES=0. #76678 (Robert Schulze).Context::getDatabaseDisk. #76703 (Tuan Pham Anh).checkout_submodule just silently failed to fetch some submodules. #76971 (Mikhail f. Shiryaev).__BYTE_ORDER__ macros. #77072 (Robert Schulze).force flag for resizes. #77112 (Yarik Briukhovetskyi).03367_bfloat16_tuple_final. #77130 (Nikita Mikhaylov).QueryCache to QueryResultCache (only in C++). #77134 (zhongyuankai).CoordinationZnode::last_success_duration in RefreshTask. #77174 (Tuan Pham Anh).test_replicated_merge_tree_s3_zero_copy. #77433 (Sergei Trifonov).formatWithSecrets* should be used with caution. #77523 (Nikita Mikhaylov).ColumnDefault truly noexcept. #77670 (Vitaly Baranov).SYSTEM REFRESH VIEW <name>). #77770 (Michael Kolupaev).nats_max_reconnect obsolete. #77829 (János Benjamin Antal).