Files
qdrant/lib
f201849fac [UIO] implement ReadOnlyQuantizedVectors::preopen (#9781)
* [UIO] implement ReadOnlyQuantizedVectors::preopen

Schedule background prefetch of the quantization config, per-method
metadata, quantized data and multivector offsets, wired into the
segment's first_preopen for every dense vector with quantization
configured.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* additional stage for quantized config preopen

* better quantized preopening

* Partially populate the first quantized vector in preopen

The load reads the first vector off quantized.data (and off the first
chunk in the chunked layout) to validate the stored vector size — on a
cold open that was a round-trip. Use Populate::Partial (#9769) to
prefetch exactly that prefix; the exact size comes from the quantized
config the preopen already read.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* Restore the layout-probing quantized preopen

Recovers the pre-rewrite design: preopen never reads the quantization
config — it probes both layout candidates against the listing snapshot
(a segment only contains the layout its real config selects), derives
warmth from the segment-side quantization config (placement resolution
incl. cached and low-memory), iterates storage types exhaustively for
layout coverage, and schedules the config for open to parse once off
the parked handle — no threading, no second preopen stage.

Keeps the first-vector partial populate, with the size now derived
from the segment config via construct_vector_parameters, and keeps
VectorStorageType::is_pinned. Restores the full preopen test matrix
and OneshotFile::preopen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* review fixes

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Luis Cossío <luis.cossio@outlook.com>
2026-08-04 11:17:01 +02:00
..
2026-08-04 11:16:58 +02:00
2026-08-04 11:16:58 +02:00
2026-08-04 11:16:58 +02:00