aboutsummaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2020-11-26 10:22:20 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2020-11-26 10:22:20 +0000
commit945499a4772698e5c81d5e02f5abf29117b976da (patch)
tree4f8a13140288eef5a3f2b2086bb4068faf64e441 /storage
parent693277054fd2f122ae40aa011e848526fad8a64e (diff)
Also take number of visitor threads into account.
Diffstat (limited to 'storage')
-rw-r--r--storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp13
-rw-r--r--storage/src/vespa/storage/visiting/stor-visitor.def1
2 files changed, 11 insertions, 3 deletions
diff --git a/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp b/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp
index c1c412fefeb..ef40929cb88 100644
--- a/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp
+++ b/storage/src/vespa/storage/persistence/filestorage/filestormanager.cpp
@@ -91,9 +91,8 @@ FileStorManager::~FileStorManager()
}
void
-FileStorManager::print(std::ostream& out, bool verbose, const std::string& indent) const
+FileStorManager::print(std::ostream& out, bool , const std::string& ) const
{
- (void) verbose; (void) indent;
out << "FileStorManager";
}
@@ -124,6 +123,14 @@ selectSequencer(vespa::config::content::StorFilestorConfig::ResponseSequencerTyp
thread_local PersistenceHandler * _G_threadLocalHandler TLS_LINKAGE = nullptr;
+size_t
+computeAllPossibleHandlerThreads(const vespa::config::content::StorFilestorConfig & cfg) {
+ return cfg.numThreads +
+ computeNumResponseThreads(cfg.numResponseThreads) +
+ cfg.numNetworkThreads +
+ cfg.numVisitorThreads;
+}
+
}
PersistenceHandler &
@@ -165,7 +172,7 @@ FileStorManager::configure(std::unique_ptr<vespa::config::content::StorFilestorC
size_t numThreads = _config->numThreads;
size_t numStripes = std::max(size_t(1u), numThreads / 2);
_metrics->initDiskMetrics(_component.getLoadTypes()->getMetricLoadTypes(), numStripes,
- numThreads + _config->numResponseThreads + _config->numNetworkThreads);
+ computeAllPossibleHandlerThreads(*_config));
_filestorHandler = std::make_unique<FileStorHandlerImpl>(numThreads, numStripes, *this, *_metrics, _compReg);
uint32_t numResponseThreads = computeNumResponseThreads(_config->numResponseThreads);
diff --git a/storage/src/vespa/storage/visiting/stor-visitor.def b/storage/src/vespa/storage/visiting/stor-visitor.def
index 72b3699fe2d..ef3c0cd6113 100644
--- a/storage/src/vespa/storage/visiting/stor-visitor.def
+++ b/storage/src/vespa/storage/visiting/stor-visitor.def
@@ -2,6 +2,7 @@
namespace=vespa.config.content.core
## Number of separate threads that runs visitors.
+## Keep in sync with #stor-filestor:num_visitor_threads
visitorthreads int default=16 restart
## Default timeout of visitors that loses contact with client (in seconds)