The ClickHouse 26.2 release update, published on February 26, 2026, is one of the most substantial releases in the project’s history. Officially positioned as the Winter Release, it introduces:
- 25 new features
- 183 bug fixes (a record for a single release)
- Extensive query optimizer improvements
- Major performance gains across joins, JSON processing, and indexing
- Security and observability enhancements
This release is particularly significant for production users due to unified deduplication defaults, scheduler changes, and performance optimizations that materially improve real-world workloads.
Below is a structured breakdown based strictly on the official 26.2 changelog.
Breaking Changes in ClickHouse 26.2
Unified Deduplication for All Inserts
The most impactful change in the ClickHouse 26.2 release update:
Deduplication is now enabled by default for all inserts.
Previously:
- Sync inserts → deduplication ON
- Async inserts → deduplication OFF
- Materialized views → deduplication OFF
Now:
- Deduplication now applies uniformly to both synchronous and asynchronous inserts.
- Dependent materialized views also deduplicate by default.
To preserve old behavior:
deduplicate_insert='backward_compatible_choice'
deduplicate_blocks_in_dependent_materialized_views
Any ingestion-heavy pipeline relying on previous async semantics should validate behavior before upgrading.
Row Policy & FINAL Behavior Change
apply_row_policy_after_final is now enabled by default.
This changes how ROW POLICY interacts with FINAL and may alter query results in secured environments. Security-sensitive deployments should test carefully.
Variant Type Behavior Tightening
Applying incompatible functions to Variant subtypes now throws an exception instead of returning silent NULL.
Queries relying on silent fallback may now fail.
S3 Table Schema Validation
Creating S3 tables with explicitly defined columns now validates those column names against the remote file schema.
Previously mismatches were allowed. They now fail at creation time.
PostgreSQL DATE Mapping Update
PostgreSQL DATE is now inferred as Date32 instead of Date.
This prevents overflow and supports round-trip inserts back to PostgreSQL.
Subqueries Forbidden in ORDER BY
Subqueries are no longer allowed in ORDER BY and table key expressions.
Major New Features in ClickHouse 26.2
ClickStack Embedded UI
ClickStack, an embedded observability UI available in ClickHouse 26.2 and later, can be accessed directly from the built-in HTTP interface.

It allows:
- Querying logs
- Filtering records
- Visual data exploration
- Debugging workflows
- No external installation required.
TOTP Authentication Support
ClickHouse now supports Time-Based One-Time Passwords (TOTP).
This adds a second authentication factor compatible with authenticator apps, significantly strengthening security posture.
Lazy Loading of Tables
New database setting:
lazy_load_tables
Tables are materialized on first access instead of at server startup.
Benefits:
- Faster startup time
- Lower initial memory usage
- Improved scalability for large catalogs
Google BigLake Catalog Integration (Beta)
ClickHouse now supports querying Google BigLake catalogs.
Queries are executed by ClickHouse reading Parquet files and metadata rather than fully delegating to BigQuery.
This expands data lake interoperability.
OPTIMIZE … DRY RUN PARTS
New query capability:
OPTIMIZE <table> DRY RUN PARTS <part names>
Enables merge simulation without committing results.
Useful for:
- Merge correctness testing
- Benchmarking
- Debugging merge behavior
Automatic MinMax Indexing for Temporal Columns
New setting:
add_minmax_index_for_temporal_columns
Automatically creates minmax indexes for:
- Date
- Date32
- DateTime
- DateTime64
- Time / Time64
This simplifies index management and improves temporal query performance.
Text Index and Vector Search Now Production-Ready
Text Index is GA
The text index is now generally available.
It provides high-performance full-text search with tokenizers and preprocessors.
QBit Data Type is GA
The QBit data type for quantized bit-packed vector storage is now generally available and no longer requires enabling an experimental setting.
Combined with:
- Distributed vector search across replicas
- Runtime-tunable precision
ClickHouse can now support vector indexes larger than a single VM’s memory footprint.
This is a major milestone for approximate nearest neighbour workloads.
Performance Improvements in ClickHouse 26.2
This release contains the most extensive performance optimizations to date.
Deterministic Expressions in Primary Key
Any deterministic expression in ORDER BY can now be used for data skipping.
Example:
ORDER BY cityHash64(user_id)
ClickHouse can:
- Apply the expression to constants
- Use it for index pruning
- Optimize
=,IN,has - Optimize negated forms if injective
Join Performance Improvements
- Parallel processing of unmatched rows
- RIGHT and FULL JOIN improvements
- Up to 3× speed increases in some join workloads
enable_join_runtime_filtersenabled by default
JSON Processing Optimizations
Optimized JSON parsing for JSON data type.
Reported improvements:
- Up to 2.7× faster parsing performance
uniq Optimization
Improved batching and low-level optimizations.
Performance gains:
- ~20–22% faster for certain workloads
MinMax Index Calculation on Insert
Optimized index computation during INSERT.
Performance gains:
- ~17% faster index building
Scheduler Default Changed
Default scheduler is now:
concurrent_threads_scheduler = max_min_fair
Improves fairness under high concurrency by prioritizing queries with fewer allocated slots.
Statistics Cache Enabled by Default
use_statistics_cache is now ON by default.
Column statistics are cached in memory, improving optimizer efficiency without repeated file reads.
Observability & Diagnostics Improvements
New system tables and capabilities:
system.tokenizerssystem.user_defined_functionssystem.jemalloc_statssystem.jemalloc_profile_textsystem.fail_pointssystem.primes
Additional improvements:
- OpenTelemetry tracing for Keeper
- Improved crash logging
- New QueryNonInternal metric
- Enhanced Web UI visibility
These additions significantly expand cluster introspection capabilities.
Iceberg & Delta Lake Improvements
Iceberg Enhancements
ALTER TABLE RENAME COLUMNsupported- PREWHERE optimization enabled
- Production-ready inserts
- Replace Date with Date32
- Improved metadata validation
Delta Lake Improvements
- Optimized metadata scanning
- Correct table statistics reporting
- Partitioned insert fixes
- macOS support added
Record Stability Improvements
The ClickHouse 26.2 release update includes:
- 183 bug fixes (project record)
- Numerous race condition fixes
- Join correctness fixes
- Distributed query fixes
- Memory safety improvements
- Deduplication fixes
- Vector index stability improvements
This release materially improves correctness under concurrency and distributed workloads
Upgrade Checklist
Before upgrading:
- Validate deduplication behavior.
- Test row policy & FINAL semantics.
- Validate ingestion pipelines using async inserts.
- Benchmark join-heavy queries.
- Review Iceberg/Delta workflows.
- Confirm scheduler behavior under load.
Conclusion
The ClickHouse 26.2 release update is a landmark release.
Key themes:
- Unified insert semantics
- Production-ready text search and vector search
- Major join and JSON performance improvements
- Automatic temporal indexing
- Stronger security via TOTP
- Embedded observability with ClickStack
- Record-breaking bug fixes
For production environments, this release delivers measurable performance gains while tightening correctness and security guarantees.
Teams running analytical workloads at scale should evaluate 26.2 carefully, particularly around deduplication defaults and scheduler changes.
