xzfc
5c8da73447
Fix hnsw_incremental_build benchmark ( #7978 )
...
* Fix hnsw_incremental_build benchmark
* More docs
2026-02-09 23:26:12 +01:00
Ivan Pleshkov
411011477d
Remove ChunkedVectorStorage trait ( #7977 )
...
* Remove ChunkedVectorStorage trait
* fix rocksdb feature
* fix multidense rocksdb
2026-02-09 23:26:00 +01:00
b2ad969b11
in ram single mmap file ( #7971 )
...
* WIP: introduce new vector store type
* handling of InRamMmap
* fmt
* feature-flag
* fmt
* Use if else
Co-authored-by: Roman Titov <ffuugoo@users.noreply.github.com >
* Update lib/common/common/src/flags.rs
Co-authored-by: Tim Visée <tim+github@visee.me >
* also choose madvise for single-file in-ram-mmap
* simplify generics
* gpu fix
* fix bug
---------
Co-authored-by: Tim Visée <tim+github@visee.me >
Co-authored-by: Roman Titov <ffuugoo@users.noreply.github.com >
2026-02-09 23:23:45 +01:00
Roman Titov
096f68fb68
Improve SnapshotManifest/SegmentManifest construction ( #7961 )
...
* Improve `SnapshotManifest`/`SegmentManifest` construction
* fixup! Improve `SnapshotManifest`/`SegmentManifest` construction
Fix stupidity 😬
2026-02-09 23:22:45 +01:00
Tim Visée
311ad575ef
Hotfix: fix search aggregator error with limit 0 ( #7972 )
...
* Hotfix: fix search aggregator error with limit 0
* Don't handle points if limit is zero
2026-02-09 23:22:17 +01:00
Lior.Chen
9be90ebd7a
fix: replica state peer id remap ( #7969 )
2026-02-09 23:21:53 +01:00
Tim Visée and dependabot[bot]
7b5b54a4e7
build(deps): bump lodash in /tools/schema2openapi ( #7968 )
...
Bumps [lodash](https://github.com/lodash/lodash ) from 4.17.21 to 4.17.23.
- [Release notes](https://github.com/lodash/lodash/releases )
- [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23 )
---
updated-dependencies:
- dependency-name: lodash
dependency-version: 4.17.23
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:21:45 +01:00
krapcys1-maker
6ab5e39f20
fix: improve datetime_range RFC3339 parse error ( #7919 )
...
* fix: improve REST datetime_range RFC3339 error message
* docs: add docstrings for datetime_range parsing
* fix: avoid serde_json intermediary for non-human-readable deserialization
* fix: avoid serde_json intermediary for non-human-readable range deserialization
* refactor(segment): reduce Condition JSON routing boilerplate
* fix(segment): preserve binary datetime deserialization compatibility
* fix(segment): preserve binary datetime deserialization
* test(segment): add datetime deserialization regression tests
* chore: rerun CI
* chore: rerun CI (2)
* refactor(segment): simplify datetime deserialization
2026-02-09 23:20:55 +01:00
xzfc
de04a66d3c
Sync LocalShard::optimizers ( #7962 )
2026-02-09 23:20:48 +01:00
xzfc
6abd5a1776
Enforce segment UUIDs ( #7958 )
...
* Swap docstrings for segment_ids/segment_uuids
Terse internal docs, detailed user-facing docs, not vice versa.
* Enforce segment UUIDs
* Export upcoming segment UUID to telemetry
* Add `optimize_for_test` wrapper
* Tune log message
Reason: the UUID is now guaranteed.
* Improve argument naming/docs
2026-02-09 23:20:44 +01:00
Kumar Shivendu
cf0ae0eb81
Allow partial snapshots even when no local shard exists ( #7959 )
...
* Allow partial snapshots even when no local shard exists
* Avoid checking for empty old manifest
* Handle CollectionError::NotFound and throw error for others
* fmt
* remove comment
* Cleaner error handling
* Simplify code
* Minor fix
2026-02-09 23:19:55 +01:00
Tim Visée
07f12e1277
Fix optimizer error if segment is already under optimization ( #7960 )
2026-02-09 23:19:45 +01:00
Luis Cossío and Tim Visée
1e23057ab8
More graceful handle of flush cancellation ( #7798 )
...
* Reapply "return an error when cancelling a flush (#7781 )" (#7799 )
This reverts commit 4a1103acb7 .
* log::trace cancellation of components
* gracefully handle flush cancellation inside segment flusher
* Update lib/segment/src/segment/entry.rs
Co-authored-by: Tim Visée <tim+github@visee.me >
* don't wrap cancellation errors
---------
Co-authored-by: Tim Visée <tim+github@visee.me >
2026-02-09 23:19:37 +01:00
Arnaud Gourlay
93cc834d39
Remove unecessary flag in OperationData ( #7957 )
2026-02-09 23:19:31 +01:00
Roman Titov
3b2cdd6b9b
Always Copy-on-Write when updating payload in immutable segments ( #7952 )
2026-02-09 23:17:56 +01:00
Andrey Vasnetsov
aeecb1f0fc
Generate *.pyi files for EDGE ( #7943 )
...
* generate pui files for edge functions
* fix stup for `lambda_`
2026-02-09 23:17:27 +01:00
Luis Cossío
b12abffce9
move cfg statements ( #7954 )
2026-02-09 23:17:23 +01:00
dependabot[bot]
6365fc3253
build(deps): bump cc from 1.2.52 to 1.2.53 ( #7938 )
...
Bumps [cc](https://github.com/rust-lang/cc-rs ) from 1.2.52 to 1.2.53.
- [Release notes](https://github.com/rust-lang/cc-rs/releases )
- [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/cc-rs/compare/cc-v1.2.52...cc-v1.2.53 )
---
updated-dependencies:
- dependency-name: cc
dependency-version: 1.2.53
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:16:24 +01:00
dependabot[bot]
70d0c1f1d4
build(deps): bump thiserror from 2.0.17 to 2.0.18 ( #7940 )
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 2.0.17 to 2.0.18.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/2.0.17...2.0.18 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-version: 2.0.18
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:16:20 +01:00
dependabot[bot]
7653d00af4
build(deps): bump data-encoding from 2.9.0 to 2.10.0 ( #7942 )
...
Bumps [data-encoding](https://github.com/ia0/data-encoding ) from 2.9.0 to 2.10.0.
- [Commits](https://github.com/ia0/data-encoding/compare/v2.9.0...v2.10.0 )
---
updated-dependencies:
- dependency-name: data-encoding
dependency-version: 2.10.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:16:15 +01:00
Kumar Shivendu and timvisee
14dbd5e4cc
Expose segment UUIDs in telemetry response ( #7735 )
...
* Add segment ID in telemetry response
* Migrate optimization log segment IDS to use UUIDs
* fmt
* clippy
* Bring back proxy segment SegmentEntry impl
* update openapi spec
* Bring back segment ID
* update comment
* Precompute segment uuid from filesyste while creating segment
* Update return types
* Update OpenAPI spec
* remove segment_ prefix from uuid field and use inline block
* Update OpenAPI spec
* Trigger CI
* clippy
* Improve comments to differentiate between segment id and uuid
* Remove duplicate function that shadowed segment entry function
---------
Co-authored-by: timvisee <tim@visee.me >
2026-02-09 23:16:07 +01:00
Daniel Boros and generall
00e0a7fc24
feat/test-timeout ( #7920 )
...
* feat: add timeout tests
* fix: timeout test
* fix: api urls
* fix: test
* feat: add staging api def
* feat: add parallel executor for tests
* fix: imports
* fix: ci/cd
* rollback openapi schema change
---------
Co-authored-by: generall <andrey@vasnetsov.com >
2026-02-09 23:15:44 +01:00
Andrey Vasnetsov
7b9f094b13
rollback experimental fix ( #7948 )
2026-02-09 23:15:37 +01:00
dependabot[bot]
314f21003c
build(deps): bump quote from 1.0.42 to 1.0.43 ( #7937 )
...
Bumps [quote](https://github.com/dtolnay/quote ) from 1.0.42 to 1.0.43.
- [Release notes](https://github.com/dtolnay/quote/releases )
- [Commits](https://github.com/dtolnay/quote/compare/1.0.42...1.0.43 )
---
updated-dependencies:
- dependency-name: quote
dependency-version: 1.0.43
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:15:32 +01:00
dependabot[bot]
c5f4978d98
build(deps): bump chrono from 0.4.42 to 0.4.43 ( #7941 )
...
Bumps [chrono](https://github.com/chronotope/chrono ) from 0.4.42 to 0.4.43.
- [Release notes](https://github.com/chronotope/chrono/releases )
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md )
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.42...v0.4.43 )
---
updated-dependencies:
- dependency-name: chrono
dependency-version: 0.4.43
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:15:26 +01:00
dependabot[bot]
0c1e584dfc
build(deps): bump rustls-pki-types from 1.13.2 to 1.14.0 ( #7939 )
...
Bumps [rustls-pki-types](https://github.com/rustls/pki-types ) from 1.13.2 to 1.14.0.
- [Release notes](https://github.com/rustls/pki-types/releases )
- [Commits](https://github.com/rustls/pki-types/compare/v/1.13.2...v/1.14.0 )
---
updated-dependencies:
- dependency-name: rustls-pki-types
dependency-version: 1.14.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:15:21 +01:00
dependabot[bot]
3ad36e55e8
build(deps): bump url from 2.5.7 to 2.5.8 ( #7936 )
...
Bumps [url](https://github.com/servo/rust-url ) from 2.5.7 to 2.5.8.
- [Release notes](https://github.com/servo/rust-url/releases )
- [Commits](https://github.com/servo/rust-url/compare/v2.5.7...v2.5.8 )
---
updated-dependencies:
- dependency-name: url
dependency-version: 2.5.8
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:15:16 +01:00
dependabot[bot]
b9bd1e0f5b
build(deps): bump bitpacking from 0.9.2 to 0.9.3 ( #7935 )
...
Bumps [bitpacking](https://github.com/quickwit-oss/bitpacking ) from 0.9.2 to 0.9.3.
- [Release notes](https://github.com/quickwit-oss/bitpacking/releases )
- [Changelog](https://github.com/quickwit-oss/bitpacking/blob/master/CHANGELOG.md )
- [Commits](https://github.com/quickwit-oss/bitpacking/commits )
---
updated-dependencies:
- dependency-name: bitpacking
dependency-version: 0.9.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:15:07 +01:00
dependabot[bot]
20ea670f3c
build(deps): bump object_store from 0.13.0 to 0.13.1 ( #7934 )
...
Bumps [object_store](https://github.com/apache/arrow-rs-object-store ) from 0.13.0 to 0.13.1.
- [Changelog](https://github.com/apache/arrow-rs-object-store/blob/main/CHANGELOG-old.md )
- [Commits](https://github.com/apache/arrow-rs-object-store/compare/v0.13.0...v0.13.1 )
---
updated-dependencies:
- dependency-name: object_store
dependency-version: 0.13.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:15:00 +01:00
xzfc
cada712738
GET /optimizations: re-plan on each request ( #7945 )
2026-02-09 23:14:02 +01:00
Andrey Vasnetsov and timvisee
2de3e774f0
async scroll ( #7928 )
...
* implementation of async batch vectors reading
* EXPERIMENT: async-io for reading on scroll
* disable on non-linux
* make retrieve sequential for test
* wip: implement vector reading via callback
* simplify operations, remove duplicates
* use batch retrieve also for post-processing search results
* clippy
* fix tests
* review fixes
* Replace big match statement with simple option filter and equal check
* Inline format arguments
---------
Co-authored-by: timvisee <tim@visee.me >
2026-02-09 23:12:40 +01:00
Andrey Vasnetsov and Roman Titov
0ed3a3a5ee
simplify edge config ( #7933 )
...
* simplify edge config
* Accept default vector config or explicit vector config map when creating `EdgeConfig`
* fixup! Accept default vector config or explicit vector config map when creating `EdgeConfig`
Update examples
* upd tests
* bump edge version to v0.5.0
---------
Co-authored-by: Roman Titov <ffuugoo@users.noreply.github.com >
2026-02-09 23:12:30 +01:00
Andrey Vasnetsov
a68ae6dd50
do not generate new ids if not needed ( #7932 )
2026-02-09 23:12:22 +01:00
Luis Cossío
262ae08636
[cluster telemetry] Include shards information ( #7886 )
...
* make some existing fields optional
particularly, RemoteShardTelemetry's `searches` and `updates`, and
LocalShardTelemetry's `optimizations`
* Include shards information in cluster telemetry
* upd openapi
* nits
* only include partial snapshot info if non-empty
* fixes
2026-02-09 23:12:01 +01:00
Arnaud Gourlay
eb48738cda
Optimize SegmentBuilder update with proper Vec sizing ( #7921 )
2026-02-09 23:11:36 +01:00
Andrey Vasnetsov and timvisee
fdceb11a18
implement a new configuration for read fan-out delay ( #7929 )
...
* implement a new configuration for read fan-out delay
* upd schema
* Update read_fan_out_delay_ms comment
---------
Co-authored-by: timvisee <tim@visee.me >
2026-02-09 23:10:13 +01:00
Arnaud Gourlay
fe3316e265
Optimize allocation in max_available_vectors_size_in_bytes ( #7924 )
2026-02-09 23:10:01 +01:00
Roman Titov
da70bf13c6
Update qdrant-edge-py version to 0.4.0 ( #7926 )
...
* Update `qdrant-edge-py` version to 0.4.0
* fixup! Update `qdrant-edge-py` version to 0.4.0
🙄 🙄 🙄
2026-02-09 23:08:27 +01:00
Roman Titov
3184b53a32
Rename edge::Shard into edge::EdgeShard ( #7925 )
2026-02-09 23:08:22 +01:00
Andrey Vasnetsov
ac2c18e1fe
Validate vector name in matrix request ( #7923 )
...
* validate `using` param
* fix slop
2026-02-09 23:08:14 +01:00
xzfc
d9d2801c71
Expose planned optimizations in API ( #7784 )
...
* Expose pending optimizations in API
* Address review comments
2026-02-09 23:07:34 +01:00
Andrey Sakharov and Сахаров Андрей Александрович
95603434cb
[perf] Reduce unnecessary cloning ( #7913 )
...
* Reduce unnecessary cloning
* Clippy warnings fixed
* well lets revert clippy changes
* newline
---------
Co-authored-by: Сахаров Андрей Александрович <a.a.sakharov@tinkoff.ru >
2026-02-09 23:07:28 +01:00
Roman Titov
1a15be85ef
Flush edge::Shard on Drop ( #7911 )
...
And add explicit `flush` and `close` methods
2026-02-09 23:07:20 +01:00
ee44157406
Prevent unoptimized updates ( #7643 )
...
* wip: wait for optimization before applying update
* implement api parameter
* nits
* fix deadloack when no optimizers are running
* release handle mutex
* Derive PartialEq
* Remove unused function
* fix missing kb conversion in threshold
* Update lib/api/src/grpc/proto/collections.proto
Co-authored-by: Tim Visée <tim+github@visee.me >
* sync comment change
---------
Co-authored-by: Arnaud Gourlay <arnaud.gourlay@gmail.com >
Co-authored-by: timvisee <tim@visee.me >
Co-authored-by: Tim Visée <tim+github@visee.me >
2026-02-09 23:04:32 +01:00
Ivan Pleshkov
8dc1544916
Use p square to find ranges ( #7733 )
...
* use p square to find ranges
* use sample size
* add stopper checks
* review remarks
* review remarks
2026-02-09 23:04:25 +01:00
xzfc
722fa2fc31
OptimizationPlanner ( #7752 )
...
* refactor(SegmentHolder::iter): use SegmentId, not &SegmentId
* refactor(SegmentHolder): Add SegmentHolder::iter_original
* refactor: inline *Optimizer::worst_segment() into SegmentOptimizer::check_condition
* refactor(ConfigMismatchOptimizer): extract config_mismatch function
* Fix comments
* refactor: consistent variable naming
It's `segment_id`/`_segment_id`, not `idx`/`sid`/`x.0`/`_`.
* refactor(IndexingOptimizer): extract large chunks of logic
* refactor(SegmentOptimizer): simplify unwrap_proxy/handle_cancellation
* SegmentHolder: add running_optimizations counter
* OptimizationPlanner
* MergeOptimizer: allow merging two segments, update doc
2026-02-09 23:03:57 +01:00
dependabot[bot]
811cf94859
build(deps): bump proc-macro2 from 1.0.104 to 1.0.105 ( #7899 )
...
Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2 ) from 1.0.104 to 1.0.105.
- [Release notes](https://github.com/dtolnay/proc-macro2/releases )
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.104...1.0.105 )
---
updated-dependencies:
- dependency-name: proc-macro2
dependency-version: 1.0.105
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:03:51 +01:00
dependabot[bot]
b64c644fa5
build(deps): bump flate2 from 1.1.5 to 1.1.8 ( #7905 )
...
Bumps [flate2](https://github.com/rust-lang/flate2-rs ) from 1.1.5 to 1.1.8.
- [Release notes](https://github.com/rust-lang/flate2-rs/releases )
- [Commits](https://github.com/rust-lang/flate2-rs/compare/1.1.5...1.1.8 )
---
updated-dependencies:
- dependency-name: flate2
dependency-version: 1.1.8
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:03:47 +01:00
dependabot[bot]
30c1b5a77c
build(deps): bump indexmap from 2.12.1 to 2.13.0 ( #7901 )
...
Bumps [indexmap](https://github.com/indexmap-rs/indexmap ) from 2.12.1 to 2.13.0.
- [Changelog](https://github.com/indexmap-rs/indexmap/blob/main/RELEASES.md )
- [Commits](https://github.com/indexmap-rs/indexmap/compare/2.12.1...2.13.0 )
---
updated-dependencies:
- dependency-name: indexmap
dependency-version: 2.13.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:03:42 +01:00
dependabot[bot]
30620c7c33
build(deps): bump zerocopy from 0.8.31 to 0.8.33 ( #7904 )
...
Bumps [zerocopy](https://github.com/google/zerocopy ) from 0.8.31 to 0.8.33.
- [Release notes](https://github.com/google/zerocopy/releases )
- [Changelog](https://github.com/google/zerocopy/blob/main/CHANGELOG.md )
- [Commits](https://github.com/google/zerocopy/compare/v0.8.31...v0.8.33 )
---
updated-dependencies:
- dependency-name: zerocopy
dependency-version: 0.8.33
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-09 23:03:37 +01:00