[C API] Stream load that accepts `svs_dynamic_index_params_t`
Maintainer antworten meist innerhalb von 5 Tagen
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 45/100
Rechercherichtung
Start with the _ex build functions added in #406, since the request is to follow the same parameter handling for svs_index_load_stream_dynamic. Find where svs_dynamic_index_params_t is validated and applied (sync kind, block size, version and struct_size), and check how the existing stream load path constructs the index. Done means a svs_index_load_stream_dynamic_ex declaration and implementation that honor SVS_SYNC_KIND_FINE_GRAIN and the block size, plus a test that loads a stream and confirms the sync kind on the restored index.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Summary
Please add a variant of svs_index_load_stream_dynamic that takes svs_dynamic_index_params_t, as the _ex build functions from #406 do, so a restored index can be created with SVS_SYNC_KIND_FINE_GRAIN and our block size.
Why
At 8285340 the stream load takes no parameters, so a restored index reports SVS_SYNC_KIND_NONE. valkey-search then serializes all writers on that index for the life of the process, because SVS doesn't guard it (src/indexes/vector_svs.cc:676-686 in eshenayo/valkey-search). That affects every restart, DEBUG RELOAD and replica full sync, so replicas never get concurrent writers. It also means we can't set the block size on load, so a loaded index can be laid out differently from a freshly built one.
Ask
SVS_API svs_index_h svs_index_load_stream_dynamic_ex(
svs_index_builder_h builder,
const svs_dynamic_index_params_t* params,
/* existing stream reader arguments */
svs_error_h out_err);
Same semantics as svs_index_build_dynamic_ex for the parameters: sync kind, block size, and any future fields covered by the struct's version / struct_size.
- Vorherrschende Sprache
- C++
- Sterne
- 241
- Forks
- 48
- Ø Merge
- 4 T. 21 Std.
- Gemergte PRs (30 T.)
- 11
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus intel/ScalableVectorSearch
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
intel/ScalableVectorSearch#356 ·
Maintainer antworten meist innerhalb von 5 Tagen
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 42/100
intel/ScalableVectorSearch#469 ·
Maintainer antworten meist innerhalb von 5 Tagen
-
enhancement
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 32/100
intel/ScalableVectorSearch#460 ·
Maintainer antworten meist innerhalb von 5 Tagen
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
intel/ScalableVectorSearch#438 ·
Maintainer antworten meist innerhalb von 5 Tagen
-
CI: tier the test matrix into PR / main / nightly to cut Actions minutesEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 32/100
intel/ScalableVectorSearch#432 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 5 Tagen
Alle Issues in intel/ScalableVectorSearch
Ähnliche Issues
-
runtime: lf_f128_mod is documented as fmodq (truncating) but implements floor-based modulo; unusedOffeninternal correctness low priority rt_lib
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 87/100
-
PriorityNotificationQueue::wakeUpAll() loses the wake-up for a thread that is not waiting yetEvtl. vergeben @matejk hat das heute übernommen. Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
pocoproject/poco#5674 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
bug docs GUI
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
sonic-pi-net/sonic-pi#3609 ·
-
Unreachable code warningOffenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
SanderMertens/flecs#2395 ·
Maintainer antworten meist innerhalb von 1 Tag