{"record":{"id":"3c78644d8672e415","repo":"juspay/hyperswitch","slug":"failed-to-validate-drainer-configuration","errorCode":null,"errorMessage":"Failed to validate drainer configuration","messagePattern":"Failed to validate drainer configuration","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/drainer/src/main.rs","lineNumber":16,"sourceCode":"use std::collections::HashMap;\n\nuse drainer::{errors::DrainerResult, logger, services, settings, start_drainer, start_web_server};\nuse router_env::tracing::Instrument;\n\n#[tokio::main]\nasync fn main() -> DrainerResult<()> {\n    // Get configuration\n    let cmd_line = <settings::CmdLineConf as clap::Parser>::parse();\n\n    #[allow(clippy::expect_used)]\n    let conf = settings::Settings::with_config_path(cmd_line.config_path)\n        .expect(\"Unable to construct application configuration\");\n    #[allow(clippy::expect_used)]\n    conf.validate()\n        .expect(\"Failed to validate drainer configuration\");\n\n    let state = settings::AppState::new(conf.clone()).await;\n\n    let mut stores = HashMap::new();\n    for (tenant_name, tenant) in conf.multitenancy.get_tenants() {\n        let store = std::sync::Arc::new(services::Store::new(&state.conf, false, tenant).await);\n        stores.insert(tenant_name.clone(), store);\n    }\n\n    #[allow(clippy::print_stdout)] // The logger has not yet been initialized\n    #[cfg(feature = \"vergen\")]\n    {\n        println!(\"Starting drainer (Version: {})\", router_env::git_tag!());\n    }\n\n    let _guard = router_env::setup(\n        &conf.log,\n        router_env::service_name!(),","sourceCodeStart":1,"sourceCodeEnd":34,"githubUrl":"https://github.com/juspay/hyperswitch/blob/705a3219504c3cf9034e71d956455f8834ea4e64/crates/drainer/src/main.rs#L1-L34","documentation":"Error \"Failed to validate drainer configuration\" thrown in juspay/hyperswitch.","triggerScenarios":"Thrown at crates/drainer/src/main.rs:16 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Fix the invalid drainer configuration values reported by validation; compare with the reference config"],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"705a3219504c3cf9034e71d956455f8834ea4e64","analyzedAt":"2026-08-19T10:36:43.745Z","schemaVersion":2},"datasetVersion":"2026-08-21T13:17:26.733Z"}