v1.17.1

electroplix/Design-Systemv1.17.1Mar 27, 2026by timvisee

AI Summary

This release focuses on performance optimizations such as deferred point updates and non-blocking Gridstore flushes to reduce search tail latencies. It includes critical bug fixes for WAL (Write-Ahead Log) operations and panics, as well as a security patch for snapshot recovery.

Key Highlights

  • Performance: Defer point updates efficiently with `prevent_unoptimized=true`
  • Performance: Non-blocking Gridstore flushes to reduce search tail latencies
  • Bug Fixes: Multiple fixes for WAL reading, replay, and delta transfer issues
  • Security: Force snapshot recovery from snapshot directory only
  • Preview: Per-collection metrics in Prometheus available in build

New Features

  • API for reading audit log entries (Preview)
  • Maximum batch size config in strict mode (Preview)
  • Feature flag: `prevent_unoptimized=true`

Full Release Notes

# Change log

## Improvements

* [milestone#46](https://github.com/qdrant/qdrant/milestone/46?closed=1) - Defer point updates, efficiently apply and optimize points with `prevent_unoptimized=true`
* https://github.com/qdrant/qdrant/pull/8188 - Make Gridstore flushes non-blocking to reduce search tail latencies
* https://github.com/qdrant/qdrant/pull/8235 - Improve performance of filtered search in case of singular payload value
* https://github.com/qdrant/qdrant/pull/8402 - Add request tracing ID into audit log
* https://github.com/qdrant/qdrant/pull/8460 - Propagate WAL errors instead of panicking during loading of shards
* https://github.com/qdrant/qdrant/pull/8301 - Allow peer to bootstrap with used URI if empty

## Bug fixes

* https://github.com/qdrant/qdrant/pull/8177 - GPU: fix raw Vulkan name pointer type
* https://github.com/qdrant/qdrant/pull/8193 - Fix creation of uninitialized shard key with replication factor > 1, fixing tiered multi-tenancy workflow
* https://github.com/qdrant/qdrant/pull/8217 - Prevent `min_should` panic on large amount of conditions
* https://github.com/qdrant/qdrant/pull/8179 - Fix for restore of cluster snapshots which creates unnecessary replicas in Partial state
* https://github.com/qdrant/qdrant/pull/8220 - Fix Server disconnected without sending a response error while performing concurrent ingestion using
* https://github.com/qdrant/qdrant/pull/8341 - Security patch to force snapshot recovery from snapshot directory only
* https://github.com/qdrant/qdrant/pull/8373 - Fix lock for collection-level operations during shard transfer
* https://github.com/qdrant/qdrant/pull/8438 - Do not fail on collection-level operations with dummy shard
* https://github.com/qdrant/qdrant/pull/8455 - Fix WAL reading issue introduced in 1.17.0
* https://github.com/qdrant/qdrant/pull/8454 - Fix another panic in WAL replay
* https://github.com/qdrant/qdrant/pull/8475 - Fix for WAL delta transfer: reject truncated recovery points before equal-pruning
* https://github.com/qdrant/qdrant/pull/8514 - Fix incorrect warning in geo-index
* https://github.com/qdrant/qdrant/pull/8374 - Prevent locking shard holder for a long time in slow stream records transfers
* https://github.com/qdrant/qdrant/pull/8480 - Fix panic in optimizer logging
* https://github.com/qdrant/qdrant/pull/8449 - Fix panic in chunked vector storage

## Preview

This features are not officially released yet, but available in the build:

* https://github.com/qdrant/qdrant/pull/8214 - Per-collection metrics in Prometheus
* https://github.com/qdrant/qdrant/pull/8498 - API for reading audit log entries
* https://github.com/qdrant/qdrant/pull/8469 - Maximum batch size config in strict mode

## Edge

* Rust Crate for Qdrant Edge v0.6.0 - https://crates.io/crates/qdrant-edge
* Python Package for Qdrant Edge v0.6.0 - https://pypi.org/project/qdrant-edge-py/