diff --git a/crates/meilisearch/src/lib.rs b/crates/meilisearch/src/lib.rs index 441da0d7f..d83786394 100644 --- a/crates/meilisearch/src/lib.rs +++ b/crates/meilisearch/src/lib.rs @@ -37,8 +37,9 @@ use index_scheduler::{IndexScheduler, IndexSchedulerOptions}; use meilisearch_auth::{open_auth_store_env, AuthController}; use meilisearch_types::milli::constants::VERSION_MAJOR; use meilisearch_types::milli::documents::{DocumentsBatchBuilder, DocumentsBatchReader}; -use meilisearch_types::milli::update::{IndexDocumentsConfig, IndexDocumentsMethod, IndexerConfig}; -use meilisearch_types::milli::ThreadPoolNoAbortBuilder; +use meilisearch_types::milli::update::{ + default_thread_pool_and_threads, IndexDocumentsConfig, IndexDocumentsMethod, IndexerConfig, +}; use meilisearch_types::settings::apply_settings_to_builder; use meilisearch_types::tasks::KindWithContent; use meilisearch_types::versioning::{ @@ -506,8 +507,7 @@ fn import_dump( let base_config = index_scheduler.indexer_config(); let indexer_config = if base_config.max_threads.is_none() { - let thread_pool = - ThreadPoolNoAbortBuilder::new_for_indexing().num_threads(num_cpus::get()).build()?; + let (thread_pool, _) = default_thread_pool_and_threads(); let _config = IndexerConfig { thread_pool, ..*base_config }; backup_config = _config; diff --git a/crates/milli/src/update/indexer_config.rs b/crates/milli/src/update/indexer_config.rs index edca71e14..eb7fbd4d5 100644 --- a/crates/milli/src/update/indexer_config.rs +++ b/crates/milli/src/update/indexer_config.rs @@ -30,7 +30,7 @@ impl IndexerConfig { /// By default use only 1 thread for indexing in tests #[cfg(test)] -fn default_thread_pool_and_threads() -> (ThreadPoolNoAbort, Option) { +pub fn default_thread_pool_and_threads() -> (ThreadPoolNoAbort, Option) { let pool = ThreadPoolNoAbortBuilder::new_for_indexing() .num_threads(1) .build() @@ -40,7 +40,7 @@ fn default_thread_pool_and_threads() -> (ThreadPoolNoAbort, Option) { } #[cfg(not(test))] -fn default_thread_pool_and_threads() -> (ThreadPoolNoAbort, Option) { +pub fn default_thread_pool_and_threads() -> (ThreadPoolNoAbort, Option) { let pool = ThreadPoolNoAbortBuilder::new_for_indexing() .build() .expect("failed to build default rayon thread pool"); diff --git a/crates/milli/src/update/mod.rs b/crates/milli/src/update/mod.rs index 9a783ffd2..ebb313dcf 100644 --- a/crates/milli/src/update/mod.rs +++ b/crates/milli/src/update/mod.rs @@ -4,7 +4,7 @@ pub use self::concurrent_available_ids::ConcurrentAvailableIds; pub use self::facet::bulk::FacetsUpdateBulk; pub use self::facet::incremental::FacetsUpdateIncrementalInner; pub use self::index_documents::*; -pub use self::indexer_config::IndexerConfig; +pub use self::indexer_config::{default_thread_pool_and_threads, IndexerConfig}; pub use self::new::ChannelCongestion; pub use self::settings::{validate_embedding_settings, Setting, Settings}; pub use self::update_step::UpdateIndexingStep;