From 60b9594fa3ea5c96e3d90a138ac3854705e1a74e Mon Sep 17 00:00:00 2001
From: lichao <lichao@aiotlink.com>
Date: 星期二, 18 五月 2021 11:20:37 +0800
Subject: [PATCH] trivial.

---
 src/topic_node.h |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/src/topic_node.h b/src/topic_node.h
index 338a6e3..be82cf6 100644
--- a/src/topic_node.h
+++ b/src/topic_node.h
@@ -78,7 +78,7 @@
 	MQId ssn() { return SockNode().id(); }
 	bool ClientQueryRPCTopic(const Topic &topic, BHAddress &addr, const int timeout_ms);
 	typedef MsgQueryTopicReply::BHNodeAddress NodeAddress;
-	int QueryRPCTopics(const Topic &topic, std::vector<NodeAddress> &addr, const int timeout_ms);
+	int QueryTopicServers(const Topic &topic, std::vector<NodeAddress> &addr, const int timeout_ms);
 	const std::string &proc_id() { return info_.proc_id(); }
 
 	typedef BHAddress Address;
@@ -130,7 +130,16 @@
 	ShmSocket &SockClient() { return *sockets_[eSockClient]; }
 	ShmSocket &SockServer() { return *sockets_[eSockServer]; }
 
+	void SetProcIndex(int index)
+	{
+		proc_index_ = index;
+		for (int i = eSockStart; i < eSockEnd; ++i) {
+			sockets_[i]->SetNodeProc(index, i);
+		}
+	}
+
 	enum State {
+		eStateUninited,
 		eStateUnregistered,
 		eStateOnline,
 		eStateOffline // heartbeat fail.
@@ -138,12 +147,13 @@
 	void state(const State st) { state_.store(st); }
 	void state_cas(State expected, const State val) { state_.compare_exchange_strong(expected, val); }
 	State state() const { return state_.load(); }
-	bool IsOnline() { return Init() && state() == eStateOnline; }
+	bool IsOnline() { return state() == eStateOnline; }
 	bool Init();
 	bool Valid() const { return !sockets_.empty(); }
 	std::mutex mutex_;
 	MQId ssn_id_ = 0;
 	std::atomic<State> state_;
+	int proc_index_ = -1;
 
 	TopicQueryCache topic_query_cache_;
 };

--
Gitblit v1.8.0