{"record":{"id":"b3e82c485beeba5d","repo":"quickwit-oss/quickwit","slug":"warmup-single-split-initial-allocation-must-b","errorCode":null,"errorMessage":"warmup_single_split_initial_allocation ({}) must be lower or equal to warmup_memory_budget ({})","messagePattern":"warmup_single_split_initial_allocation \\((.+?)\\) must be lower or equal to warmup_memory_budget \\((.+?)\\)","errorType":"validation","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"quickwit/quickwit-config/src/node_config/mod.rs","lineNumber":707,"sourceCode":"        Duration::from_secs(self.leaf_request_timeout_secs.get())\n    }\n    fn default_request_timeout_secs() -> NonZeroU64 {\n        NonZeroU64::new(30).unwrap()\n    }\n    fn validate(&self) -> anyhow::Result<()> {\n        if let Some(split_cache_limits) = self.split_cache {\n            if self.max_num_concurrent_split_searches\n                > split_cache_limits.max_file_descriptors.get() as usize\n            {\n                anyhow::bail!(\n                    \"max_num_concurrent_split_searches ({}) must be lower or equal to \\\n                     split_cache.max_file_descriptors ({})\",\n                    self.max_num_concurrent_split_searches,\n                    split_cache_limits.max_file_descriptors\n                );\n            }\n            if self.warmup_single_split_initial_allocation > self.warmup_memory_budget {\n                anyhow::bail!(\n                    \"warmup_single_split_initial_allocation ({}) must be lower or equal to \\\n                     warmup_memory_budget ({})\",\n                    self.warmup_single_split_initial_allocation,\n                    self.warmup_memory_budget\n                );\n            }\n        }\n        Ok(())\n    }\n}\n\n#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]\n#[serde(rename_all = \"lowercase\")]\npub enum CompressionAlgorithm {\n    Gzip,\n    Zstd,\n}\n","sourceCodeStart":689,"sourceCodeEnd":725,"githubUrl":"https://github.com/quickwit-oss/quickwit/blob/a39730c5cdcd1a4fe798403737ae293999ea21f8/quickwit/quickwit-config/src/node_config/mod.rs#L689-L725","documentation":"Searcher split-cache warmup validation found that `split_cache.warmup_single_split_initial_allocation` (bytes reserved for one split's warmup) exceeds the total `split_cache.warmup_memory_budget`. A single split's warmup could never fit in the budget, so the configuration is rejected.","triggerScenarios":"Thrown at quickwit/quickwit-config/src/node_config/mod.rs:707 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Lower `warmup_single_split_initial_allocation` to at most `warmup_memory_budget`","Increase `warmup_memory_budget` to comfortably exceed the per-split allocation"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"a39730c5cdcd1a4fe798403737ae293999ea21f8","analyzedAt":"2026-09-08T13:19:37.784Z","contentChangedAt":"2026-09-08T13:19:37.784Z","schemaVersion":2},"datasetVersion":"2026-09-17T15:17:12.973Z"}