From 854c63136c4d3a195e2dc617cd7330650bbaf504 Mon Sep 17 00:00:00 2001 From: lichao <lichao@aiotlink.com> Date: 星期三, 28 四月 2021 19:17:02 +0800 Subject: [PATCH] fix Cleanup and center online map not removed. --- box/center.cpp | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/box/center.cpp b/box/center.cpp index 5cb9bc3..0952ca7 100644 --- a/box/center.cpp +++ b/box/center.cpp @@ -392,9 +392,18 @@ EraseMapRec(service_map_, node->services_); EraseMapRec(subscribe_map_, node->subscriptions_); + // remove online record. + auto pos = online_node_addr_map_.find(node->proc_.proc_id()); + if (pos != online_node_addr_map_.end()) { + if (node->addrs_.find(pos->second) != node->addrs_.end()) { + online_node_addr_map_.erase(pos); + } + } + for (auto &addr : node->addrs_) { cleaner_(addr); } + node->addrs_.clear(); } std::string id_; // center proc id; -- Gitblit v1.8.0