diff options
author | Arne H Juul <arnej@yahooinc.com> | 2021-09-08 10:33:07 +0000 |
---|---|---|
committer | Arne H Juul <arnej@yahooinc.com> | 2021-09-08 11:23:18 +0000 |
commit | 6dd7cf05769a84c5cf59feaf530080ca4c877e29 (patch) | |
tree | 28e3f5171f363bda42e2ecb924b9845906af1867 /slobrok/src | |
parent | d81e11514c0af9aeb9f78df0c912fcd7a97e1ef5 (diff) |
wire feature flag into SBEnv
Diffstat (limited to 'slobrok/src')
-rw-r--r-- | slobrok/src/apps/slobrok/slobrok.cpp | 7 | ||||
-rw-r--r-- | slobrok/src/vespa/slobrok/server/sbenv.cpp | 5 | ||||
-rw-r--r-- | slobrok/src/vespa/slobrok/server/sbenv.h | 3 |
3 files changed, 11 insertions, 4 deletions
diff --git a/slobrok/src/apps/slobrok/slobrok.cpp b/slobrok/src/apps/slobrok/slobrok.cpp index 63212745644..b2748762a12 100644 --- a/slobrok/src/apps/slobrok/slobrok.cpp +++ b/slobrok/src/apps/slobrok/slobrok.cpp @@ -50,6 +50,7 @@ App::Main() { uint32_t portnum = 2773; vespalib::string cfgId; + bool useNewLogic = false; int argi = 1; const char* optArg; @@ -63,7 +64,7 @@ App::Main() portnum = atoi(optArg); break; case 'N': - // ignore flag for now + useNewLogic = true; break; default: LOG(error, "unknown option letter '%c'", c); @@ -75,11 +76,11 @@ App::Main() if (cfgId.empty()) { LOG(debug, "no config id specified"); ConfigShim shim(portnum); - mainobj = std::make_unique<SBEnv>(shim); + mainobj = std::make_unique<SBEnv>(shim, useNewLogic); } else { ConfigShim shim(portnum, cfgId); shim.enableStateServer(true); - mainobj = std::make_unique<SBEnv>(shim); + mainobj = std::make_unique<SBEnv>(shim, useNewLogic); } hook_sigterm(); res = mainobj->MainLoop(); diff --git a/slobrok/src/vespa/slobrok/server/sbenv.cpp b/slobrok/src/vespa/slobrok/server/sbenv.cpp index 1f54716c29c..19396934e67 100644 --- a/slobrok/src/vespa/slobrok/server/sbenv.cpp +++ b/slobrok/src/vespa/slobrok/server/sbenv.cpp @@ -97,12 +97,15 @@ ConfigTask::PerformTask() } // namespace slobrok::<unnamed> -SBEnv::SBEnv(const ConfigShim &shim) +SBEnv::SBEnv(const ConfigShim &shim) : SBEnv(shim, false) {} + +SBEnv::SBEnv(const ConfigShim &shim, bool useNewConsensusLogic) : _transport(std::make_unique<FNET_Transport>(TransportConfig().drop_empty_buffers(true))), _supervisor(std::make_unique<FRT_Supervisor>(_transport.get())), _configShim(shim), _configurator(shim.factory().create(*this)), _shuttingDown(false), + _useNewLogic(useNewConsensusLogic), _partnerList(), _me(createSpec(_configShim.portNumber())), _rpcHooks(*this, _rpcsrvmap, _rpcsrvmanager), diff --git a/slobrok/src/vespa/slobrok/server/sbenv.h b/slobrok/src/vespa/slobrok/server/sbenv.h index 44b7305814c..c6fd8905131 100644 --- a/slobrok/src/vespa/slobrok/server/sbenv.h +++ b/slobrok/src/vespa/slobrok/server/sbenv.h @@ -44,6 +44,7 @@ private: ConfigShim _configShim; Configurator::UP _configurator; bool _shuttingDown; + const bool _useNewLogic; SBEnv(const SBEnv &); // Not used SBEnv &operator=(const SBEnv &); // Not used @@ -71,6 +72,7 @@ private: public: explicit SBEnv(const ConfigShim &shim); + SBEnv(const ConfigShim &shim, bool useNewConsensusLogic); ~SBEnv(); FNET_Transport *getTransport() { return _transport.get(); } @@ -105,6 +107,7 @@ public: bool isSuspended() const { return false; } bool isShuttingDown() const { return _shuttingDown; } + bool useNewLogic() const { return _useNewLogic; } int MainLoop(); |