From fbb50a434589a45168c8358a3cac713802d0de88 Mon Sep 17 00:00:00 2001 From: Naveed Jooma Date: Tue, 25 Nov 2025 14:15:38 -0600 Subject: [PATCH 1/6] Read no module parent env var --- src/viam/sdk/module/service.cpp | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/src/viam/sdk/module/service.cpp b/src/viam/sdk/module/service.cpp index 26ec3c84b..c13474d81 100644 --- a/src/viam/sdk/module/service.cpp +++ b/src/viam/sdk/module/service.cpp @@ -208,15 +208,23 @@ struct ModuleService::ServiceImpl : viam::module::v1::ModuleService::Service { const std::lock_guard lock(parent.lock_); const viam::module::v1::HandlerMap hm = to_proto(parent.module_->handles()); *response->mutable_handlermap() = hm; - auto new_parent_addr = parent.grpc_conn_protocol_ + request->parent_address(); - if (parent.parent_addr_ != new_parent_addr) { - parent.parent_addr_ = std::move(new_parent_addr); - Options opts{0, boost::none}; - opts.set_check_every_interval(std::chrono::seconds{5}) - .set_reconnect_every_interval(std::chrono::seconds{1}); - parent.parent_ = RobotClient::at_local_socket(parent.parent_addr_, opts); - parent.parent_->connect_logging(); + + + char * no_module_parent; + no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); + if (strcmp(no_module_parent, "true") != 0) { + auto new_parent_addr = parent.grpc_conn_protocol_ + request->parent_address(); + if (parent.parent_addr_ != new_parent_addr) { + parent.parent_addr_ = std::move(new_parent_addr); + Options opts{0, boost::none}; + opts.set_check_every_interval(std::chrono::seconds{5}) + .set_reconnect_every_interval(std::chrono::seconds{1}); + parent.parent_ = RobotClient::at_local_socket(parent.parent_addr_, opts); + parent.parent_->connect_logging(); + } } + + response->set_ready(parent.module_->ready()); return grpc::Status(); } From 141707f6d1347ba50e3760a1a1dc59a372f058e5 Mon Sep 17 00:00:00 2001 From: Naveed Jooma Date: Wed, 26 Nov 2025 10:06:00 -0600 Subject: [PATCH 2/6] clang-format --- src/viam/sdk/module/service.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/viam/sdk/module/service.cpp b/src/viam/sdk/module/service.cpp index c13474d81..69b945c9c 100644 --- a/src/viam/sdk/module/service.cpp +++ b/src/viam/sdk/module/service.cpp @@ -209,8 +209,7 @@ struct ModuleService::ServiceImpl : viam::module::v1::ModuleService::Service { const viam::module::v1::HandlerMap hm = to_proto(parent.module_->handles()); *response->mutable_handlermap() = hm; - - char * no_module_parent; + char* no_module_parent; no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); if (strcmp(no_module_parent, "true") != 0) { auto new_parent_addr = parent.grpc_conn_protocol_ + request->parent_address(); @@ -224,7 +223,6 @@ struct ModuleService::ServiceImpl : viam::module::v1::ModuleService::Service { } } - response->set_ready(parent.module_->ready()); return grpc::Status(); } From c9e95072ebaaf7da83519e635d04d9e5cc6b5263 Mon Sep 17 00:00:00 2001 From: Naveed Jooma Date: Mon, 1 Dec 2025 12:04:37 -0600 Subject: [PATCH 3/6] Update src/viam/sdk/module/service.cpp Co-authored-by: lia <167905060+lia-viam@users.noreply.github.com> --- src/viam/sdk/module/service.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/viam/sdk/module/service.cpp b/src/viam/sdk/module/service.cpp index 69b945c9c..cba70e698 100644 --- a/src/viam/sdk/module/service.cpp +++ b/src/viam/sdk/module/service.cpp @@ -209,7 +209,7 @@ struct ModuleService::ServiceImpl : viam::module::v1::ModuleService::Service { const viam::module::v1::HandlerMap hm = to_proto(parent.module_->handles()); *response->mutable_handlermap() = hm; - char* no_module_parent; + const char* no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); if (strcmp(no_module_parent, "true") != 0) { auto new_parent_addr = parent.grpc_conn_protocol_ + request->parent_address(); From 3f84e7177f85b8412e5663fd08995ecde2f86317 Mon Sep 17 00:00:00 2001 From: Naveed Jooma Date: Mon, 1 Dec 2025 12:48:04 -0600 Subject: [PATCH 4/6] Add nolint --- src/viam/sdk/module/service.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/viam/sdk/module/service.cpp b/src/viam/sdk/module/service.cpp index cba70e698..3c518465f 100644 --- a/src/viam/sdk/module/service.cpp +++ b/src/viam/sdk/module/service.cpp @@ -209,7 +209,7 @@ struct ModuleService::ServiceImpl : viam::module::v1::ModuleService::Service { const viam::module::v1::HandlerMap hm = to_proto(parent.module_->handles()); *response->mutable_handlermap() = hm; - const char* no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); + const char* no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); // NOLINT(concurrency-mt-unsafe) no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); if (strcmp(no_module_parent, "true") != 0) { auto new_parent_addr = parent.grpc_conn_protocol_ + request->parent_address(); From 4fa5c783d41c718087eebc386dfdd63769a7a862 Mon Sep 17 00:00:00 2001 From: Naveed Jooma Date: Mon, 1 Dec 2025 12:49:48 -0600 Subject: [PATCH 5/6] Fix lint --- src/viam/sdk/module/service.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/viam/sdk/module/service.cpp b/src/viam/sdk/module/service.cpp index 3c518465f..6c0bb65ec 100644 --- a/src/viam/sdk/module/service.cpp +++ b/src/viam/sdk/module/service.cpp @@ -209,7 +209,8 @@ struct ModuleService::ServiceImpl : viam::module::v1::ModuleService::Service { const viam::module::v1::HandlerMap hm = to_proto(parent.module_->handles()); *response->mutable_handlermap() = hm; - const char* no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); // NOLINT(concurrency-mt-unsafe) + const char* no_module_parent = + std::getenv("VIAM_NO_MODULE_PARENT"); // NOLINT(concurrency-mt-unsafe) no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); if (strcmp(no_module_parent, "true") != 0) { auto new_parent_addr = parent.grpc_conn_protocol_ + request->parent_address(); From bd89d5c07a9b4b85ac508a0780e7b78d1bf26431 Mon Sep 17 00:00:00 2001 From: Naveed Jooma Date: Mon, 1 Dec 2025 13:40:21 -0600 Subject: [PATCH 6/6] Had a double get env --- src/viam/sdk/module/service.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/viam/sdk/module/service.cpp b/src/viam/sdk/module/service.cpp index 6c0bb65ec..7784bcbfb 100644 --- a/src/viam/sdk/module/service.cpp +++ b/src/viam/sdk/module/service.cpp @@ -211,7 +211,6 @@ struct ModuleService::ServiceImpl : viam::module::v1::ModuleService::Service { const char* no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); // NOLINT(concurrency-mt-unsafe) - no_module_parent = std::getenv("VIAM_NO_MODULE_PARENT"); if (strcmp(no_module_parent, "true") != 0) { auto new_parent_addr = parent.grpc_conn_protocol_ + request->parent_address(); if (parent.parent_addr_ != new_parent_addr) {