From 36b8cd42e1ddf1672b389b75b527ac524a08c0cd Mon Sep 17 00:00:00 2001 From: Ed Hennis Date: Fri, 20 Jun 2025 12:24:34 -0400 Subject: [PATCH] Require a message on "Application::signalStop" (#5255) This change adds a message parameter to Application::signalStop for extra context. --- src/test/jtx/impl/Env.cpp | 2 +- src/xrpld/app/main/Application.cpp | 8 ++++---- src/xrpld/app/main/Application.h | 2 +- src/xrpld/rpc/handlers/Stop.cpp | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/test/jtx/impl/Env.cpp b/src/test/jtx/impl/Env.cpp index 531715d46..cff461248 100644 --- a/src/test/jtx/impl/Env.cpp +++ b/src/test/jtx/impl/Env.cpp @@ -96,7 +96,7 @@ Env::AppBundle::~AppBundle() if (app) { app->getJobQueue().rendezvous(); - app->signalStop(); + app->signalStop("~AppBundle"); } if (thread.joinable()) thread.join(); diff --git a/src/xrpld/app/main/Application.cpp b/src/xrpld/app/main/Application.cpp index eeea52ec3..57903f4ec 100644 --- a/src/xrpld/app/main/Application.cpp +++ b/src/xrpld/app/main/Application.cpp @@ -288,7 +288,7 @@ public: config_->CONFIG_DIR), *this, logs_->journal("PerfLog"), - [this] { signalStop(); })) + [this] { signalStop("PerfLog"); })) , m_txMaster(*this) @@ -508,7 +508,7 @@ public: void run() override; void - signalStop(std::string msg = "") override; + signalStop(std::string msg) override; bool checkSigs() const override; void @@ -980,7 +980,7 @@ public: if (!config_->standalone() && !getRelationalDatabase().transactionDbHasSpace(*config_)) { - signalStop(); + signalStop("Out of transaction DB space"); } // VFALCO NOTE Does the order of calls matter? @@ -1200,7 +1200,7 @@ ApplicationImp::setup(boost::program_options::variables_map const& cmdline) JLOG(m_journal.info()) << "Received signal " << signum; if (signum == SIGTERM || signum == SIGINT) - signalStop(); + signalStop("Signal: " + to_string(signum)); }); auto debug_log = config_->getDebugLogFile(); diff --git a/src/xrpld/app/main/Application.h b/src/xrpld/app/main/Application.h index de0fb63c3..1b142eadf 100644 --- a/src/xrpld/app/main/Application.h +++ b/src/xrpld/app/main/Application.h @@ -140,7 +140,7 @@ public: virtual void run() = 0; virtual void - signalStop(std::string msg = "") = 0; + signalStop(std::string msg) = 0; virtual bool checkSigs() const = 0; virtual void diff --git a/src/xrpld/rpc/handlers/Stop.cpp b/src/xrpld/rpc/handlers/Stop.cpp index 03e73fb6b..95da27dc6 100644 --- a/src/xrpld/rpc/handlers/Stop.cpp +++ b/src/xrpld/rpc/handlers/Stop.cpp @@ -31,7 +31,7 @@ struct JsonContext; Json::Value doStop(RPC::JsonContext& context) { - context.app.signalStop(); + context.app.signalStop("RPC"); return RPC::makeObjectValue(systemName() + " server stopping"); }