aboutsummaryrefslogtreecommitdiffstats
path: root/storage/src/vespa/storage/visiting/visitormanager.h
diff options
context:
space:
mode:
Diffstat (limited to 'storage/src/vespa/storage/visiting/visitormanager.h')
-rw-r--r--storage/src/vespa/storage/visiting/visitormanager.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/storage/src/vespa/storage/visiting/visitormanager.h b/storage/src/vespa/storage/visiting/visitormanager.h
index 02bb37db59f..fefa2c218ab 100644
--- a/storage/src/vespa/storage/visiting/visitormanager.h
+++ b/storage/src/vespa/storage/visiting/visitormanager.h
@@ -1,4 +1,4 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
/**
* @class storage::VisitorManager
* @ingroup storageserver
@@ -44,10 +44,11 @@ class VisitorManager : public framework::Runnable,
public StorageLink,
public framework::HtmlStatusReporter,
private VisitorMessageHandler,
- private config::IFetcherCallback<vespa::config::content::core::StorVisitorConfig>,
private framework::MetricUpdateHook
{
private:
+ using StorVisitorConfig = vespa::config::content::core::StorVisitorConfig;
+
StorageComponentRegister& _componentRegister;
VisitorMessageSessionFactory& _messageSessionFactory;
std::vector<std::pair<std::shared_ptr<VisitorThread>,
@@ -64,7 +65,6 @@ private:
mutable std::mutex _visitorLock;
std::condition_variable _visitorCond;
uint64_t _visitorCounter;
- std::unique_ptr<config::ConfigFetcher> _configFetcher;
std::shared_ptr<VisitorMetrics> _metrics;
uint32_t _maxFixedConcurrentVisitors;
uint32_t _maxVariableConcurrentVisitors;
@@ -82,7 +82,7 @@ private:
bool _enforceQueueUse;
VisitorFactory::Map _visitorFactories;
public:
- VisitorManager(const config::ConfigUri & configUri,
+ VisitorManager(const StorVisitorConfig& bootstrap_config,
StorageComponentRegister&,
VisitorMessageSessionFactory&,
VisitorFactory::Map external = VisitorFactory::Map(),
@@ -94,6 +94,8 @@ public:
uint32_t getActiveVisitorCount() const;
void setTimeBetweenTicks(uint32_t time);
+ void on_configure(const vespa::config::content::core::StorVisitorConfig&);
+
void setMaxConcurrentVisitors(uint32_t count) { // Used in unit testing
_maxFixedConcurrentVisitors = count;
_maxVariableConcurrentVisitors = 0;
@@ -122,7 +124,6 @@ public:
private:
using MonitorGuard = std::unique_lock<std::mutex>;
- void configure(std::unique_ptr<vespa::config::content::core::StorVisitorConfig>) override;
void run(framework::ThreadHandle&) override;
/**