Commit Graph

5465 Commits

Author SHA1 Message Date
Andrey Vasnetsov
6e79f8bf02 Untagged Enum for FeedbackStrategy (#8171)
* [manual] make untagged enum for consistent API for FeedbackStrategy

* add #[validate(nested)]

---------

Co-authored-by: Luis Cossío <luis.cossio@outlook.com>
2026-02-18 16:55:47 +01:00
Tim Visée
e160308255 Don't lock Gridstore bitmask for full duration of flush (#8169) 2026-02-18 16:29:04 +01:00
Arnaud Gourlay
8970e7a560 Log peer version failing check (#8170)
* Log peer version failing check

* log peers without metadata

* please the rabbit
2026-02-18 14:36:56 +01:00
Leo Henon
2ccc5286ec Fix lossy error propagation in consensus (#8156)
Co-authored-by: leohenon <77656081+lhenon999@users.noreply.github.com>
2026-02-18 14:08:33 +01:00
Leo Henon
b9f543dd4b Fix flaky test_cancel_optimization (#8159)
Co-authored-by: leohenon <77656081+lhenon999@users.noreply.github.com>
2026-02-18 14:07:58 +01:00
Andrey Vasnetsov
c7b63984ac Timeout for snapshot stream (#8166)
* [AI] Imeplement timeout for reading snapshot stream

* remove debug code

* [no-AI] fix error type and cancellation test(not the one which actually found the problem)
2026-02-18 11:04:42 +01:00
Tim Visée
efda48b0f7 Also bump prevent_unoptimized parameter in update handler (#8165) 2026-02-17 17:40:39 +01:00
Arnaud Gourlay
8813241975 Optimize process search results (#8163) 2026-02-17 15:42:18 +01:00
xzfc
4cabb7fd8e Merge io and memory into common (#8155)
* Unify parking_lot/arc_lock feature

* Move lib/common/{io,memory}/* -> lib/common/common/*

- Mmap-related items are grouped into `common::mmap` sub-module:
  - `memory/src/chunked_utils.rs`      -> `common/src/mmap/chunked.rs`
  - `memory/src/madvise.rs`            -> `common/src/mmap/advice.rs`
  - `memory/src/mmap_ops.rs`           -> `common/src/mmap/ops.rs`
  - `memory/src/mmap_type_readonly.rs` -> `common/src/mmap/mmap_readonly.rs`
  - `memory/src/mmap_type.rs`          -> `common/src/mmap/mmap_rw.rs`
- Filesystem-related items are grouped into `common::fs` sub-module:
  - `common/src/fs.rs`          -> `common/src/fs/sync.rs`
  - `io/src/file_operations.rs` -> `common/src/fs/ops.rs`
  - `io/src/move_files.rs`      -> `common/src/fs/move.rs`
  - `io/src/safe_delete.rs`     -> `common/src/fs/safe_delete.rs`
  - `memory/src/checkfs.rs`     -> `common/src/fs/check.rs`
  - `memory/src/fadvise.rs`     -> `common/src/fs/fadvise.rs`
- Rest is moved straight into `common`:
  - `io/src/storage_version.rs` -> `common/src/storage_version.rs`

The old `io` and `memory` are now hollow crates that re-export items
from `common`. These hollow crates will be removed in next commits.

* Replace uses of `io` and `memory` with new paths in `common`

Since `io` and `memory` are just re-exports of `common`, these
replacements are no-op.

* Remove `io` and `memory` crates
2026-02-17 10:58:59 +01:00
Arnaud Gourlay
cb533644c8 Optimize MmapPointToValues from_iter (#8158)
* Optimize MmapPointToValues from_iter

* fix const typo
2026-02-17 10:36:33 +01:00
xzfc
40556f82a1 Fix Cargo.lock (#8157) 2026-02-17 08:27:42 +01:00
dependabot[bot]
d0ae4b031d build(deps): bump lukemathwalker/cargo-chef (#8144)
Bumps lukemathwalker/cargo-chef from latest-rust-1.93.0-bookworm to latest-rust-1.93.1-bookworm.

---
updated-dependencies:
- dependency-name: lukemathwalker/cargo-chef
  dependency-version: latest-rust-1.93.1-bookworm
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-17 02:20:25 +00:00
dependabot[bot]
7bd1c8f339 build(deps): bump pyo3 from 0.28.0 to 0.28.1 (#8154)
Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.28.0 to 0.28.1.
- [Release notes](https://github.com/pyo3/pyo3/releases)
- [Changelog](https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md)
- [Commits](https://github.com/pyo3/pyo3/compare/v0.28.0...v0.28.1)

---
updated-dependencies:
- dependency-name: pyo3
  dependency-version: 0.28.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-17 02:16:48 +00:00
dependabot[bot]
9328cef9cc build(deps): bump syn from 2.0.114 to 2.0.116 (#8153)
Bumps [syn](https://github.com/dtolnay/syn) from 2.0.114 to 2.0.116.
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.114...2.0.116)

---
updated-dependencies:
- dependency-name: syn
  dependency-version: 2.0.116
  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-17 02:16:43 +00:00
dependabot[bot]
51b3c302a5 build(deps): bump fs-err from 3.2.2 to 3.3.0 (#8152)
Bumps [fs-err](https://github.com/andrewhickman/fs-err) from 3.2.2 to 3.3.0.
- [Changelog](https://github.com/andrewhickman/fs-err/blob/main/CHANGELOG.md)
- [Commits](https://github.com/andrewhickman/fs-err/compare/3.2.2...3.3.0)

---
updated-dependencies:
- dependency-name: fs-err
  dependency-version: 3.3.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-17 02:16:39 +00:00
dependabot[bot]
838d0bb4c5 build(deps): bump uuid from 1.20.0 to 1.21.0 (#8151)
Bumps [uuid](https://github.com/uuid-rs/uuid) from 1.20.0 to 1.21.0.
- [Release notes](https://github.com/uuid-rs/uuid/releases)
- [Commits](https://github.com/uuid-rs/uuid/compare/v1.20.0...v1.21.0)

---
updated-dependencies:
- dependency-name: uuid
  dependency-version: 1.21.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-17 02:16:34 +00:00
dependabot[bot]
ff06759757 build(deps): bump cc from 1.2.55 to 1.2.56 (#8150)
Bumps [cc](https://github.com/rust-lang/cc-rs) from 1.2.55 to 1.2.56.
- [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.55...cc-v1.2.56)

---
updated-dependencies:
- dependency-name: cc
  dependency-version: 1.2.56
  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-17 02:16:30 +00:00
dependabot[bot]
ca3c206c95 build(deps): bump clap from 4.5.57 to 4.5.58 (#8149)
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.57 to 4.5.58.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.57...clap_complete-v4.5.58)

---
updated-dependencies:
- dependency-name: clap
  dependency-version: 4.5.58
  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-17 02:15:39 +00:00
dependabot[bot]
3286d47547 build(deps): bump futures from 0.3.31 to 0.3.32 (#8147)
Bumps [futures](https://github.com/rust-lang/futures-rs) from 0.3.31 to 0.3.32.
- [Release notes](https://github.com/rust-lang/futures-rs/releases)
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.31...0.3.32)

---
updated-dependencies:
- dependency-name: futures
  dependency-version: 0.3.32
  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-17 02:15:26 +00:00
dependabot[bot]
638d6c61a2 build(deps): bump arc-swap from 1.8.1 to 1.8.2 (#8146)
Bumps [arc-swap](https://github.com/vorner/arc-swap) from 1.8.1 to 1.8.2.
- [Changelog](https://github.com/vorner/arc-swap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/vorner/arc-swap/compare/v1.8.1...v1.8.2)

---
updated-dependencies:
- dependency-name: arc-swap
  dependency-version: 1.8.2
  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-17 02:15:15 +00:00
dependabot[bot]
591ee56ee4 build(deps): bump indicatif from 0.18.3 to 0.18.4 (#8145)
Bumps [indicatif](https://github.com/console-rs/indicatif) from 0.18.3 to 0.18.4.
- [Release notes](https://github.com/console-rs/indicatif/releases)
- [Commits](https://github.com/console-rs/indicatif/compare/0.18.3...0.18.4)

---
updated-dependencies:
- dependency-name: indicatif
  dependency-version: 0.18.4
  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-17 02:13:20 +00:00
Andrey Vasnetsov
345621f447 Expose shard snapshot API (#8132)
* [AI] generate openapi schema for stream download of shard snapshot

* bump number of APIs

* cover API with access test

* fix test

* fix test
2026-02-16 13:34:44 +01:00
Andrey Vasnetsov
e9cd8f69a2 prevent proxy locking while snapshotting (#8131)
* [manual] do not lock proxy segmen while accessing wrapped segment

* fmt

* [manual] remove extra update lock
2026-02-16 10:16:00 +01:00
Leo Henon
d0e2f9471b Fix flaky test_rate_more_per_minute (#8135)
Co-authored-by: lhenon999 <77656081+lhenon999@users.noreply.github.com>
2026-02-15 16:49:42 +01:00
generall
72cc67421b add missing timeout parameter for delete points API 2026-02-15 16:11:07 +01:00
Tim Visée
b4a067e41f Relax resharding version check, don't require 1.16.4-dev or up (#8129) 2026-02-14 00:02:28 +01:00
Roman Titov
5bb06d9ec0 Fix too_many_internal_resets error (#8128)
Patch `tonic` and `hyper` crates to expose `max_local_error_reset_streams`,
and *disable* it when creating internal gRPC connections
2026-02-13 18:21:56 +01:00
Arnaud Gourlay
5ffc6a45a8 Remove update queue opnum from CollectionInfo (#8127) 2026-02-13 17:36:54 +01:00
Andrey Vasnetsov
0b68c7d0eb [manual] skip extra links indexing if vectors are deleted (#8125) 2026-02-13 13:58:42 +01:00
Andrey Vasnetsov
171b7cffba distributed optimization info (#8120)
* [AI] initial implementation

* [AI] review fixes

* [manaul] some small fix

* [AI] fix issue about serializing optional fields

* upd schema

* [manual] review fixes

* [manual] only ask updatable replicas about optimizations
2026-02-13 13:58:17 +01:00
Arnaud Gourlay
134ffde18f uv dependencies upgrade (#8124) 2026-02-13 12:05:30 +01:00
Roman Titov
05011e81cd Ensure WAL and shard clocks consistency when creating shard snapshot (#8104) 2026-02-13 11:27:02 +01:00
Arnaud Gourlay
db4aa33e6e Update Python dependencies: urllib3, protobuf, werkzeug, pyasn1 (#8119)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: agourlay <606963+agourlay@users.noreply.github.com>
2026-02-13 08:21:17 +01:00
Arnaud Gourlay
a520471eaa Update console-subscriber 0.5.0 (#8116) 2026-02-12 19:36:48 +01:00
Ivan Pleshkov
d8c8ba6b98 Dont lock WAL while serialization (#8093)
* dont lock WAL while serialization

* review remarks

* remove error log, its already logged in update worker
2026-02-12 16:34:22 +01:00
xzfc
bd9c87bbbe Add doc for #[pyclass_repr] (#8110) 2026-02-12 14:48:15 +00:00
tellet-q
3c5497e0d3 Add new stage in TransferStage (#8113)
* Add new stage to stream records transfers

* Report better names to users
2026-02-12 14:13:52 +01:00
Andrey Vasnetsov
e4bafb04f5 undeprecated vector conversions (#8114) 2026-02-12 13:34:55 +01:00
Arnaud Gourlay
a538a90de8 Fix update queue length aggregation (#8108) 2026-02-12 13:14:36 +01:00
Andrey Vasnetsov
af7608b101 Ignore cacert for internal requests if not configured (#8099)
* ignore cert verification if not configured

* also ignore hostnames

* script for manually testing tls clsuter
2026-02-12 10:59:38 +01:00
Andrey Vasnetsov
538eb74a32 Limit number of Clocks (#8105)
* [manual] limit number of update clocks to 64 to prevent permanent overhead created by spikes

* explicit yield + fix tests

* Add explicit comment on why we yield async thread

* In resolve_wal_delta_randomized test fix clock cleanup and satisfy test

* Use tokio timeout

Co-authored-by: Roman Titov <ffuugoo@users.noreply.github.com>

---------

Co-authored-by: Tim Visée <tim+github@visee.me>
Co-authored-by: timvisee <tim@visee.me>
Co-authored-by: Roman Titov <ffuugoo@users.noreply.github.com>
2026-02-12 10:56:32 +01:00
Andrey Vasnetsov
9735bf7bd3 Fix failed requests count reporting (#7944)
* add grpc status into grpc meterics similar to rest

* rm *_responses_fail_total metric

* upd openapi defs for grpc
2026-02-11 18:17:26 +01:00
Andrey Vasnetsov
78853ed47c RFC: guideline for AI contributions (#8076) 2026-02-11 18:03:56 +01:00
Tim Visée
c63f9eef29 Fix stream records transfer data race, losing pending updates (#8103)
* Add integration test to assert all queued updates are also transferred

* Plunge update queue in stream records transfers

* Migrate existing plunger usages to new plunge helper

* Skip test if not compiled with staging flag

* Only send delay operation when staging feature is enabled

* Reformat

* Fix review remarks
2026-02-11 17:18:44 +01:00
Tim Visée
4822d1a3d9 Revert "Fix panic on startup with old storage, reenable old shard key format (#7564)" (#7565)
This reverts commit 84b2fb8793.

This reverts pull request <https://github.com/qdrant/qdrant/pull/7564>.
2026-02-11 17:18:28 +01:00
Luis Cossío
a43780941b [relevance feedback] add rest and grpc interfaces (#7399)
* add rest and grpc interfaces

Also handle inference for this query

* follow refactor from base branch

* renaming from Ms Cooper

* get started on validation testing

* more validations

* test equivalence with query when less than 2 feedback elements

* rename feedback query to relevance_feedback query

* fix extraction of context pairs

* rename feedback vector to example

* make coderabbit happier

* upd test

---------

Co-authored-by: Arnaud Gourlay <arnaud.gourlay@gmail.com>
2026-02-11 16:05:11 +01:00
Arnaud Gourlay
8222696f6c Add unused_async lint (#8102) 2026-02-11 14:50:33 +01:00
Andrey Vasnetsov
c1df532b45 non blocking reading from wal (#8101)
* move wal.lock.read into a spawn_blocking

* [AI] In the file with update_worker bloast the code, please try to move it out of the main function, so the function itself stay clean
2026-02-11 14:38:19 +01:00
tellet-q
3ba62e37b6 Add a test to check if creating snapshots blocks other operations (#7510)
* Add a test to check if creating snapshots blocks other operations
2026-02-11 12:20:47 +01:00
tellet-q
9b3939e008 Add test for consensus' freeze during streaming snapshot (#8075) 2026-02-11 10:58:36 +01:00