diff --git a/bindings/c/src/dispatcher_concurrent_vamana.cpp b/bindings/c/src/dispatcher_concurrent_vamana.cpp index dc2b4878a..79045cbdf 100644 --- a/bindings/c/src/dispatcher_concurrent_vamana.cpp +++ b/bindings/c/src/dispatcher_concurrent_vamana.cpp @@ -191,7 +191,6 @@ svs::DynamicVamana load_concurrent_vamana_index( std::move(data), std::move(D), std::move(pool), - /*debug_load_from_static=*/false, std::move(logger) ); } diff --git a/bindings/c/src/dispatcher_dynamic_vamana.cpp b/bindings/c/src/dispatcher_dynamic_vamana.cpp index 82133000d..eeb2ef458 100644 --- a/bindings/c/src/dispatcher_dynamic_vamana.cpp +++ b/bindings/c/src/dispatcher_dynamic_vamana.cpp @@ -95,7 +95,6 @@ svs::DynamicVamana load_dynamic_vamana_index( std::move(data), std::move(D), std::move(pool), - /*debug_load_from_static=*/false, std::move(logger) ); } @@ -129,7 +128,6 @@ svs::DynamicVamana load_stream_dynamic_vamana_index( svs::make_stream_loader(allocator), distance, std::move(pool), - /*debug_load_from_static=*/false, std::move(logger) ); } diff --git a/bindings/c/src/dispatcher_dynamic_vamana_copy.hpp b/bindings/c/src/dispatcher_dynamic_vamana_copy.hpp index 99feb52c2..2a3fe3e5a 100644 --- a/bindings/c/src/dispatcher_dynamic_vamana_copy.hpp +++ b/bindings/c/src/dispatcher_dynamic_vamana_copy.hpp @@ -100,7 +100,6 @@ struct RegularVamanaFlavor { std::move(data), std::move(distance), std::move(pool), - /*debug_load_from_static=*/false, std::move(logger) ); } diff --git a/bindings/python/src/dynamic_vamana.cpp b/bindings/python/src/dynamic_vamana.cpp index 1b24eca1b..d4b6e5e7f 100644 --- a/bindings/python/src/dynamic_vamana.cpp +++ b/bindings/python/src/dynamic_vamana.cpp @@ -322,7 +322,13 @@ svs::DynamicVamana assemble_uncompressed( }); return svs::DynamicVamana::assemble( - config_path, load_graph, load_data, distance, num_threads, debug_load_from_static + config_path, + load_graph, + load_data, + distance, + num_threads, + svs::logging::get(), + debug_load_from_static ); } diff --git a/include/svs/orchestrators/concurrent_dynamic_vamana.h b/include/svs/orchestrators/concurrent_dynamic_vamana.h index b9f7e3361..0ff211936 100644 --- a/include/svs/orchestrators/concurrent_dynamic_vamana.h +++ b/include/svs/orchestrators/concurrent_dynamic_vamana.h @@ -130,8 +130,8 @@ class ConcurrentDynamicVamana : public DynamicVamana { DataLoader&& data_loader, Distance distance, ThreadPoolProto threadpool_proto, - bool debug_load_from_static = false, - svs::logging::logger_ptr logger = svs::logging::get() + svs::logging::logger_ptr logger = svs::logging::get(), + bool debug_load_from_static = false ) requires(!std::is_base_of_v> && !is_stream_loader_v> && !is_stream_loader_v>) { @@ -182,8 +182,8 @@ class ConcurrentDynamicVamana : public DynamicVamana { const DataLoader& data_loader, Distance distance, ThreadPoolProto threadpool_proto, - bool debug_load_from_static = false, - svs::logging::logger_ptr logger = svs::logging::get() + svs::logging::logger_ptr logger = svs::logging::get(), + bool debug_load_from_static = false ) requires(is_stream_loader_v && is_stream_loader_v) { @@ -241,8 +241,8 @@ class ConcurrentDynamicVamana : public DynamicVamana { data_loader.load(data_path), std::move(distance), std::move(threadpool), - debug_load_from_static, - std::move(logger) + std::move(logger), + debug_load_from_static ); } }; diff --git a/include/svs/orchestrators/dynamic_vamana.h b/include/svs/orchestrators/dynamic_vamana.h index 067c7c486..261278d7b 100644 --- a/include/svs/orchestrators/dynamic_vamana.h +++ b/include/svs/orchestrators/dynamic_vamana.h @@ -353,10 +353,10 @@ class DynamicVamana : public manager::IndexManager { /// @param data_loader An acceptable data loader or dataset. /// @param distance Distance functor or ``svs::DistanceType`` enum. /// @param threadpool_proto Thread pool or number of threads to use. - /// @param debug_load_from_static Internal/unstable: load files produced by the static - /// index using an identity ID translation. /// @param logger The logger to use for this index. Defaults to the global SVS logger /// (``svs::logging::get()``). + /// @param debug_load_from_static Internal/unstable: load files produced by the static + /// index using an identity ID translation. /// template < manager::QueryTypeDefinition QueryTypes, @@ -372,8 +372,8 @@ class DynamicVamana : public manager::IndexManager { DataLoader&& data_loader, const Distance& distance, ThreadPoolProto threadpool_proto, - bool debug_load_from_static = false, - svs::logging::logger_ptr logger = svs::logging::get() + svs::logging::logger_ptr logger = svs::logging::get(), + bool debug_load_from_static = false ) { return DynamicVamana( AssembleTag(), @@ -409,10 +409,10 @@ class DynamicVamana : public manager::IndexManager { /// @param data_loader The ``StreamLoader`` for the data to use. /// @param distance Distance functor or ``svs::DistanceType`` enum. /// @param threadpool_proto Thread pool or number of threads to use. - /// @param debug_load_from_static Internal/unstable: load files produced by the static - /// index using an identity ID translation. /// @param logger The logger to use for this index. Defaults to the global SVS logger /// (``svs::logging::get()``). + /// @param debug_load_from_static Internal/unstable: load files produced by the static + /// index using an identity ID translation. /// template < manager::QueryTypeDefinition QueryTypes, @@ -427,8 +427,8 @@ class DynamicVamana : public manager::IndexManager { const DataLoader& data_loader, const Distance& distance, ThreadPoolProto threadpool_proto, - bool debug_load_from_static = false, - svs::logging::logger_ptr logger = svs::logging::get() + svs::logging::logger_ptr logger = svs::logging::get(), + bool debug_load_from_static = false ) { using Graph = typename GraphLoader::return_type; using Data = typename DataLoader::return_type; @@ -495,8 +495,8 @@ class DynamicVamana : public manager::IndexManager { data_loader.load(data_path), distance, threads::as_threadpool(std::move(threadpool_proto)), - debug_load_from_static, - logger + logger, + debug_load_from_static ); } } diff --git a/tests/svs/orchestrators/dynamic_vamana.cpp b/tests/svs/orchestrators/dynamic_vamana.cpp index cb5f89844..77f08a469 100644 --- a/tests/svs/orchestrators/dynamic_vamana.cpp +++ b/tests/svs/orchestrators/dynamic_vamana.cpp @@ -279,14 +279,12 @@ CATCH_TEST_CASE("DynamicVamana Per-Index Logger", "[managers][dynamic_vamana][lo auto custom = CapturingLogger("custom_logger"); auto global_baseline = global.logger.use_count(); - // `debug_load_from_static` precedes the logger and must be passed explicitly. svs::DynamicVamana with_custom = svs::DynamicVamana::assemble( config_dir, svs::GraphLoader(graph_dir), svs::VectorDataLoader(data_dir), distance, num_threads, - false, custom.logger ); CATCH_REQUIRE(custom.logger.use_count() == 2);