You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Why it might be a bottleneck / risk: Memory only; ~320 MB on 10 M-vector indexes
wasted because all access goes through vector_ids_by_field now.
Suggested direction: Drop vector_ids: Vec<(u64, String)>; reconstruct on demand
from vector_ids_by_field (already grouped). Or keep only a Vec<u64> per field with
the field index implicit.
Risk / scope: Small.
ID: VS-39 — see ~/.claude/tasks/laurus/20260523_perf_round3_audit/task_list.md for the full Round-3 issue list.
Round-3 perf push sub-issue (tracked under umbrella #536).
[M] HNSW reader keeps
vector_ids: Vec<(u64, String)>alongsidevector_ids_by_fieldlaurus/src/vector/index/hnsw/reader.rs:46,71,560.Vec<(u64, String)>(~32 B / entry) duplicated alongsidethe per-field index
Arc<[u64]>(perf(vector): cache vector_ids per field at reader load #405). Double storage.wasted because all access goes through
vector_ids_by_fieldnow.vector_ids: Vec<(u64, String)>; reconstruct on demandfrom
vector_ids_by_field(already grouped). Or keep only aVec<u64>per field withthe field index implicit.
ID:
VS-39— see~/.claude/tasks/laurus/20260523_perf_round3_audit/task_list.mdfor the full Round-3 issue list.