From 8313053a3bbf8950daf3a1c134dde8a25edf0bd2 Mon Sep 17 00:00:00 2001 From: jackpoz Date: Sun, 17 Dec 2017 14:35:18 +0100 Subject: Shared/Metric: Fix crash on shutdown Fix crash on shutdown with metrics enabled but InfluxDB stopping before worldserver (cherry picked from commit 45b2bcfaf266cac74806ed71f32b8dc02cd2321e) --- src/common/Metric/Metric.cpp | 7 ++++--- src/common/Metric/Metric.h | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'src/common') diff --git a/src/common/Metric/Metric.cpp b/src/common/Metric/Metric.cpp index 45893fc1b14..f14d3fac531 100644 --- a/src/common/Metric/Metric.cpp +++ b/src/common/Metric/Metric.cpp @@ -213,16 +213,17 @@ void Metric::ScheduleSend() } } -void Metric::ForceSend() +void Metric::Unload() { // Send what's queued only if IoContext is stopped (so only on shutdown) if (_enabled && Trinity::Asio::get_io_context(*_batchTimer).stopped()) { _enabled = false; SendBatch(); - _batchTimer->cancel(); - _overallStatusTimer->cancel(); } + + _batchTimer->cancel(); + _overallStatusTimer->cancel(); } void Metric::ScheduleOverallStatusLog() diff --git a/src/common/Metric/Metric.h b/src/common/Metric/Metric.h index d5085d27307..1ce27649fd9 100644 --- a/src/common/Metric/Metric.h +++ b/src/common/Metric/Metric.h @@ -115,7 +115,7 @@ public: void LogEvent(std::string const& category, std::string const& title, std::string const& description); - void ForceSend(); + void Unload(); bool IsEnabled() const { return _enabled; } }; -- cgit v1.2.3