Commit Graph

5465 Commits

Author SHA1 Message Date
tellet-q
cdae750d0b Log shard transfer abort during consensus recovery (#7373)
* Add log line about aborting transfer during consensus recovery
2025-10-13 08:55:22 +02:00
Roman Titov
e7fe24bb1b More type conversion for Qdrant on Edge Python bindings (#7372)
* Cleanup `edge::Shard::retrieve`

* Cleanup Python errors

* Cleanup `PointId` conversions

* Rename `ids` into `point_ids` in `PyShard::retrieve`

* WIP: Prototype native conversions for more types
2025-10-10 19:56:05 +02:00
Tim Visée
da5e5cd42d In Gridstore, also populate the tracker file (#7385) 2025-10-10 13:15:11 -03:00
Ivan Boldyrev
4a732a105d Docker build parameters (#7370)
* Add ARG `TARGET_CPU` to Dockerfile

* Add ARG `JEMALLOC_SYS_WITH_LG_PAGE` to Dockerfile

It allows redefining jemalloc's page size for image targeting specific
ARM machines.

Refs #3831.

* Document Docker build parameters
2025-10-10 16:35:45 +07:00
Roman Titov
8141173029 Type conversions into native Python types for Qdrant on Edge (#7367)
* Cleanup README.md

* Rename `PyResult` into `Result`

* Rename `interface` module into `types` and simplify imports

`wildcard::goes::brrr::*`

* Add `PointId` conversion

* Add `Payload` conversion

* fixup! Add `Payload` conversion

Avoid cloning `Payload` for output conversion

* fixup! Add `PointId` conversion

Fix example

* review fixes #1: fix uuid parsing, avoid .into, use custom types

* review fixes #2: rewrite point id to avoid chain if

* review fixes #3: allow ot use uuid + remove comment

---------

Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2025-10-09 19:19:56 +02:00
Andrey Vasnetsov
34596530d1 remove default explicit config for strict mode (#7369)
* remove default explicit config for strict mode

* Don't prefix commented out properties with space to remain consistent

* Don't crash test if strict mode config is not set at all

---------

Co-authored-by: timvisee <tim@visee.me>
2025-10-09 12:00:01 +02:00
Arnaud Gourlay
a24d380ee0 Investigate flaky snapshot transfer test (#7339) 2025-10-09 10:47:23 +02:00
Arnaud Gourlay
fe94fdc5ce Bump Python 3.13 on CI (#7365)
* Bump Python 3.13 on CI

* Regenerate tls certificates

---------

Co-authored-by: tellet-q <elena.dubrovina@qdrant.com>
2025-10-08 12:50:34 +02:00
Arnaud Gourlay
1fcb7a2139 Test continuous snapshot data loss (#7308)
* Continuous snapshot data loss

* assert vector & payload are present
2025-10-08 12:20:44 +02:00
tellet-q
c3ca182423 Refactor bash tests: storage-compatibility (#7299)
* Add e2e test for compatibility
2025-10-08 08:33:55 +02:00
Andrey Vasnetsov
8dd915c0b1 non appendable proxies (#7345)
* WIP: make proxy segment non-appendable

* make deleted points and index changes private to Proxy Segment

* consistently remove empty unused segment from holder on unproxifying and the end of optimization

* remove/fix obsolete test

* Fix comment, some general adjustments

* Also don't remove non-original segments

* Use ahash for map of proxy index changes

* Inline format arguments

* Simplify has point branching

* Assert that proxy flushes to latest wrapped segment version

* make vector deletetion a CoW operation

* relax debug assertions

* Update lib/shard/src/proxy_segment/mod.rs

* fix test_partial_snapshot_empty

---------

Co-authored-by: timvisee <tim@visee.me>
Co-authored-by: Tim Visée <tim+github@visee.me>
2025-10-08 00:19:41 +02:00
Tim Visée
a1efafbbf3 Only wait for green collection status in empty snapshot test (#7360) 2025-10-07 18:12:59 +02:00
Tim Visée
3856ff6bdb Before doing actual partial snapshot tests, wait for green status (#7358) 2025-10-07 15:57:46 +02:00
Arnaud Gourlay
a0645c7319 Use AHash for ShardId HashMap (#7357) 2025-10-07 12:11:53 +02:00
dependabot[bot]
a9c6bd50ff build(deps): bump cc from 1.2.39 to 1.2.40 (#7352)
Bumps [cc](https://github.com/rust-lang/cc-rs) from 1.2.39 to 1.2.40.
- [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.39...cc-v1.2.40)

---
updated-dependencies:
- dependency-name: cc
  dependency-version: 1.2.40
  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>
2025-10-07 10:36:21 +02:00
dependabot[bot]
388b733ad3 build(deps): bump fs-err from 3.1.2 to 3.1.3 (#7353)
Bumps [fs-err](https://github.com/andrewhickman/fs-err) from 3.1.2 to 3.1.3.
- [Changelog](https://github.com/andrewhickman/fs-err/blob/main/CHANGELOG.md)
- [Commits](https://github.com/andrewhickman/fs-err/compare/3.1.2...3.1.3)

---
updated-dependencies:
- dependency-name: fs-err
  dependency-version: 3.1.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>
2025-10-07 10:36:14 +02:00
dependabot[bot]
15f1320709 build(deps): bump config from 0.15.17 to 0.15.18 (#7355)
Bumps [config](https://github.com/rust-cli/config-rs) from 0.15.17 to 0.15.18.
- [Changelog](https://github.com/rust-cli/config-rs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-cli/config-rs/compare/v0.15.17...v0.15.18)

---
updated-dependencies:
- dependency-name: config
  dependency-version: 0.15.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>
2025-10-07 09:37:11 +02:00
dependabot[bot]
5879c2950f build(deps): bump ordered-float from 5.0.0 to 5.1.0 (#7348)
Bumps [ordered-float](https://github.com/reem/rust-ordered-float) from 5.0.0 to 5.1.0.
- [Release notes](https://github.com/reem/rust-ordered-float/releases)
- [Commits](https://github.com/reem/rust-ordered-float/compare/v5.0.0...v5.1.0)

---
updated-dependencies:
- dependency-name: ordered-float
  dependency-version: 5.1.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>
2025-10-07 09:36:52 +02:00
dependabot[bot]
5b85810a6b build(deps): bump tempfile from 3.22.0 to 3.23.0 (#7351)
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.22.0 to 3.23.0.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.22.0...v3.23.0)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-version: 3.23.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>
2025-10-07 09:36:15 +02:00
dependabot[bot]
09eff3507e build(deps): bump slog from 2.7.0 to 2.8.0 (#7350)
Bumps [slog](https://github.com/slog-rs/slog) from 2.7.0 to 2.8.0.
- [Release notes](https://github.com/slog-rs/slog/releases)
- [Changelog](https://github.com/slog-rs/slog/blob/master/CHANGELOG.md)
- [Commits](https://github.com/slog-rs/slog/compare/v2.7.0...v2.8.0)

---
updated-dependencies:
- dependency-name: slog
  dependency-version: 2.8.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>
2025-10-07 09:35:55 +02:00
dependabot[bot]
ec6089c0ca build(deps): bump flate2 from 1.1.2 to 1.1.4 (#7349)
Bumps [flate2](https://github.com/rust-lang/flate2-rs) from 1.1.2 to 1.1.4.
- [Release notes](https://github.com/rust-lang/flate2-rs/releases)
- [Commits](https://github.com/rust-lang/flate2-rs/compare/1.1.2...1.1.4)

---
updated-dependencies:
- dependency-name: flate2
  dependency-version: 1.1.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>
2025-10-07 09:35:14 +02:00
dependabot[bot]
5e15840d2a build(deps): bump bytemuck from 1.23.2 to 1.24.0 (#7354)
Bumps [bytemuck](https://github.com/Lokathor/bytemuck) from 1.23.2 to 1.24.0.
- [Changelog](https://github.com/Lokathor/bytemuck/blob/main/changelog.md)
- [Commits](https://github.com/Lokathor/bytemuck/compare/v1.23.2...v1.24.0)

---
updated-dependencies:
- dependency-name: bytemuck
  dependency-version: 1.24.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>
2025-10-07 09:34:13 +02:00
Andrey Vasnetsov
96821e0376 edge retrieve api (#7344)
* refactor: move RecordInternal into Shard crate

* refactor: move retrieve_blocking into Shard crate

* implement retrieve method + move some structures into dedicated files
2025-10-06 19:59:43 +02:00
Luis Cossío
33bd50e72d Change score of query-less prefetch to 1.0 (#7347) 2025-10-06 14:47:15 -03:00
Roman Titov
4f3855a32c WIP: Extend Qdrant Edge Python bindings (#7343) 2025-10-03 13:14:35 +02:00
Roman Titov
1004b93ae5 Python bindings for Qdrant on Edge (#7312)
* Qdrant Edge Python binding 🐍⛓️💥

* fixup! Qdrant Edge Python binding 🐍⛓️💥

Fix example + cleanup

* review: move QueryEnum + mark search as deprecated

---------

Co-authored-by: generall <andrey@vasnetsov.com>
2025-10-03 12:48:26 +02:00
Arnaud Gourlay
159c7ffdb3 Force flush when taking a snapshot to capture on-going batches (#7342) 2025-10-02 13:33:15 +02:00
Arnaud Gourlay
ce16b27b41 Tone down optimizer logging (#7337) 2025-09-30 16:12:16 +02:00
dependabot[bot]
5047ce6f33 build(deps): bump cc from 1.2.38 to 1.2.39 (#7326)
Bumps [cc](https://github.com/rust-lang/cc-rs) from 1.2.38 to 1.2.39.
- [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.38...cc-v1.2.39)

---
updated-dependencies:
- dependency-name: cc
  dependency-version: 1.2.39
  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>
2025-09-30 15:07:45 +02:00
dependabot[bot]
b849b8c957 build(deps): bump sysinfo from 0.37.0 to 0.37.1 (#7327)
Bumps [sysinfo](https://github.com/GuillaumeGomez/sysinfo) from 0.37.0 to 0.37.1.
- [Changelog](https://github.com/GuillaumeGomez/sysinfo/blob/master/CHANGELOG.md)
- [Commits](https://github.com/GuillaumeGomez/sysinfo/compare/v0.37.0...v0.37.1)

---
updated-dependencies:
- dependency-name: sysinfo
  dependency-version: 0.37.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>
2025-09-30 14:26:44 +02:00
dependabot[bot]
efa07a4f70 build(deps): bump thiserror from 2.0.16 to 2.0.17 (#7332)
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 2.0.16 to 2.0.17.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/2.0.16...2.0.17)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-version: 2.0.17
  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>
2025-09-30 14:26:36 +02:00
dependabot[bot]
251a4f7cce build(deps): bump clap from 4.5.47 to 4.5.48 (#7328)
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.47 to 4.5.48.
- [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.47...clap_complete-v4.5.48)

---
updated-dependencies:
- dependency-name: clap
  dependency-version: 4.5.48
  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>
2025-09-30 14:26:29 +02:00
dependabot[bot]
95b6f67738 build(deps): bump config from 0.15.16 to 0.15.17 (#7329)
Bumps [config](https://github.com/rust-cli/config-rs) from 0.15.16 to 0.15.17.
- [Changelog](https://github.com/rust-cli/config-rs/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rust-cli/config-rs/compare/v0.15.16...v0.15.17)

---
updated-dependencies:
- dependency-name: config
  dependency-version: 0.15.17
  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>
2025-09-30 14:26:23 +02:00
dependabot[bot]
c438f3ed1c build(deps): bump quote from 1.0.40 to 1.0.41 (#7333)
Bumps [quote](https://github.com/dtolnay/quote) from 1.0.40 to 1.0.41.
- [Release notes](https://github.com/dtolnay/quote/releases)
- [Commits](https://github.com/dtolnay/quote/compare/1.0.40...1.0.41)

---
updated-dependencies:
- dependency-name: quote
  dependency-version: 1.0.41
  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>
2025-09-30 14:26:16 +02:00
dependabot[bot]
ae42fee8c1 build(deps): bump object_store from 0.12.3 to 0.12.4 (#7331)
Bumps [object_store](https://github.com/apache/arrow-rs-object-store) from 0.12.3 to 0.12.4.
- [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.12.3...v0.12.4)

---
updated-dependencies:
- dependency-name: object_store
  dependency-version: 0.12.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>
2025-09-30 14:26:08 +02:00
Tim Visée
73300e813f Downgrade cargo-chef base image to fix runtime error on NVIDIA GPU image (#7334)
* Downgrade cargo-chef base image to fix runtime error on NVIDIA GPU image

* Add link to pull request
2025-09-30 11:27:49 +02:00
xzfc
23a0a0e8b8 DiffConfig: replace serde-based impl with explicit impl (#7294)
* refactor: replace serde-based DiffConfig implementation with macro

* refactor: macroexpand impl_diff_config

* refactor: drop `merge` dependency as unused
2025-09-29 18:55:50 +00:00
xzfc
780d406ff8 Add CollectionInfo::warnings field (#7293)
* refactor: swap DiffConfig parmeters

was: diff.update(&config)
now: config.update(diff)

* refactor: introduce DiffConfig::update_opt

* feat: add CollectionInfo::configuration_status field

* rename ConfigurationStatus to CollectionWarning
2025-09-29 18:17:03 +00:00
Roman Titov
a32810c222 Cleanup fs-err error messages in Edge (#7325) 2025-09-29 16:39:06 +02:00
Arnaud Gourlay
f5d824508e Regen storage compat. v1.15.4 (#7321)
* Regen storage compat. 1.14 & 1.15

* bump prev patch to v1.15.4

* skip v1.14.1

* cleaner

* sleepy
2025-09-29 16:37:16 +02:00
Arnaud Gourlay
df527fe18a Fix linting for Edge with fs-err (#7324)
* Fix linting for Edge with fs-err

* fix consistency use fs_err as fs
2025-09-29 16:10:42 +02:00
Roman Titov
895318913a Qdrant on Edge prototype (#7170) 2025-09-29 15:01:44 +02:00
xzfc
a0d62330c7 Use fs-err (#7319) 2025-09-29 12:47:10 +00:00
Andrey Vasnetsov
11135e6324 smaller update batch size (#7320)
* make update batch smaller to prevent long blocks

* limit vector update operations as well

* limit update chunk for point upsertion

* Fix typo

---------

Co-authored-by: Tim Visée <tim+github@visee.me>
2025-09-29 14:30:27 +02:00
Andrey Vasnetsov
7d7f8a3118 Use former scroll_lock to prevent parallel updates during snapshot (#7306)
* separate snapshot-related functions into a new file

* move out snapshot-related function in local shard

* move snapshot test to local shard level

* move snapshot_all_segments and proxy_all_segments_and_apply to local shard

* use former scroll update lock to prevent snapshot operations overlapping with updates

* review fixes: rename all scroll_lock, use write lock for unproxy instead of read
2025-09-25 17:10:43 +02:00
Ivan Boldyrev
ad31c428e3 Fix Tokio race condition in benchmarks (#7311)
Shutdown `shard` explicitly at the end of benchmark to avoid error

```
A Tokio 1.x context was found, but it is being shutdown.
```

Co-authored-by: Ivan Boldyrev <ivan.boldyrev@qdrant.com>
2025-09-25 16:06:19 +02:00
Arnaud Gourlay
beaea63a7c Fix incorrect delete version on update (#7303) 2025-09-25 11:02:17 +02:00
Arnaud Gourlay
bf8e86fb66 Add debug assertion for deleted version on proxy (#7300)
* Fix applying stale delete operation on proxy

* correct init of flag

* Update lib/shard/src/proxy_segment/mod.rs

Co-authored-by: Tim Visée <tim+github@visee.me>

* Update lib/shard/src/proxy_segment/segment_entry.rs

Co-authored-by: Tim Visée <tim+github@visee.me>

* Update lib/shard/src/proxy_segment/segment_entry.rs

Co-authored-by: Tim Visée <tim+github@visee.me>

* rollback unecessary check

---------

Co-authored-by: Tim Visée <tim+github@visee.me>
2025-09-24 15:01:13 +02:00
Arnaud Gourlay
688651bacc Fix corruption due to concurrent update during snapshot (#7298) 2025-09-24 14:59:13 +02:00
dependabot[bot]
b91472c745 build(deps): bump indexmap from 2.11.1 to 2.11.4 (#7289) 2025-09-24 10:01:02 +00:00