summaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2020-10-20 10:44:42 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2020-10-20 10:44:42 +0000
commite986edb8657563c34b28a28e46af1841e9819679 (patch)
treebba37eff009eeb4159ec3585a0b756028943c8ef /storage
parent30a86bc16d6582a6fa9cb34a225e49869613d48c (diff)
Take number of response threads and number of network threads into account.
Diffstat (limited to 'storage')
-rw-r--r--storage/src/vespa/storage/config/stor-communicationmanager.def2
-rw-r--r--storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp3
2 files changed, 4 insertions, 1 deletions
diff --git a/storage/src/vespa/storage/config/stor-communicationmanager.def b/storage/src/vespa/storage/config/stor-communicationmanager.def
index cabb8516153..3511899728d 100644
--- a/storage/src/vespa/storage/config/stor-communicationmanager.def
+++ b/storage/src/vespa/storage/config/stor-communicationmanager.def
@@ -68,6 +68,8 @@ rpc.num_network_threads int default=1
## The bucket id associated with a message is used to select the RPC target.
## This ensures the same RPC target is used for all messages to the same bucket to the same node,
## and the RPC target itself handles sequencing of these messages.
+## NB !! It is vital that this number is kept in sync with stor-filestor:num_network_threads.
+## Only skilled vespa core devolpers should touch this.
rpc.num_targets_per_node int default=1
# Minimum size of packets to compress (0 means no compression)
diff --git a/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp b/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp
index 34e8f599f8f..dd0a933af26 100644
--- a/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp
+++ b/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp
@@ -155,7 +155,8 @@ FileStorManager::configure(std::unique_ptr<vespa::config::content::StorFilestorC
_config = std::move(config);
size_t numThreads = _config->numThreads;
size_t numStripes = std::max(size_t(1u), numThreads / 2);
- _metrics->initDiskMetrics(1, _component.getLoadTypes()->getMetricLoadTypes(), numStripes, numThreads);
+ _metrics->initDiskMetrics(1, _component.getLoadTypes()->getMetricLoadTypes(), numStripes,
+ numThreads + config->numResponseThreads + config->numNetworkThreads);
_filestorHandler = std::make_unique<FileStorHandlerImpl>(numThreads, numStripes, *this, *_metrics, _compReg);
uint32_t numResponseThreads = computeNumResponseThreads(_config->numResponseThreads);