summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHåvard Pettersen <havardpe@oath.com>2019-05-14 12:55:05 +0000
committerHåvard Pettersen <havardpe@oath.com>2019-05-14 12:55:05 +0000
commit1503a9df2da8c06c8336e521811d2e589a1ce674 (patch)
tree3198e446513421954f3208b273c9e746b18f0591 /searchcore
parent3830d8e3ddfb430d09b2ee188a7325b57d11832a (diff)
introduce online state in proto rpc adapter
this is to ensure we do not start server stuff until we are officially online.
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/proton.cpp1
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/rpc_hooks.cpp6
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/rpc_hooks.h1
3 files changed, 8 insertions, 0 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/proton.cpp b/searchcore/src/vespa/searchcore/proton/server/proton.cpp
index f39d9d8620c..772be9049db 100644
--- a/searchcore/src/vespa/searchcore/proton/server/proton.cpp
+++ b/searchcore/src/vespa/searchcore/proton/server/proton.cpp
@@ -332,6 +332,7 @@ Proton::init(const BootstrapConfig::SP & configSnapshot)
_executor.sync();
waitForOnlineState();
_isReplayDone = true;
+ _rpcHooks->set_online();
if ( ! _fs4Server->start() ) {
throw vespalib::PortListenException(protonConfig.ptport, "FS4");
}
diff --git a/searchcore/src/vespa/searchcore/proton/server/rpc_hooks.cpp b/searchcore/src/vespa/searchcore/proton/server/rpc_hooks.cpp
index 99cc62ce30c..fca49a52553 100644
--- a/searchcore/src/vespa/searchcore/proton/server/rpc_hooks.cpp
+++ b/searchcore/src/vespa/searchcore/proton/server/rpc_hooks.cpp
@@ -216,6 +216,12 @@ RPCHooksBase::open(Params & params)
LOG(debug, "started monitoring interface");
}
+void
+RPCHooksBase::set_online()
+{
+ _proto_rpc_adapter->set_online();
+}
+
RPCHooksBase::~RPCHooksBase() = default;
void
diff --git a/searchcore/src/vespa/searchcore/proton/server/rpc_hooks.h b/searchcore/src/vespa/searchcore/proton/server/rpc_hooks.h
index f16237381d6..21b433acf7b 100644
--- a/searchcore/src/vespa/searchcore/proton/server/rpc_hooks.h
+++ b/searchcore/src/vespa/searchcore/proton/server/rpc_hooks.h
@@ -99,6 +99,7 @@ public:
RPCHooksBase(const RPCHooksBase &) = delete;
RPCHooksBase & operator = (const RPCHooksBase &) = delete;
RPCHooksBase(Params &params);
+ void set_online();
virtual ~RPCHooksBase();
void close();