Commit Graph
4590 Commits
Author SHA1 Message Date
Luis Cossíoandtimvisee f2d45b558d Use BitvecFlags in vector storages (#6994)
* put all flags impls in a single module

* use in appendable_dense_vector_storage

* use in appendable_mmap_multi_dense_storage

* use in mmap_sparse_vector_storage

* clippy

* Add comment we cannot rely on length of deleted vectors bitvec

---------

Co-authored-by: timvisee <tim@visee.me>
2025-08-11 13:17:39 +02:00
Luis Cossíoandtimvisee 75b09284eb BitvecFlags: bitvec container with dynamic mmap flags storage (#6990)
* separate flags buffering and in-memory container

* new bitvec flags

* fmt

* clippy

* make BufferedDynamicFlags public to crate only

* clear cache after loading

* clippyyy

* improve comment

* Use resize with a constant to eliminate a hot closure

* Add comment on why we take subslice of bitslice

---------

Co-authored-by: timvisee <tim@visee.me>
2025-08-11 13:17:33 +02:00
Andrey Vasnetsov d70ba74b97 add example of multi-node docker-compose file for easier experiemnting (#6953)
* add example of multi-node docker-compose file for easier experiemnting

* rename peers and add healthcheck
2025-08-11 13:17:27 +02:00
Roman Titov 990eee11b4 Refactor Collection::restore_shard_snapshot (#6988) 2025-08-11 13:17:22 +02:00
Roman Titov 31738d3b85 Track payload index schema version (#6819) 2025-08-11 13:17:19 +02:00
Roman Titov 2938660e92 Fix test_create_shard_key_read_availability flakiness (#6902) 2025-08-11 13:17:11 +02:00
Luis Cossíoandtimvisee 356cdc833b Buffered mutable bool index (#6977)
* use buffered dynamic flags in bool index

* put base_dir out of Storage

* Adjust populate comment

---------

Co-authored-by: timvisee <tim@visee.me>
2025-08-11 13:17:05 +02:00
Ivan Pleshkovandxzfc f4ebdd9c9d Appendable quantization storage (#6935)
* appendable qunatization storage

fmt

deprecate count in quantization config

fix arm tests build

qunatized storage vectors count

fix ci

are you happy clippy

fix compat tests

undo rename to `deprecated_count`

remove flusher

remove obsolete functions, don't use hardware counter in ram storage

are you happy clippy

fix gpu build

check ci when revert option

revert last commit

* debug ci

* log offsets

* log offsets

* fix compatibility tests

* deprecate count

* fix arm tests

* fix benches

* Update lib/quantization/src/encoded_vectors_binary.rs

Co-authored-by: xzfc <5121426+xzfc@users.noreply.github.com>

---------

Co-authored-by: xzfc <5121426+xzfc@users.noreply.github.com>
2025-08-11 13:17:02 +02:00
Arnaud Gourlay e7eb4c7a79 Fix Clippy 1.89 again (#6987) 2025-08-11 13:16:58 +02:00
xzfc cfa5f9e804 TestRawScorerProducer to use VectorStorageEnum (#6965)
* TestRawScorerProducer to use VectorStorageEnum

* TestRawScorerProducer:🆕 accept distance as an argument

* Drop TMetric from TestRawScorerProducer

* Remove `impl VectorStorage for TestRawScorerProducer`

* Add TestRawScorerProducer::internal_scorer

* Remove TestRawScorerProducer::get_vector

* Rename TestRawScorerProducer::{get_scorer => scorer}
2025-08-11 13:16:55 +02:00
tellet-q b33e741229 Hardcode the link (#6985)
* Hardcode the link

* Fix image build
2025-08-11 13:16:52 +02:00
Kumar Shivendu 8be66adfc3 Partial snapshots update recovery ts (#6980)
* Update recovery ts despite empty partial snapshots

* fmt

* apply suggestions with some improvements
2025-08-11 13:16:49 +02:00
Voyager 3 2e77212bcb bump rust 1.88 (#6984)
fix build error if use rust 1.87
2025-08-11 13:16:46 +02:00
Arnaud Gourlay 118ff6dda3 Fix Clippy 1.89 (#6981) 2025-08-11 13:16:42 +02:00
Arnaud Gourlay 416d82a554 Bump Python integration test deps for Dependabot (#6979) 2025-08-11 13:16:39 +02:00
Arnaud Gourlay 5ac506751f Remove hardware measurement from fulltext index (#6884) 2025-08-11 13:16:36 +02:00
Tim ViséeandLuis Cossío 9e914acd12 Fix flushing of dynamic mmap flags (#6966)
* Directly flush flags, don't use single-use flusher

* Explicitly flush before resizing flags file, prevent losing dirty pages

* Don't create now obsolete flusher when opening mmap

* clippy

* Move flush call

* flush before resizing only

---------

Co-authored-by: Luis Cossío <luis.cossio@outlook.com>
2025-08-11 13:16:33 +02:00
Luis Cossíoandtimvisee f45ee98293 New mutable null index (#6954)
* Introduce BufferedDynamicFlags

* clippy and extra changes

* fix flushing

* add mutable index impl

* use MutableNullIndex instead of MmapNullIndex

* use BufferedDynamicFlags

* remove mmap_null_index

* take updates before returning the flusher

* bump total_point_count on add and remove point

* improve test case

* Only clean up mutable null index files if index exists

* Remove mention of cached in context of length

* refactor flags into a single `Option<Storage>`

---------

Co-authored-by: timvisee <tim@visee.me>
2025-08-11 13:16:27 +02:00
Luis Cossío 1fb00f7975 cleanup versions on segment repair (#6975) 2025-08-11 13:16:24 +02:00
tellet-q cad14965e3 Refactor bash tests: low-ram (#6911)
* Refactor low-ran bash test

* Address review
2025-08-11 13:16:20 +02:00
26a496b40e BM25 in the Core (#6891)
* Uncouple tokenizer and TextIndexParams

* Refactor token processing in `TokenizerConfig` (#6912)

* Refactor token processing in TokenizerConfig

* fix max length checking

* [Bm25] Execution implementation (#6939)

* Add Bm25

* Execute BM25 if config available

* cargo format

* Add mocked tests for inference and bm25

* Properly apply InferenceType

* Fix tests

* Review remarks

* Review remarks

* Add overwritten model name fix again

* use enum instead of multiple constants

* ensure handling all fields of InferenceInput in infer_local

---------

Co-authored-by: Luis Cossío <luis.cossio@outlook.com>

* review fixes

* fmt

* spell-check

* deduplicate code

---------

Co-authored-by: Luis Cossío <luis.cossio@qdrant.com>
Co-authored-by: Luis Cossío <luis.cossio@outlook.com>
Co-authored-by: Andrey Vasnetsov <andrey@vasnetsov.com>
2025-08-11 13:16:15 +02:00
Luis Cossío 5113c7c0f2 [decay formula] allow [0,1] range for midpoint in lin_decay (#6959)
* allow [0,1] range for midpoint in lindecay

* clippyyyyy

* Better error message
2025-08-11 13:16:10 +02:00
Roman Titov 343628b87c Cleanup partial snapshot stuff (#6925) 2025-08-11 13:16:07 +02:00
Andrey Vasnetsov 92fdc5bd79 HardwareUsage -> Usage (#6967) 2025-08-11 13:16:00 +02:00
xzfc e329b0a43e Add Distance::preprocess_vector (#6964) 2025-08-11 13:15:57 +02:00
Jojii 9ab1fcabc8 Fix config path & Webui Assets in Debian package (#6958)
* Fix debian config location & WebUI assets

* remove config overwrite env variable again
2025-08-11 13:15:52 +02:00
xzfc 0a53f72e31 QueryScorerBytes (#6945)
* Add EncodedVectorsBytes::score_point_vs_bytes

* Add QueryScorerBytes::score_bytes

* QuantizedVectors::query_scorer_bytes

* Split FilteredScorer into FilteredScorer and FilteredQuantizedScorer
2025-08-11 13:15:49 +02:00
Kumar Shivendu bcbc462de1 Fix coverage failure after recent changes (#6948) 2025-08-11 13:15:43 +02:00
Roman Titov bf319a0b40 Avoid creating partial snapshot if snapshot manifest contains no changes (#6924) 2025-08-11 13:15:39 +02:00
Luis Cossío 7589b28c01 use roaring bitmap in map index (#6926) 2025-08-11 13:15:31 +02:00
Roman Titov fdc5366884 Fix DateTimeWrapper parsing (#6952) 2025-08-11 13:15:27 +02:00
Roman Titov e6bdcb2520 Update collection-level payload index schema after recovering partial snapshot (#6886) 2025-08-11 13:15:23 +02:00
Tim Visée 8a08ab8f6d Update roadmap (#6947) 2025-08-11 13:15:17 +02:00
xzfc b79757d072 Introduce StableHash (#6940)
* Introduce StableHash

* Use SipHasher24 explicitly
2025-08-11 13:15:14 +02:00
Luis Cossío 2e6358746a fix flaky welford calculation test (#6927)
* use most significant digits for comparison

* use absolute or relative tolerance
2025-08-11 13:15:10 +02:00
Andrey Vasnetsov af7ab5b192 bump version to v1.15.1 (#6934) v1.15.1 2025-07-24 09:34:36 +02:00
Andrey Vasnetsov b279aefde6 wait-for instead of validate (#6899) 2025-07-24 08:46:44 +02:00
Andrey Vasnetsov 82508fd34a Fix PointId Hash (#6932)
* fmt

* clippy
2025-07-24 08:46:40 +02:00
Andrey Vasnetsov 6c9e12f948 UUID index bug (#6916)
* reproduce bug as unit test

* reproduce in even faster unit test

* fix alignment in mmap_hashmap

* clippy

* review fixes
2025-07-24 08:46:26 +02:00
xzfc 916d84a2aa MADV_POPULATE_READ on sequential mmaps (#6923) 2025-07-24 08:46:18 +02:00
dependabot[bot] 8b721f4d69 build(deps): bump delegate from 0.13.3 to 0.13.4 (#6914) 2025-07-24 08:46:13 +02:00
dependabot[bot] 5b6fb47cad build(deps): bump cc from 1.2.29 to 1.2.30 (#6920) 2025-07-24 08:46:08 +02:00
dependabot[bot] 9896976479 build(deps): bump sysinfo from 0.36.0 to 0.36.1 (#6919)
---
updated-dependencies:
- dependency-name: sysinfo
  dependency-version: 0.36.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-07-24 08:46:03 +02:00
dependabot[bot] 2e69ab0c13 build(deps): bump roaring from 0.11.0 to 0.11.1 (#6921) 2025-07-24 08:45:46 +02:00
dependabot[bot] 336b050c19 build(deps): bump serde_json from 1.0.140 to 1.0.141 (#6915) 2025-07-24 08:45:40 +02:00
dependabot[bot] 536484aeb1 build(deps): bump rand from 0.9.1 to 0.9.2 (#6917)
---
updated-dependencies:
- dependency-name: rand
  dependency-version: 0.9.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>
2025-07-24 08:45:35 +02:00
dependabot[bot] 17efe03f64 build(deps): bump object_store from 0.12.2 to 0.12.3 (#6918)
---
updated-dependencies:
- dependency-name: object_store
  dependency-version: 0.12.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-07-24 08:45:31 +02:00
dependabot[bot] 0f3491f109 build(deps): bump strum from 0.27.1 to 0.27.2 (#6913)
---
updated-dependencies:
- dependency-name: strum
  dependency-version: 0.27.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>
2025-07-24 08:45:26 +02:00
Andrey Vasnetsov 75ac92b75a check for empty collection data (#6910) 2025-07-24 08:45:11 +02:00
Tim Visée f53f8cbfc3 Fix checkfs in MUSL builds (#6903) 2025-07-24 08:44:51 +02:00