v.25.6
Backward Incompatible Change
3Bug Fix (user-visible misbehavior in an official stable release)
105- Fix parameterized view with SELECT EXCEPT query
- Fix column projection name after column type
- Fix a logical error
- Fix CTE usage
- Fix an issue where SYSTEM SYNC REPLICA
- Fix crash
- Fix passing of external roles
- Try to use IColumn instead of Field
- Fix applying use\_native\_copy and allow\_azure\_native\_copy setting
- Fix logical errors about a column's unknown
- Fix wrong results
- Fix local shard result duplication
- Fix the sorting order of the NaNs
- Now GROUP BY ALL doesn't take into
- Fix incorrect state merging
- Respect readonly setting in azure_blob_storage object storage
- Fix incorrect query results and out-of-memory crashes
- Disabling hive partitioning for datalakes Partially addresses
- Skip indexes with lambda expressions could not
- Fix metadata version during attach part
- Add to the used_functions column of
- Fix logical error
- Fix reading subcolumns from Merge engine
- Fix a bug about the comparison between
- Fix AMBIGUOUS\_COLUMN\_NAME
- Fix incorrect count optimization
- Fix improper serialization of nested numeric fields
- Perform less strict metadata checks
- Fix text representation of DateTime and DateTime64
- Allow DateTime with timezone in StripeLog tables
- Disable filter-push-down
- Fix possible logical errors and crashes
- Fix NOT_FOUND_COLUMN_IN_BLOCK error caused by filter-push-down optimization
- Fix incorrect result
- Fix wrong sorting
- Fixed refreshable materialized view DROP getting stuck
- Fix 'Cannot find column' with constant tuple
- Fix shardNum function
- Fix incorrect result during reading column that
- Fix possible SSH protocol
- Timestamp in the iceberg\_history table should now
- Fix possible crash
- Fix handling of enum globs of
- Fix wrong result type of comparison functions
- Add missing
- Fix THERE_IS_NO_COLUMN error
- Fix excessive number of files
- PR might close
- Fix crash
- Properly wait consumers before shutting down Kafka
- Fix NOT_FOUND_COLUMN_IN_BLOCK, which is caused by predicate-push-down
- Fix logical error
- Fix memory accounting
- Fix wrong partitioning with nullable partition key
- Fix Table does not exist error
- Fix the logical error
- Fix extremes
- Fix possible crash while querying from system
- Fix atomic rename with truncate
- Fix ErrorCodes::getName
- Fix bug when user cannot list tables
- Now ClickHouse will ignore errors and unexpected
- Fix parsing of DateTime64
- Reflect date\_time\_input\_format setting in schema inference cache
- Fix crash
- Fix use-of-uninitialized-value
- Fix hardlinks count management
- Add to the system
- Fix Too large size
- Fix LOGICAL\_ERROR
- Fix Unknown table expression identifier
- Fix incorrectly caching number of rows
- Fix fs cache max\_size\_to\_total\_space setting
- Fix clickhouse-local crashing
- Verify array offsets received over network
- Fix some corner case
- Fix for datalake Cluster functions
- Make force\_restore\_data flag recover lost keeper metadata
- Fix region error
- Disable incorrect JIT
- Fix insert error
- Fix possible crash
- Don't store content of several manifest files
- Fix possible crash during shutting down background
- Fix out-of-bounds read
- There is a chance
- Fix DatabaseReplicated
- Fix sorting order
- Server should not preserve a HTTP connection
- Make scalar correlated subqueries return a nullable
- Fix Unexpected relative path
- Query settings use_iceberg_partition_pruning will not take effect
- Fix "Context has expired" during merges
- Add validation for mergetree
- Fix issues with clickhouse-local
- Fix StorageRedis join
- Fix crash
- Keeper fix: block commits of new logs
- Fix the issue where required columns are
- Someone littered our code with Kusto
- Versions, the server returned excessive content
- Previously, MongoDB table engine definitions could include
- Fix possible crash
- Fixing copy-paste error in arraySimilarity, disallowing
- Fix possible data-race between suggestion thread and
Build/Testing/Packaging Improvement
20- Use postgres 16.9.
- Use openssl 3.2.4.
- Use abseil-cpp 2025-01-27
- Use mongo-c-driver 1.30.4.
- Use krb5 1.21.3-final.
- Use orc 2.1.2.
- Use grpc 1.73.0.
- Use delta-kernel-rs v0.12.1.
- Update c-ares to v1
- Upgrade curl to 8.14
- Upgrade libarchive to 3.7.9
- Upgrade libxml2 to 2.14.3.
- Avoid copying vendored Rust sources to CARGO_HOME
- Remove dependency on the Sentry library
- Update python dependencies in CI images
- Retry reading of replicated DDL stop flag
- Use https for ubuntu archive url
- Update python dependencies in test images
- Introduce flake
- Fix delta-kernel-rs requiring network access during build
Experimental Feature
4New Feature
24- New data types: Time ([H]HH:MM:SS) and Time64
- New CLI tool, chdig - TUI interface
- Support disk setting
- New type of MergeTree, CoalescingMergeTree -
- Support functions to read WKB
- Add query slot scheduling for workloads
- TimeSeries* helper functions to speedup some scenarios
- Add mapContainsValuesLike/mapContainsValues/mapExtractValuesLike
- Now settings constraints can specify a set
- Enable sharing the same storage snapshot across
- Support writing JSON columns to Parquet and
- Add MultiPolygon
- Add support for querying local filesystem-mounted Delta
- Allow to choose DateTime parsing mode during
- Add bech32Encode and bech32Decode
- Add SQL functions to analyse the names
- Introduce a new virtual column, _disk_name
- Add a landing page with the list
- Function arrayFirst, arrayFirstIndex, arrayLast and arrayLastIndex will
- It's now possible to write USE DATABASE
- Add a new system table system
- Support lag and lead window functions
- Function tokens now supports a new tokenizer
- Add support for the --database argument
Improvement
54- EXPLAIN SYNTAX now uses a new analyzer
- Support Dynamic and JSON
- Refresh S3 credentials after error AuthenticationRequired
- Add dictionary metrics to system
- Add a warning about databases that were
- Add _time virtual column in S3Queue, AzureQueue
- Make settings controlling connection drop
- Add container prefix to data paths reported
- Now, clickhouse-client and local also accept query
- Detailed warning msg for bandwidth discount
- Previously, when input_format_parquet_max_block_size = 0
- Add throw_on_error
- Add http_response_headers in http_handlers of any kind
- Function reverse now supports Tuple data type
- Allow getting auxiliary_zookeepers data from system
- Add asynchronous metrics about the server's TCP
- Support anyLast_respect_nulls and any_respect_nulls as a SimpleAggregateFunction
- Remove unnecessary call adjustCreateQueryForBackup for replicated databases
- Allow extra options
- Highlight metacharacters in SHOW
- Make SQL UDF persistent in clickhouse-local
- Fix description
- Allow to use named collections in ODBC/JDBC
- Metrics for number of readonly and broken
- Support s3_plain_rewritable storage with projections
- SYSTEM UNFREEZE command will not try
- Lowered the log level of merged parts
- Change the default behavior of partition pruning
- Add two new ProfileEvents
- Avoid logs polluting
- Add support for Date32 and DateTime64
- Adjust compatibility values for max_merge_delayed_streams_for_parallel_write
- Fix a crash: if an exception is
- Add IF EXISTS modifier to SYSTEM SYNC
- Add finished\_download\_time column to system
- Add search algorithm section to EXPLAIN output
- At the beginning of 2024, prefer_column_name_to_alias was
- Now system.iceberg_history shows history
- Allow read-only mode
- Better introspection of in-memory caches
- Ignore databases with engines
- Allow filesystem_caches and named_collections in the clickhouse-local
- Fix highlighting of PARTITION
- Two mini improvements in Web UI: -
- MemoryResidentWithoutPageCache metric provides the amount of physical
- Mark manually logged exceptions
- Setting use_skip_indexes_if_final and use_skip_indexes_if_final_exact_mode now default
- When you have multiple queries
- PR addresses issues with the implementation
- When checking if a KeyCondition matches
- Clickhouse/ch aliases will invoke clickhouse-client instead
- Now that we have the keeper response
- Add profile event PageCacheReadBytes
- Fix logical error
Performance Improvement
22- Enable multiple-projection filtering support, allowing to use
- Use SLRU cache policy
- Remove contention
- Introduced an option to offload (de)compression and
- Performance improvements to all bloom filter types
- Introduced a happy path in UniqExactSet::merge
- Improve memory reuse efficiency and reduce page
- Update and reduce lock contention in query
- Trivial optimization for concatenateBlocks
- When selecting mark ranges
- Improve shutdown speed of Kafka engine
- Improve performance
- Don't profile processors if the log table
- Speed up toFixedString when the source is
- Don't process quota values if the user
- Fix performance regression
- Improve sharding key optimization on distributed query
- Avoid waiting
- Parallel replicas uses separate connection timeout, see
- With journal mkdir is written
- Postpone reading of Iceberg manifest files until
- Allow moving GLOBAL [NOT] IN predicate