From dbca33cc9903a49e7530f46681788cb972708520 Mon Sep 17 00:00:00 2001 From: Braydon Fuller Date: Thu, 3 Oct 2024 16:54:07 -0700 Subject: [PATCH] Add timeout config for router. --- src/apps/mesh/cmd_router.cpp | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/apps/mesh/cmd_router.cpp b/src/apps/mesh/cmd_router.cpp index 2c0cd8d..2a48f9d 100644 --- a/src/apps/mesh/cmd_router.cpp +++ b/src/apps/mesh/cmd_router.cpp @@ -218,7 +218,7 @@ struct Router { }; std::string routerConfigFile; - uint64_t connectionTimeoutUs = 5'000'000; + uint64_t connectionTimeoutUs = 20'000'000; WriterPipeline writer; Decompressor decomp; @@ -293,6 +293,19 @@ struct Router { void reconcileConfig() { LI << "Loading router config file: " << routerConfigFile; + try { + auto routerConfig = loadRawTaoConfig(routerConfigFile); + + if (routerConfig.find("timeout")) { + connectionTimeoutUs = stoi(routerConfig.at("timeout").get_string()) * 1'000'000; + LI << "Using configured timeout (seconds): " << (connectionTimeoutUs / 1'000'000); + } else { + LI << "Using default timeout (seconds): " << connectionTimeoutUs / 1'000'000; + } + } catch (std::exception &e) { + LE << "Failed to parse router timeout in config: " << e.what(); + } + try { auto routerConfig = loadRawTaoConfig(routerConfigFile);