From 1d937e6ff6425c5f43ed06e78613b57ba21b024d Mon Sep 17 00:00:00 2001 From: stepanrodimanov Date: Thu, 25 Jun 2026 21:50:34 +0300 Subject: [PATCH 1/3] feat: add timeout --- worker/src/worker.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/worker/src/worker.cpp b/worker/src/worker.cpp index bd03edd..c6a61b2 100644 --- a/worker/src/worker.cpp +++ b/worker/src/worker.cpp @@ -116,6 +116,9 @@ void Worker::requestPolicyFromController() { GetPolicyResponse resp; grpc::ClientContext context; + auto deadline = std::chrono::system_clock::now() + std::chrono::seconds(5); + context.set_deadline(deadline); + auto status = stub_->GetPolicy(&context, req, &resp); if (!status.ok()) { @@ -283,6 +286,9 @@ bool Worker::classify(const std::string &type, const std::string &target, ClassifyResponse resp; grpc::ClientContext context; + auto deadline = std::chrono::system_clock::now() + std::chrono::seconds(5); + context.set_deadline(deadline); + auto status = stub_->Classify(&context, req, &resp); if (!status.ok()) { spdlog::error("Classify failed: " + status.error_message()); From f6fc16e716293671646e7b123a91003515f0c044 Mon Sep 17 00:00:00 2001 From: stepanrodimanov Date: Fri, 26 Jun 2026 16:31:02 +0300 Subject: [PATCH 2/3] fix: fix seconds --- worker/src/worker.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/worker/src/worker.cpp b/worker/src/worker.cpp index c6a61b2..d2f69a5 100644 --- a/worker/src/worker.cpp +++ b/worker/src/worker.cpp @@ -116,7 +116,7 @@ void Worker::requestPolicyFromController() { GetPolicyResponse resp; grpc::ClientContext context; - auto deadline = std::chrono::system_clock::now() + std::chrono::seconds(5); + auto deadline = std::chrono::system_clock::now() + std::chrono::seconds(1); context.set_deadline(deadline); auto status = stub_->GetPolicy(&context, req, &resp); @@ -286,7 +286,7 @@ bool Worker::classify(const std::string &type, const std::string &target, ClassifyResponse resp; grpc::ClientContext context; - auto deadline = std::chrono::system_clock::now() + std::chrono::seconds(5); + auto deadline = std::chrono::system_clock::now() + std::chrono::seconds(1); context.set_deadline(deadline); auto status = stub_->Classify(&context, req, &resp); From 633a934033f2c25be656f64f04fb1354016a91ee Mon Sep 17 00:00:00 2001 From: stepanrodimanov Date: Thu, 2 Jul 2026 13:38:28 +0300 Subject: [PATCH 3/3] fix: add logs --- worker/src/worker.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/worker/src/worker.cpp b/worker/src/worker.cpp index d2f69a5..6d29bed 100644 --- a/worker/src/worker.cpp +++ b/worker/src/worker.cpp @@ -122,7 +122,11 @@ void Worker::requestPolicyFromController() { auto status = stub_->GetPolicy(&context, req, &resp); if (!status.ok()) { - spdlog::error("GetPolicy failed: " + status.error_message()); + if (status.error_code() == grpc::DEADLINE_EXCEEDED) { + spdlog::warn("GetPolicy timed out"); + } else { + spdlog::error("GetPolicy failed: {}", status.error_message()); + } return; } @@ -291,7 +295,11 @@ bool Worker::classify(const std::string &type, const std::string &target, auto status = stub_->Classify(&context, req, &resp); if (!status.ok()) { - spdlog::error("Classify failed: " + status.error_message()); + if (status.error_code() == grpc::DEADLINE_EXCEEDED) { + spdlog::warn("Classify timed out"); + } else { + spdlog::error("Classify failed: " + status.error_message()); + } return false; }