diff options
Diffstat (limited to 'storage/src/vespa/storage/storageserver/communicationmanager.cpp')
-rw-r--r-- | storage/src/vespa/storage/storageserver/communicationmanager.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/storage/src/vespa/storage/storageserver/communicationmanager.cpp b/storage/src/vespa/storage/storageserver/communicationmanager.cpp index fa2b0cda018..e7d1f06bbd7 100644 --- a/storage/src/vespa/storage/storageserver/communicationmanager.cpp +++ b/storage/src/vespa/storage/storageserver/communicationmanager.cpp @@ -25,6 +25,7 @@ LOG_SETUP(".communication.manager"); using vespalib::make_string; using document::FixedBucketSpaces; +using CommunicationManagerConfig = vespa::config::content::core::StorCommunicationmanagerConfig; namespace storage { @@ -281,6 +282,17 @@ struct PlaceHolderBucketResolver : public BucketResolver { } }; +mbus::RPCNetworkParams::OptimizeFor +convert(CommunicationManagerConfig::Mbus::OptimizeFor optimizeFor) { + switch (optimizeFor) { + case CommunicationManagerConfig::Mbus::OptimizeFor::LATENCY: + return mbus::RPCNetworkParams::OptimizeFor::LATENCY; + case CommunicationManagerConfig::Mbus::OptimizeFor::THROUGHPUT: + default: + return mbus::RPCNetworkParams::OptimizeFor::THROUGHPUT; + } +} + } CommunicationManager::CommunicationManager(StorageComponentRegister& compReg, const config::ConfigUri & configUri) @@ -415,7 +427,7 @@ void CommunicationManager::configure(std::unique_ptr<CommunicationManagerConfig> params.setNumThreads(std::max(1, config->mbus.numThreads)); params.setDispatchOnDecode(config->mbus.dispatchOnDecode); params.setDispatchOnEncode(config->mbus.dispatchOnEncode); - params.setTcpNoDelay(config->mbus.optimizeFor == CommunicationManagerConfig::Mbus::OptimizeFor::LATENCY); + params.setOptimizeFor(convert(config->mbus.optimizeFor)); params.setIdentity(mbus::Identity(_component.getIdentity())); if (config->mbusport != -1) { |