summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@oath.com>2018-02-28 12:01:45 +0000
committerTor Egge <Tor.Egge@oath.com>2018-02-28 12:01:45 +0000
commit6e6f99522d0ffe0e80f3fa55ac8c8e8bc9cde5da (patch)
tree3d3575301a7e987c995658a21ac1dfe5d3c10434 /searchcore
parent29b39068a3ffd22f906e72fdf2eedb9fe4d9d096 (diff)
Don't use semi-unbound task limit for summary executor when visibility
delay is nonzero.
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/documentdb.cpp6
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.cpp10
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.h4
3 files changed, 6 insertions, 14 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp b/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp
index 1b2cc18708c..39d902ebfc2 100644
--- a/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp
+++ b/searchcore/src/vespa/searchcore/proton/server/documentdb.cpp
@@ -168,7 +168,7 @@ DocumentDB::DocumentDB(const vespalib::string &baseDir,
fastos::TimeStamp visibilityDelay = loaded_config->getMaintenanceConfigSP()->getVisibilityDelay();
_visibility.setVisibilityDelay(visibilityDelay);
if (_visibility.getVisibilityDelay() > 0) {
- _writeService.setTaskLimit(_writeServiceConfig.semiUnboundTaskLimit());
+ _writeService.setTaskLimit(_writeServiceConfig.semiUnboundTaskLimit(), _writeServiceConfig.defaultTaskLimit());
}
}
@@ -413,9 +413,9 @@ DocumentDB::applyConfig(DocumentDBConfig::SP configSnapshot, SerialNum serialNum
_visibility.setVisibilityDelay(visibilityDelay);
}
if (_visibility.getVisibilityDelay() > 0) {
- _writeService.setTaskLimit(_writeServiceConfig.semiUnboundTaskLimit());
+ _writeService.setTaskLimit(_writeServiceConfig.semiUnboundTaskLimit(), _writeServiceConfig.defaultTaskLimit());
} else {
- _writeService.setTaskLimit(_writeServiceConfig.defaultTaskLimit());
+ _writeService.setTaskLimit(_writeServiceConfig.defaultTaskLimit(), _writeServiceConfig.defaultTaskLimit());
}
if (params.shouldSubDbsChange() || hasVisibilityDelayChanged) {
applySubDBConfig(*configSnapshot, serialNum, params);
diff --git a/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.cpp b/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.cpp
index bcb5190081c..52a401a9e35 100644
--- a/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.cpp
+++ b/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.cpp
@@ -59,20 +59,14 @@ ExecutorThreadingService::shutdown()
}
void
-ExecutorThreadingService::setTaskLimit(uint32_t taskLimit)
+ExecutorThreadingService::setTaskLimit(uint32_t taskLimit, uint32_t summaryTaskLimit)
{
_indexExecutor.setTaskLimit(taskLimit);
- _summaryExecutor.setTaskLimit(taskLimit);
+ _summaryExecutor.setTaskLimit(summaryTaskLimit);
_indexFieldInverter.setTaskLimit(taskLimit);
_indexFieldWriter.setTaskLimit(taskLimit);
_attributeFieldWriter.setTaskLimit(taskLimit);
}
-void
-ExecutorThreadingService::setUnboundTaskLimit()
-{
- setTaskLimit(std::numeric_limits<uint32_t>::max());
-}
-
} // namespace proton
diff --git a/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.h b/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.h
index 1daba7d7960..2e9eecf8fea 100644
--- a/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.h
+++ b/searchcore/src/vespa/searchcore/proton/server/executorthreadingservice.h
@@ -45,9 +45,7 @@ public:
void shutdown();
- void setTaskLimit(uint32_t taskLimit);
-
- void setUnboundTaskLimit();
+ void setTaskLimit(uint32_t taskLimit, uint32_t summaryTaskLimit);
// Expose the underlying executors for stats fetching and testing.
vespalib::ThreadStackExecutorBase &getMasterExecutor() {