mirror of
https://github.com/meilisearch/meilisearch.git
synced 2024-11-22 18:17:39 +08:00
Merge #3296
3296: Remove `--disable-auto-batching` CLI option r=gmourier a=loiclec Fixes #3294 The `index-scheduler` code is not modified, only the CLI options have changed. Co-authored-by: Loïc Lecrenier <loic.lecrenier@me.com>
This commit is contained in:
commit
947f08793a
@ -47,11 +47,6 @@ max_task_db_size = "100 GiB"
|
|||||||
# Sets the maximum number of threads Meilisearch can use during indexing.
|
# Sets the maximum number of threads Meilisearch can use during indexing.
|
||||||
# https://docs.meilisearch.com/learn/configuration/instance_options.html#max-indexing-threads
|
# https://docs.meilisearch.com/learn/configuration/instance_options.html#max-indexing-threads
|
||||||
|
|
||||||
disable_auto_batching = false
|
|
||||||
# Deactivates auto-batching when provided.
|
|
||||||
# https://docs.meilisearch.com/learn/configuration/instance_options.html#disable-auto-batching
|
|
||||||
|
|
||||||
|
|
||||||
#############
|
#############
|
||||||
### DUMPS ###
|
### DUMPS ###
|
||||||
#############
|
#############
|
||||||
|
@ -25,7 +25,7 @@ use uuid::Uuid;
|
|||||||
|
|
||||||
use super::{config_user_id_path, DocumentDeletionKind, MEILISEARCH_CONFIG_PATH};
|
use super::{config_user_id_path, DocumentDeletionKind, MEILISEARCH_CONFIG_PATH};
|
||||||
use crate::analytics::Analytics;
|
use crate::analytics::Analytics;
|
||||||
use crate::option::{default_http_addr, IndexerOpts, MaxMemory, MaxThreads, SchedulerConfig};
|
use crate::option::{default_http_addr, IndexerOpts, MaxMemory, MaxThreads};
|
||||||
use crate::routes::indexes::documents::UpdateDocumentsQuery;
|
use crate::routes::indexes::documents::UpdateDocumentsQuery;
|
||||||
use crate::routes::tasks::TasksFilterQueryRaw;
|
use crate::routes::tasks::TasksFilterQueryRaw;
|
||||||
use crate::routes::{create_all_stats, Stats};
|
use crate::routes::{create_all_stats, Stats};
|
||||||
@ -229,7 +229,6 @@ struct Infos {
|
|||||||
max_index_size: Byte,
|
max_index_size: Byte,
|
||||||
max_task_db_size: Byte,
|
max_task_db_size: Byte,
|
||||||
http_payload_size_limit: Byte,
|
http_payload_size_limit: Byte,
|
||||||
disable_auto_batching: bool,
|
|
||||||
log_level: String,
|
log_level: String,
|
||||||
max_indexing_memory: MaxMemory,
|
max_indexing_memory: MaxMemory,
|
||||||
max_indexing_threads: MaxThreads,
|
max_indexing_threads: MaxThreads,
|
||||||
@ -275,14 +274,12 @@ impl From<Opt> for Infos {
|
|||||||
dump_dir,
|
dump_dir,
|
||||||
log_level,
|
log_level,
|
||||||
indexer_options,
|
indexer_options,
|
||||||
scheduler_options,
|
|
||||||
config_file_path,
|
config_file_path,
|
||||||
generate_master_key: _,
|
generate_master_key: _,
|
||||||
#[cfg(all(not(debug_assertions), feature = "analytics"))]
|
#[cfg(all(not(debug_assertions), feature = "analytics"))]
|
||||||
no_analytics: _,
|
no_analytics: _,
|
||||||
} = options;
|
} = options;
|
||||||
|
|
||||||
let SchedulerConfig { disable_auto_batching } = scheduler_options;
|
|
||||||
let IndexerOpts {
|
let IndexerOpts {
|
||||||
log_every_n: _,
|
log_every_n: _,
|
||||||
max_nb_chunks: _,
|
max_nb_chunks: _,
|
||||||
@ -309,7 +306,6 @@ impl From<Opt> for Infos {
|
|||||||
max_index_size,
|
max_index_size,
|
||||||
max_task_db_size,
|
max_task_db_size,
|
||||||
http_payload_size_limit,
|
http_payload_size_limit,
|
||||||
disable_auto_batching,
|
|
||||||
log_level,
|
log_level,
|
||||||
max_indexing_memory,
|
max_indexing_memory,
|
||||||
max_indexing_threads,
|
max_indexing_threads,
|
||||||
|
@ -16,7 +16,6 @@ pub mod route_metrics;
|
|||||||
use std::fs::File;
|
use std::fs::File;
|
||||||
use std::io::{BufReader, BufWriter};
|
use std::io::{BufReader, BufWriter};
|
||||||
use std::path::Path;
|
use std::path::Path;
|
||||||
use std::sync::atomic::AtomicBool;
|
|
||||||
use std::sync::Arc;
|
use std::sync::Arc;
|
||||||
use std::thread;
|
use std::thread;
|
||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
@ -45,8 +44,6 @@ pub use option::Opt;
|
|||||||
|
|
||||||
use crate::error::MeilisearchHttpError;
|
use crate::error::MeilisearchHttpError;
|
||||||
|
|
||||||
pub static AUTOBATCHING_ENABLED: AtomicBool = AtomicBool::new(false);
|
|
||||||
|
|
||||||
/// Check if a db is empty. It does not provide any information on the
|
/// Check if a db is empty. It does not provide any information on the
|
||||||
/// validity of the data in it.
|
/// validity of the data in it.
|
||||||
/// We consider a database as non empty when it's a non empty directory.
|
/// We consider a database as non empty when it's a non empty directory.
|
||||||
@ -209,7 +206,7 @@ fn open_or_create_database_unchecked(
|
|||||||
task_db_size: opt.max_task_db_size.get_bytes() as usize,
|
task_db_size: opt.max_task_db_size.get_bytes() as usize,
|
||||||
index_size: opt.max_index_size.get_bytes() as usize,
|
index_size: opt.max_index_size.get_bytes() as usize,
|
||||||
indexer_config: (&opt.indexer_options).try_into()?,
|
indexer_config: (&opt.indexer_options).try_into()?,
|
||||||
autobatching_enabled: !opt.scheduler_options.disable_auto_batching,
|
autobatching_enabled: true,
|
||||||
})?)
|
})?)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -67,7 +67,6 @@ const DEFAULT_LOG_LEVEL: &str = "INFO";
|
|||||||
|
|
||||||
const MEILI_MAX_INDEXING_MEMORY: &str = "MEILI_MAX_INDEXING_MEMORY";
|
const MEILI_MAX_INDEXING_MEMORY: &str = "MEILI_MAX_INDEXING_MEMORY";
|
||||||
const MEILI_MAX_INDEXING_THREADS: &str = "MEILI_MAX_INDEXING_THREADS";
|
const MEILI_MAX_INDEXING_THREADS: &str = "MEILI_MAX_INDEXING_THREADS";
|
||||||
const DISABLE_AUTO_BATCHING: &str = "DISABLE_AUTO_BATCHING";
|
|
||||||
const DEFAULT_LOG_EVERY_N: usize = 100000;
|
const DEFAULT_LOG_EVERY_N: usize = 100000;
|
||||||
|
|
||||||
#[derive(Debug, Clone, Parser, Deserialize)]
|
#[derive(Debug, Clone, Parser, Deserialize)]
|
||||||
@ -248,10 +247,6 @@ pub struct Opt {
|
|||||||
#[clap(flatten)]
|
#[clap(flatten)]
|
||||||
pub indexer_options: IndexerOpts,
|
pub indexer_options: IndexerOpts,
|
||||||
|
|
||||||
#[serde(flatten)]
|
|
||||||
#[clap(flatten)]
|
|
||||||
pub scheduler_options: SchedulerConfig,
|
|
||||||
|
|
||||||
/// Set the path to a configuration file that should be used to setup the engine.
|
/// Set the path to a configuration file that should be used to setup the engine.
|
||||||
/// Format must be TOML.
|
/// Format must be TOML.
|
||||||
#[clap(long)]
|
#[clap(long)]
|
||||||
@ -331,7 +326,6 @@ impl Opt {
|
|||||||
dump_dir,
|
dump_dir,
|
||||||
log_level,
|
log_level,
|
||||||
indexer_options,
|
indexer_options,
|
||||||
scheduler_options,
|
|
||||||
import_snapshot: _,
|
import_snapshot: _,
|
||||||
ignore_missing_snapshot: _,
|
ignore_missing_snapshot: _,
|
||||||
ignore_snapshot_if_db_exists: _,
|
ignore_snapshot_if_db_exists: _,
|
||||||
@ -392,7 +386,6 @@ impl Opt {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
indexer_options.export_to_env();
|
indexer_options.export_to_env();
|
||||||
scheduler_options.export_to_env();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn get_ssl_config(&self) -> anyhow::Result<Option<rustls::ServerConfig>> {
|
pub fn get_ssl_config(&self) -> anyhow::Result<Option<rustls::ServerConfig>> {
|
||||||
@ -490,22 +483,6 @@ impl IndexerOpts {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Clone, Parser, Default, Deserialize)]
|
|
||||||
#[serde(rename_all = "snake_case", deny_unknown_fields)]
|
|
||||||
pub struct SchedulerConfig {
|
|
||||||
/// Deactivates auto-batching when provided.
|
|
||||||
#[clap(long, env = DISABLE_AUTO_BATCHING)]
|
|
||||||
#[serde(default)]
|
|
||||||
pub disable_auto_batching: bool,
|
|
||||||
}
|
|
||||||
|
|
||||||
impl SchedulerConfig {
|
|
||||||
pub fn export_to_env(self) {
|
|
||||||
let SchedulerConfig { disable_auto_batching } = self;
|
|
||||||
export_to_env_if_not_present(DISABLE_AUTO_BATCHING, disable_auto_batching.to_string());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
impl TryFrom<&IndexerOpts> for IndexerConfig {
|
impl TryFrom<&IndexerOpts> for IndexerConfig {
|
||||||
type Error = anyhow::Error;
|
type Error = anyhow::Error;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user