summaryrefslogtreecommitdiffstats
path: root/storage
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2016-12-20 14:41:39 +0100
committerHenning Baldersheim <balder@yahoo-inc.com>2016-12-20 15:50:29 +0100
commit51bc810507f2067ebd2646274d3cda5cb583a620 (patch)
treecbff1f6464262c2e6b3a622db93d044bab69a532 /storage
parent530e52e17a85836d58cac58c89b71c189c6f9873 (diff)
Further decouple some hpp files, config and the attributevector.
Diffstat (limited to 'storage')
-rw-r--r--storage/src/tests/common/teststorageapp.cpp2
-rw-r--r--storage/src/tests/distributor/bucketdbupdatertest.cpp13
-rw-r--r--storage/src/tests/distributor/bucketstateoperationtest.cpp4
-rw-r--r--storage/src/tests/distributor/distributortest.cpp3
-rw-r--r--storage/src/tests/distributor/distributortestutil.cpp54
-rw-r--r--storage/src/tests/distributor/distributortestutil.h58
-rw-r--r--storage/src/tests/distributor/externaloperationhandlertest.cpp5
-rw-r--r--storage/src/tests/distributor/garbagecollectiontest.cpp3
-rw-r--r--storage/src/tests/distributor/getoperationtest.cpp5
-rw-r--r--storage/src/tests/distributor/idealstatemanagertest.cpp13
-rw-r--r--storage/src/tests/distributor/joinbuckettest.cpp3
-rw-r--r--storage/src/tests/distributor/mergeoperationtest.cpp6
-rw-r--r--storage/src/tests/distributor/messagesenderstub.h1
-rw-r--r--storage/src/tests/distributor/operationtargetresolvertest.cpp6
-rw-r--r--storage/src/tests/distributor/putoperationtest.cpp4
-rw-r--r--storage/src/tests/distributor/removebucketoperationtest.cpp4
-rw-r--r--storage/src/tests/distributor/removelocationtest.cpp5
-rw-r--r--storage/src/tests/distributor/removeoperationtest.cpp5
-rw-r--r--storage/src/tests/distributor/splitbuckettest.cpp5
-rw-r--r--storage/src/tests/distributor/statecheckerstest.cpp1
-rw-r--r--storage/src/tests/distributor/statoperationtest.cpp2
-rw-r--r--storage/src/tests/distributor/twophaseupdateoperationtest.cpp8
-rw-r--r--storage/src/tests/distributor/updateoperationtest.cpp8
-rw-r--r--storage/src/tests/distributor/visitoroperationtest.cpp2
-rw-r--r--storage/src/vespa/storage/bucketdb/storagebucketdbinitializer.cpp1
-rw-r--r--storage/src/vespa/storage/distributor/bucketdbupdater.h22
-rw-r--r--storage/src/vespa/storage/distributor/distributor.h27
-rw-r--r--storage/src/vespa/storage/distributor/externaloperationhandler.cpp10
-rw-r--r--storage/src/vespa/storage/distributor/pendingclusterstate.h1
-rw-r--r--storage/src/vespa/storage/persistence/persistenceutil.cpp6
-rw-r--r--storage/src/vespa/storage/storageserver/statemanager.h5
-rw-r--r--storage/src/vespa/storage/tools/getidealstate.cpp1
32 files changed, 139 insertions, 154 deletions
diff --git a/storage/src/tests/common/teststorageapp.cpp b/storage/src/tests/common/teststorageapp.cpp
index dcd19468ac7..de4d52d8f45 100644
--- a/storage/src/tests/common/teststorageapp.cpp
+++ b/storage/src/tests/common/teststorageapp.cpp
@@ -13,6 +13,8 @@
#include <vespa/vespalib/io/fileutil.h>
#include <vespa/vespalib/util/exceptions.h>
#include <vespa/config/config.h>
+#include <vespa/config/helper/configgetter.hpp>
+
#include <vespa/log/log.h>
LOG_SETUP(".test.servicelayerapp");
diff --git a/storage/src/tests/distributor/bucketdbupdatertest.cpp b/storage/src/tests/distributor/bucketdbupdatertest.cpp
index cb89ade9167..d76132e24ab 100644
--- a/storage/src/tests/distributor/bucketdbupdatertest.cpp
+++ b/storage/src/tests/distributor/bucketdbupdatertest.cpp
@@ -1,26 +1,15 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <vespa/vdstestlib/cppunit/macros.h>
#include <iomanip>
-#include <iostream>
-#include <memory>
#include <vespa/storageapi/message/persistence.h>
#include <vespa/storage/distributor/bucketdbupdater.h>
-#include <vespa/storageapi/message/bucket.h>
-#include <vespa/storageapi/message/state.h>
-#include <vespa/document/fieldvalue/document.h>
-#include <vespa/vdslib/state/random.h>
#include <vespa/vespalib/io/fileutil.h>
-#include <vespa/storageapi/message/bucket.h>
-#include <vespa/storage/distributor/pendingclusterstate.h>
#include <vespa/storageframework/defaultimplementation/clock/realclock.h>
-#include <vespa/storageframework/storageframework.h>
-#include <vespa/vespalib/text/stringtokenizer.h>
#include <vespa/storage/storageutil/distributorstatecache.h>
#include <tests/distributor/distributortestutil.h>
-#include <tests/distributor/messagesenderstub.h>
#include <vespa/storage/distributor/simpleclusterinformation.h>
+#include <vespa/storage/distributor/distributor.h>
#include <iostream>
#include <fstream>
diff --git a/storage/src/tests/distributor/bucketstateoperationtest.cpp b/storage/src/tests/distributor/bucketstateoperationtest.cpp
index 1477f1d6ed0..67346626ad0 100644
--- a/storage/src/tests/distributor/bucketstateoperationtest.cpp
+++ b/storage/src/tests/distributor/bucketstateoperationtest.cpp
@@ -1,9 +1,9 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
+
#include <cppunit/extensions/HelperMacros.h>
#include <tests/distributor/distributortestutil.h>
#include <vespa/storage/distributor/operations/idealstate/setbucketstateoperation.h>
-#include <vespa/storageapi/messageapi/storagemessage.h>
+#include <vespa/storage/distributor/distributor.h>
namespace storage {
diff --git a/storage/src/tests/distributor/distributortest.cpp b/storage/src/tests/distributor/distributortest.cpp
index 4bea7b3646a..40359ef460f 100644
--- a/storage/src/tests/distributor/distributortest.cpp
+++ b/storage/src/tests/distributor/distributortest.cpp
@@ -1,5 +1,5 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
+
#include <iomanip>
#include <iostream>
#include <memory>
@@ -14,6 +14,7 @@
#include <tests/distributor/distributortestutil.h>
#include <vespa/storage/config/config-stor-distributormanager.h>
#include <tests/common/dummystoragelink.h>
+#include <vespa/storage/distributor/distributor.h>
namespace storage {
diff --git a/storage/src/tests/distributor/distributortestutil.cpp b/storage/src/tests/distributor/distributortestutil.cpp
index 4ed95011e97..1570aa98acc 100644
--- a/storage/src/tests/distributor/distributortestutil.cpp
+++ b/storage/src/tests/distributor/distributortestutil.cpp
@@ -2,13 +2,20 @@
#include <vespa/document/base/testdocman.h>
#include <vespa/storageframework/defaultimplementation/memory/nomemorymanager.h>
#include <tests/distributor/distributortestutil.h>
-#include <vespa/vespalib/text/stringtokenizer.h>
+#include <vespa/storage/distributor/distributor.h>
#include <vespa/config-stor-distribution.h>
namespace storage {
namespace distributor {
+DistributorTestUtil::DistributorTestUtil()
+ : _messageSender(_sender, _senderDown)
+{
+ _config = getStandardConfig(false);
+}
+DistributorTestUtil::~DistributorTestUtil() { }
+
void
DistributorTestUtil::createLinks()
{
@@ -305,6 +312,51 @@ DistributorTestUtil::disableBucketActivationInConfig(bool disable)
getConfig().configure(config);
}
+BucketDBUpdater&
+DistributorTestUtil::getBucketDBUpdater() {
+ return _distributor->_bucketDBUpdater;
+}
+IdealStateManager&
+DistributorTestUtil::getIdealStateManager() {
+ return _distributor->_idealStateManager;
+}
+ExternalOperationHandler&
+DistributorTestUtil::getExternalOperationHandler() {
+ return _distributor->_externalOperationHandler;
+}
+
+bool
+DistributorTestUtil::tick() {
+ framework::ThreadWaitInfo res(
+ framework::ThreadWaitInfo::NO_MORE_CRITICAL_WORK_KNOWN);
+ {
+ framework::TickingLockGuard lock(
+ _distributor->_threadPool.freezeCriticalTicks());
+ res.merge(_distributor->doCriticalTick(0));
+ }
+ res.merge(_distributor->doNonCriticalTick(0));
+ return !res.waitWanted();
+}
+
+DistributorConfiguration&
+DistributorTestUtil::getConfig() {
+ return const_cast<DistributorConfiguration&>(_distributor->getConfig());
+}
+
+BucketDatabase&
+DistributorTestUtil::getBucketDatabase() {
+ return _distributor->getDefaultBucketSpace().getBucketDatabase();
+}
+const BucketDatabase&
+DistributorTestUtil::getBucketDatabase() const {
+ return _distributor->getDefaultBucketSpace().getBucketDatabase();
+}
+
+const lib::Distribution&
+DistributorTestUtil::getDistribution() const {
+ return _distributor->getDefaultBucketSpace().getDistribution();
+}
+
}
}
diff --git a/storage/src/tests/distributor/distributortestutil.h b/storage/src/tests/distributor/distributortestutil.h
index b7375be8e98..d984e486cee 100644
--- a/storage/src/tests/distributor/distributortestutil.h
+++ b/storage/src/tests/distributor/distributortestutil.h
@@ -4,7 +4,6 @@
#include <tests/common/dummystoragelink.h>
#include <vespa/storageframework/defaultimplementation/clock/fakeclock.h>
#include <vespa/storage/common/hostreporter/hostinfo.h>
-#include <vespa/storage/distributor/distributor.h>
#include <vespa/storage/frameworkimpl/component/distributorcomponentregisterimpl.h>
#include <vespa/storage/storageutil/utils.h>
#include <tests/common/teststorageapp.h>
@@ -13,18 +12,21 @@
#include <tests/common/testhelper.h>
namespace storage {
+ namespace framework { class TickingThreadPool; }
namespace distributor {
+class BucketDBUpdater;
+class Distributor;
+class IdealStateManager;
+class ExternalOperationHandler;
+class Operation;
+
class DistributorTestUtil : private DoneInitializeHandler
{
public:
- DistributorTestUtil()
- : _messageSender(_sender, _senderDown)
- {
- _config = getStandardConfig(false);
- }
- virtual ~DistributorTestUtil() {};
+ DistributorTestUtil();
+ ~DistributorTestUtil();
/**
* Sets up the storage link chain.
@@ -101,51 +103,27 @@ public:
int idx = -1,
api::ReturnCode::Result result = api::ReturnCode::OK);
- BucketDBUpdater& getBucketDBUpdater() {
- return _distributor->_bucketDBUpdater;
- }
- IdealStateManager& getIdealStateManager() {
- return _distributor->_idealStateManager;
- }
- ExternalOperationHandler& getExternalOperationHandler() {
- return _distributor->_externalOperationHandler;
- }
+ BucketDBUpdater& getBucketDBUpdater();
+ IdealStateManager& getIdealStateManager();
+ ExternalOperationHandler& getExternalOperationHandler();
Distributor& getDistributor() {
return *_distributor;
}
- bool tick() {
- framework::ThreadWaitInfo res(
- framework::ThreadWaitInfo::NO_MORE_CRITICAL_WORK_KNOWN);
- {
- framework::TickingLockGuard lock(
- _distributor->_threadPool.freezeCriticalTicks());
- res.merge(_distributor->doCriticalTick(0));
- }
- res.merge(_distributor->doNonCriticalTick(0));
- return !res.waitWanted();
- }
+ bool tick();
- DistributorConfiguration& getConfig() {
- return const_cast<DistributorConfiguration&>(_distributor->getConfig());
- }
+ DistributorConfiguration& getConfig();
vdstestlib::DirConfig& getDirConfig() {
return _config;
}
// TODO explicit notion of bucket spaces for tests
- BucketDatabase& getBucketDatabase() {
- return _distributor->getDefaultBucketSpace().getBucketDatabase();
- }
- const BucketDatabase& getBucketDatabase() const {
- return _distributor->getDefaultBucketSpace().getBucketDatabase();
- }
+ BucketDatabase& getBucketDatabase();
+ const BucketDatabase& getBucketDatabase() const;
- const lib::Distribution& getDistribution() const {
- return _distributor->getDefaultBucketSpace().getDistribution();
- }
+ const lib::Distribution& getDistribution() const;
// "End to end" distribution change trigger, which will invoke the bucket
// DB updater as expected based on the previous and new cluster state
// and config.
@@ -185,7 +163,7 @@ public:
protected:
vdstestlib::DirConfig _config;
std::unique_ptr<TestDistributorApp> _node;
- framework::TickingThreadPool::UP _threadPool;
+ std::unique_ptr<framework::TickingThreadPool> _threadPool;
std::unique_ptr<Distributor> _distributor;
std::unique_ptr<storage::DistributorComponent> _component;
MessageSenderStub _sender;
diff --git a/storage/src/tests/distributor/externaloperationhandlertest.cpp b/storage/src/tests/distributor/externaloperationhandlertest.cpp
index 83be15c3576..c63db0c01e6 100644
--- a/storage/src/tests/distributor/externaloperationhandlertest.cpp
+++ b/storage/src/tests/distributor/externaloperationhandlertest.cpp
@@ -1,12 +1,9 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <tests/distributor/distributortestutil.h>
#include <vespa/storage/distributor/externaloperationhandler.h>
#include <vespa/storageapi/message/persistence.h>
-#include <vespa/storageapi/message/state.h>
-#include <vespa/vdstestlib/cppunit/macros.h>
-#include <vespa/document/base/testdocman.h>
+#include <vespa/storage/distributor/distributor.h>
namespace storage {
namespace distributor {
diff --git a/storage/src/tests/distributor/garbagecollectiontest.cpp b/storage/src/tests/distributor/garbagecollectiontest.cpp
index 399222f0e34..73d872d3331 100644
--- a/storage/src/tests/distributor/garbagecollectiontest.cpp
+++ b/storage/src/tests/distributor/garbagecollectiontest.cpp
@@ -1,10 +1,11 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
+
#include <cppunit/extensions/HelperMacros.h>
#include <vespa/storageapi/message/removelocation.h>
#include <vespa/storage/distributor/operations/idealstate/garbagecollectionoperation.h>
#include <vespa/storage/distributor/idealstatemanager.h>
#include <tests/distributor/distributortestutil.h>
+#include <vespa/storage/distributor/distributor.h>
namespace storage {
namespace distributor {
diff --git a/storage/src/tests/distributor/getoperationtest.cpp b/storage/src/tests/distributor/getoperationtest.cpp
index d9013ca2c22..43cfb27b799 100644
--- a/storage/src/tests/distributor/getoperationtest.cpp
+++ b/storage/src/tests/distributor/getoperationtest.cpp
@@ -1,13 +1,12 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <vespa/config/helper/configgetter.h>
#include <vespa/document/config/config-documenttypes.h>
#include <vespa/document/repo/documenttyperepo.h>
#include <vespa/storage/distributor/externaloperationhandler.h>
-#include <vespa/storage/distributor/distributormetricsset.h>
-#include <vespa/storageapi/message/persistence.h>
+#include <vespa/storage/distributor/distributor.h>
#include <tests/distributor/distributortestutil.h>
+#include <vespa/storageapi/message/persistence.h>
#include <tests/common/dummystoragelink.h>
#include <vespa/vdstestlib/cppunit/macros.h>
#include <vespa/vespalib/testkit/testapp.h>
diff --git a/storage/src/tests/distributor/idealstatemanagertest.cpp b/storage/src/tests/distributor/idealstatemanagertest.cpp
index 9c97a2ba967..0522f0d4bc2 100644
--- a/storage/src/tests/distributor/idealstatemanagertest.cpp
+++ b/storage/src/tests/distributor/idealstatemanagertest.cpp
@@ -1,23 +1,16 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <vespa/vdstestlib/cppunit/macros.h>
#include <tests/common/dummystoragelink.h>
#include <vespa/storageapi/message/persistence.h>
#include <vespa/storage/distributor/bucketdbupdater.h>
-#include <vespa/document/fieldvalue/document.h>
-#include <vespa/storage/common/bucketmessages.h>
-#include <vespa/storage/distributor/idealstatemanager.h>
+#include <vespa/storage/distributor/distributor.h>
#include <vespa/storage/distributor/operations/idealstate/mergeoperation.h>
-#include <vespa/storage/distributor/operations/idealstate/removebucketoperation.h>
-#include <vespa/storage/distributor/operations/idealstate/setbucketstateoperation.h>
-#include <vespa/storage/distributor/operations/idealstate/splitoperation.h>
#include <vespa/storageapi/message/stat.h>
#include <vespa/storageapi/message/visitor.h>
#include <vespa/storageapi/message/bucketsplitting.h>
-#include <vespa/storage/storageutil/utils.h>
#include <tests/distributor/distributortestutil.h>
-#include <vespa/storage/distributor/statecheckers.h>
-#include <vespa/storageapi/message/state.h>
+
+
namespace storage {
namespace distributor {
diff --git a/storage/src/tests/distributor/joinbuckettest.cpp b/storage/src/tests/distributor/joinbuckettest.cpp
index ec7e3aaac32..2e80605cc47 100644
--- a/storage/src/tests/distributor/joinbuckettest.cpp
+++ b/storage/src/tests/distributor/joinbuckettest.cpp
@@ -1,9 +1,8 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <cppunit/extensions/HelperMacros.h>
#include <vespa/storageapi/message/bucketsplitting.h>
#include <vespa/storage/distributor/operations/idealstate/joinoperation.h>
-#include <vespa/storage/distributor/idealstatemanager.h>
+#include <vespa/storage/distributor/distributor.h>
#include <tests/distributor/distributortestutil.h>
namespace storage {
diff --git a/storage/src/tests/distributor/mergeoperationtest.cpp b/storage/src/tests/distributor/mergeoperationtest.cpp
index a2373731bc3..bd71b69673a 100644
--- a/storage/src/tests/distributor/mergeoperationtest.cpp
+++ b/storage/src/tests/distributor/mergeoperationtest.cpp
@@ -3,17 +3,13 @@
#include <boost/lexical_cast.hpp>
#include <cppunit/extensions/HelperMacros.h>
#include <iomanip>
-#include <iostream>
-#include <memory>
#include <tests/common/dummystoragelink.h>
#include <vespa/storage/distributor/idealstatemanager.h>
#include <vespa/storageapi/message/persistence.h>
#include <vespa/storage/distributor/operations/idealstate/mergeoperation.h>
-#include <vespa/storage/distributor/pendingmessagetracker.h>
-#include <vespa/storageapi/message/bucket.h>
#include <vespa/storage/distributor/bucketdbupdater.h>
#include <tests/distributor/distributortestutil.h>
-#include <vespa/vespalib/text/stringtokenizer.h>
+#include <vespa/storage/distributor/distributor.h>
using std::shared_ptr;
diff --git a/storage/src/tests/distributor/messagesenderstub.h b/storage/src/tests/distributor/messagesenderstub.h
index d70c5355868..7b552ec6883 100644
--- a/storage/src/tests/distributor/messagesenderstub.h
+++ b/storage/src/tests/distributor/messagesenderstub.h
@@ -1,7 +1,6 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <vespa/storage/distributor/distributor.h>
#include <vespa/storage/distributor/distributormessagesender.h>
namespace storage {
diff --git a/storage/src/tests/distributor/operationtargetresolvertest.cpp b/storage/src/tests/distributor/operationtargetresolvertest.cpp
index 3b62bd20299..d55c5658d2c 100644
--- a/storage/src/tests/distributor/operationtargetresolvertest.cpp
+++ b/storage/src/tests/distributor/operationtargetresolvertest.cpp
@@ -1,21 +1,17 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <iomanip>
#include <iostream>
-#include <memory>
#include <vespa/config/helper/configgetter.h>
#include <vespa/document/config/config-documenttypes.h>
#include <vespa/document/repo/documenttyperepo.h>
#include <vespa/storageapi/message/bucket.h>
#include <vespa/storageapi/message/persistence.h>
-#include <vespa/storageapi/message/state.h>
#include <tests/distributor/distributortestutil.h>
-#include <tests/common/dummystoragelink.h>
#include <vespa/vdslib/distribution/idealnodecalculatorimpl.h>
-#include <vespa/vdstestlib/cppunit/macros.h>
#include <vespa/vespalib/testkit/testapp.h>
#include <vespa/storage/distributor/operationtargetresolverimpl.h>
+#include <vespa/storage/distributor/externaloperationhandler.h>
using document::BucketId;
diff --git a/storage/src/tests/distributor/putoperationtest.cpp b/storage/src/tests/distributor/putoperationtest.cpp
index da99ca9e019..a8a76bbbf75 100644
--- a/storage/src/tests/distributor/putoperationtest.cpp
+++ b/storage/src/tests/distributor/putoperationtest.cpp
@@ -1,10 +1,10 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <vespa/config/helper/configgetter.h>
#include <vespa/document/config/config-documenttypes.h>
#include <vespa/document/repo/documenttyperepo.h>
#include <vespa/storage/distributor/operations/external/putoperation.h>
+#include <vespa/storage/distributor/distributor.h>
#include <vespa/storageapi/message/bucket.h>
#include <vespa/storageapi/message/persistence.h>
#include <vespa/storageapi/message/state.h>
@@ -14,8 +14,6 @@
#include <vespa/vespalib/text/stringtokenizer.h>
#include <vespa/vespalib/testkit/test_kit.h>
#include <iomanip>
-#include <iostream>
-#include <memory>
using std::shared_ptr;
using config::ConfigGetter;
diff --git a/storage/src/tests/distributor/removebucketoperationtest.cpp b/storage/src/tests/distributor/removebucketoperationtest.cpp
index aeceefa15a0..7cf63a3146f 100644
--- a/storage/src/tests/distributor/removebucketoperationtest.cpp
+++ b/storage/src/tests/distributor/removebucketoperationtest.cpp
@@ -1,13 +1,11 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <cppunit/extensions/HelperMacros.h>
#include <tests/common/dummystoragelink.h>
#include <vespa/storageapi/message/persistence.h>
#include <vespa/storageapi/message/bucket.h>
#include <vespa/storage/distributor/operations/idealstate/removebucketoperation.h>
#include <vespa/storage/distributor/idealstatemanager.h>
-#include <vespa/storage/distributor/pendingmessagetracker.h>
-#include <vespa/storage/storageutil/utils.h>
+#include <vespa/storage/distributor/distributor.h>
#include <tests/distributor/distributortestutil.h>
namespace storage {
diff --git a/storage/src/tests/distributor/removelocationtest.cpp b/storage/src/tests/distributor/removelocationtest.cpp
index 7a1bba86303..954bfb6210b 100644
--- a/storage/src/tests/distributor/removelocationtest.cpp
+++ b/storage/src/tests/distributor/removelocationtest.cpp
@@ -1,13 +1,12 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
+
#include <cppunit/extensions/HelperMacros.h>
#include <iomanip>
-#include <iostream>
-#include <memory>
#include <tests/common/dummystoragelink.h>
#include <vespa/storageapi/message/removelocation.h>
#include <vespa/storage/distributor/operations/external/removelocationoperation.h>
#include <tests/distributor/distributortestutil.h>
+#include <vespa/storage/distributor/distributor.h>
namespace storage {
namespace distributor {
diff --git a/storage/src/tests/distributor/removeoperationtest.cpp b/storage/src/tests/distributor/removeoperationtest.cpp
index 7907541a7c7..9d0849962e4 100644
--- a/storage/src/tests/distributor/removeoperationtest.cpp
+++ b/storage/src/tests/distributor/removeoperationtest.cpp
@@ -1,12 +1,9 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <cppunit/extensions/HelperMacros.h>
#include <iomanip>
-#include <iostream>
-#include <memory>
#include <tests/common/dummystoragelink.h>
-#include <vespa/storage/distributor/externaloperationhandler.h>
+#include <vespa/storage/distributor/distributor.h>
#include <vespa/storageapi/message/persistence.h>
#include <tests/distributor/distributortestutil.h>
#include <vespa/storage/distributor/operations/external/removeoperation.h>
diff --git a/storage/src/tests/distributor/splitbuckettest.cpp b/storage/src/tests/distributor/splitbuckettest.cpp
index d0fa69d600e..c69af0e038c 100644
--- a/storage/src/tests/distributor/splitbuckettest.cpp
+++ b/storage/src/tests/distributor/splitbuckettest.cpp
@@ -1,18 +1,15 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <cppunit/extensions/HelperMacros.h>
#include <iomanip>
-#include <iostream>
-#include <memory>
#include <tests/common/dummystoragelink.h>
#include <vespa/storageapi/message/bucketsplitting.h>
#include <vespa/storage/distributor/operations/idealstate/splitoperation.h>
-#include <vespa/storage/common/bucketmessages.h>
#include <vespa/document/base/documentid.h>
#include <vespa/storageapi/message/persistence.h>
#include <vespa/storage/distributor/idealstatemanager.h>
#include <vespa/storageapi/message/multioperation.h>
#include <tests/distributor/distributortestutil.h>
+#include <vespa/storage/distributor/distributor.h>
using std::shared_ptr;
using namespace document;
diff --git a/storage/src/tests/distributor/statecheckerstest.cpp b/storage/src/tests/distributor/statecheckerstest.cpp
index a3603eae6b3..ef04453b27f 100644
--- a/storage/src/tests/distributor/statecheckerstest.cpp
+++ b/storage/src/tests/distributor/statecheckerstest.cpp
@@ -19,6 +19,7 @@
#include <vespa/storage/distributor/statecheckers.h>
#include <vespa/storageapi/message/state.h>
#include <vespa/config-stor-distribution.h>
+#include <vespa/storage/distributor/distributor.h>
using namespace std::literals::string_literals;
diff --git a/storage/src/tests/distributor/statoperationtest.cpp b/storage/src/tests/distributor/statoperationtest.cpp
index 22fee6e44d7..f35869cf680 100644
--- a/storage/src/tests/distributor/statoperationtest.cpp
+++ b/storage/src/tests/distributor/statoperationtest.cpp
@@ -1,12 +1,12 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <tests/common/dummystoragelink.h>
#include <vespa/storageapi/message/stat.h>
#include <vespa/vdstestlib/cppunit/macros.h>
#include <tests/distributor/distributortestutil.h>
#include <vespa/storage/distributor/operations/external/statbucketoperation.h>
#include <vespa/storage/distributor/operations/external/statbucketlistoperation.h>
+#include <vespa/storage/distributor/distributor.h>
namespace storage {
namespace distributor {
diff --git a/storage/src/tests/distributor/twophaseupdateoperationtest.cpp b/storage/src/tests/distributor/twophaseupdateoperationtest.cpp
index 60f836e3ea7..8556f5b5229 100644
--- a/storage/src/tests/distributor/twophaseupdateoperationtest.cpp
+++ b/storage/src/tests/distributor/twophaseupdateoperationtest.cpp
@@ -1,5 +1,5 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
+
#include <vespa/config/helper/configgetter.h>
#include <cppunit/extensions/HelperMacros.h>
#include <vespa/document/config/config-documenttypes.h>
@@ -7,17 +7,13 @@
#include <vespa/document/base/testdocrepo.h>
#include <vespa/document/update/arithmeticvalueupdate.h>
#include <iomanip>
-#include <iostream>
-#include <memory>
#include <tests/common/dummystoragelink.h>
#include <vespa/storage/distributor/externaloperationhandler.h>
#include <vespa/storageapi/message/persistence.h>
#include <vespa/storage/distributor/operations/external/twophaseupdateoperation.h>
-#include <vespa/storageapi/message/state.h>
#include <vespa/storageapi/message/batch.h>
-#include <vespa/storageapi/message/bucket.h>
#include <tests/distributor/distributortestutil.h>
-#include <tests/distributor/messagesenderstub.h>
+#include <vespa/storage/distributor/distributor.h>
namespace storage {
namespace distributor {
diff --git a/storage/src/tests/distributor/updateoperationtest.cpp b/storage/src/tests/distributor/updateoperationtest.cpp
index d0b4bf39db6..07813faa03b 100644
--- a/storage/src/tests/distributor/updateoperationtest.cpp
+++ b/storage/src/tests/distributor/updateoperationtest.cpp
@@ -1,19 +1,15 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
+
#include <cppunit/extensions/HelperMacros.h>
#include <iomanip>
-#include <iostream>
-#include <memory>
#include <tests/common/dummystoragelink.h>
#include <vespa/storageapi/message/persistence.h>
#include <vespa/storageapi/message/state.h>
#include <vespa/storageapi/message/bucket.h>
#include <tests/distributor/distributortestutil.h>
-#include <vespa/config/helper/configgetter.h>
-#include <vespa/document/config/config-documenttypes.h>
-#include <tests/distributor/messagesenderstub.h>
#include <vespa/storage/distributor/operations/external/updateoperation.h>
#include <vespa/vespalib/testkit/test_kit.h>
+#include <vespa/storage/distributor/distributor.h>
using std::shared_ptr;
using namespace document;
diff --git a/storage/src/tests/distributor/visitoroperationtest.cpp b/storage/src/tests/distributor/visitoroperationtest.cpp
index 7bd9eea29b0..caf326a8720 100644
--- a/storage/src/tests/distributor/visitoroperationtest.cpp
+++ b/storage/src/tests/distributor/visitoroperationtest.cpp
@@ -1,5 +1,4 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-#include <vespa/fastos/fastos.h>
#include <iomanip>
#include <iostream>
#include <memory>
@@ -11,6 +10,7 @@
#include <vespa/storage/distributor/operations/external/visitoroperation.h>
#include <vespa/storage/distributor/operations/external/visitororder.h>
#include <tests/distributor/distributortestutil.h>
+#include <vespa/storage/distributor/distributor.h>
#include <tests/common/dummystoragelink.h>
#include <vespa/vdstestlib/cppunit/macros.h>
diff --git a/storage/src/vespa/storage/bucketdb/storagebucketdbinitializer.cpp b/storage/src/vespa/storage/bucketdb/storagebucketdbinitializer.cpp
index e5db345505c..2e4179d5c4b 100644
--- a/storage/src/vespa/storage/bucketdb/storagebucketdbinitializer.cpp
+++ b/storage/src/vespa/storage/bucketdb/storagebucketdbinitializer.cpp
@@ -11,6 +11,7 @@
#include <vespa/vespalib/io/fileutil.h>
#include <vespa/config/config.h>
#include <vespa/vespalib/stllike/hash_map.hpp>
+#include <vespa/config/helper/configgetter.hpp>
#include <iomanip>
#include <vespa/log/log.h>
diff --git a/storage/src/vespa/storage/distributor/bucketdbupdater.h b/storage/src/vespa/storage/distributor/bucketdbupdater.h
index 84903b9fe57..c87907fe0b2 100644
--- a/storage/src/vespa/storage/distributor/bucketdbupdater.h
+++ b/storage/src/vespa/storage/distributor/bucketdbupdater.h
@@ -1,27 +1,27 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <set>
+#include "bucketlistmerger.h"
+#include "messageguard.h"
+#include "distributorcomponent.h"
+#include "distributormessagesender.h"
+#include "pendingclusterstate.h"
+#include "managed_bucket_space_component.h"
#include <vespa/document/bucket/bucketid.h>
#include <vespa/storageapi/messageapi/returncode.h>
#include <vespa/storageapi/message/bucket.h>
#include <vespa/vdslib/state/clusterstate.h>
#include <vespa/storage/common/storagelink.h>
#include <vespa/storageframework/storageframework.h>
-#include <vespa/storage/distributor/bucketlistmerger.h>
-#include <vespa/storage/distributor/messageguard.h>
-#include <vespa/storage/distributor/distributorcomponent.h>
-#include <vespa/storage/distributor/distributormessagesender.h>
-#include <vespa/storage/distributor/pendingclusterstate.h>
-#include <vespa/storage/distributor/managed_bucket_space_component.h>
+
#include <vespa/storageframework/generic/memory/memorymanagerinterface.h>
#include <vespa/storageapi/messageapi/messagehandler.h>
+#include <set>
+#include <deque>
-namespace storage
-{
+namespace storage {
-namespace distributor
-{
+namespace distributor {
class Distributor;
diff --git a/storage/src/vespa/storage/distributor/distributor.h b/storage/src/vespa/storage/distributor/distributor.h
index f7f186699bf..c56f4f9456a 100644
--- a/storage/src/vespa/storage/distributor/distributor.h
+++ b/storage/src/vespa/storage/distributor/distributor.h
@@ -2,24 +2,25 @@
#pragma once
-#include <vespa/config/config.h>
+
+#include "idealstatemanager.h"
+#include "bucketdbupdater.h"
+#include "pendingmessagetracker.h"
+#include "externaloperationhandler.h"
+#include "maintenancebucket.h"
+#include "min_replica_provider.h"
+#include "distributorinterface.h"
+
+#include "statusreporterdelegate.h"
+#include "distributor_host_info_reporter.h"
+#include <vespa/storage/distributor/maintenance/maintenancescheduler.h>
+#include <vespa/storage/distributor/bucketdb/bucketdbmetricupdater.h>
#include <vespa/storage/common/distributorcomponent.h>
#include <vespa/storage/common/doneinitializehandler.h>
#include <vespa/storage/common/messagesender.h>
-#include <vespa/storage/distributor/idealstatemanager.h>
-#include <vespa/storage/distributor/bucketdbupdater.h>
-#include <vespa/storage/distributor/pendingmessagetracker.h>
-#include <vespa/storage/distributor/externaloperationhandler.h>
-#include <vespa/storage/distributor/bucketdb/bucketdbmetricupdater.h>
-#include <vespa/storage/distributor/bucketdbupdater.h>
-#include <vespa/storage/distributor/maintenancebucket.h>
-#include <vespa/storage/distributor/min_replica_provider.h>
-#include <vespa/storage/distributor/distributorinterface.h>
-#include <vespa/storage/distributor/maintenance/maintenancescheduler.h>
-#include <vespa/storage/distributor/statusreporterdelegate.h>
-#include <vespa/storage/distributor/distributor_host_info_reporter.h>
#include <vespa/storageapi/message/state.h>
#include <vespa/storageframework/generic/thread/tickingthread.h>
+#include <vespa/config/config.h>
#include <vespa/vespalib/util/sync.h>
#include <unordered_map>
diff --git a/storage/src/vespa/storage/distributor/externaloperationhandler.cpp b/storage/src/vespa/storage/distributor/externaloperationhandler.cpp
index bc0429f806c..c5354c54f25 100644
--- a/storage/src/vespa/storage/distributor/externaloperationhandler.cpp
+++ b/storage/src/vespa/storage/distributor/externaloperationhandler.cpp
@@ -32,16 +32,12 @@ ExternalOperationHandler::ExternalOperationHandler(
ManagedBucketSpace& bucketSpace,
const MaintenanceOperationGenerator& gen,
DistributorComponentRegister& compReg)
- : ManagedBucketSpaceComponent(owner, bucketSpace, compReg,
- "External operation handler"),
+ : ManagedBucketSpaceComponent(owner, bucketSpace, compReg, "External operation handler"),
_operationGenerator(gen),
_rejectFeedBeforeTimeReached() // At epoch
-{
-}
+{ }
-ExternalOperationHandler::~ExternalOperationHandler()
-{
-}
+ExternalOperationHandler::~ExternalOperationHandler() { }
bool
ExternalOperationHandler::handleMessage(
diff --git a/storage/src/vespa/storage/distributor/pendingclusterstate.h b/storage/src/vespa/storage/distributor/pendingclusterstate.h
index c4d83f439a0..939eb5fcd13 100644
--- a/storage/src/vespa/storage/distributor/pendingclusterstate.h
+++ b/storage/src/vespa/storage/distributor/pendingclusterstate.h
@@ -9,6 +9,7 @@
#include <vespa/storage/bucketdb/bucketdatabase.h>
#include <vespa/storage/distributor/clusterinformation.h>
#include <unordered_set>
+#include <deque>
namespace storage {
diff --git a/storage/src/vespa/storage/persistence/persistenceutil.cpp b/storage/src/vespa/storage/persistence/persistenceutil.cpp
index 0df12bdfb01..2d8a8561ba6 100644
--- a/storage/src/vespa/storage/persistence/persistenceutil.cpp
+++ b/storage/src/vespa/storage/persistence/persistenceutil.cpp
@@ -2,12 +2,12 @@
#include "persistenceutil.h"
#include <vespa/config/config.h>
-#include <vespa/log/log.h>
-
-namespace storage {
+#include <vespa/config/helper/configgetter.hpp>
+#include <vespa/log/log.h>
LOG_SETUP(".persistence.util");
+namespace storage {
namespace {
std::string generateName(void* p) {
std::ostringstream ost;
diff --git a/storage/src/vespa/storage/storageserver/statemanager.h b/storage/src/vespa/storage/storageserver/statemanager.h
index d1838e851d1..537ecec2e72 100644
--- a/storage/src/vespa/storage/storageserver/statemanager.h
+++ b/storage/src/vespa/storage/storageserver/statemanager.h
@@ -13,8 +13,6 @@
*/
#pragma once
-#include <map>
-#include <atomic>
#include <vespa/storage/common/hostreporter/hostinfo.h>
#include <vespa/storage/common/nodestateupdater.h>
#include <vespa/storage/common/storagelink.h>
@@ -23,6 +21,9 @@
#include <vespa/storageframework/storageframework.h>
#include <vespa/vespalib/util/sync.h>
#include <vespa/vespalib/objects/floatingpointtype.h>
+#include <deque>
+#include <map>
+#include <atomic>
namespace metrics {
class MetricManager;
diff --git a/storage/src/vespa/storage/tools/getidealstate.cpp b/storage/src/vespa/storage/tools/getidealstate.cpp
index da32aba9897..c3c7a4ba480 100644
--- a/storage/src/vespa/storage/tools/getidealstate.cpp
+++ b/storage/src/vespa/storage/tools/getidealstate.cpp
@@ -7,6 +7,7 @@
#include <vespa/config/config.h>
#include <vespa/config/print/ostreamconfigwriter.h>
#include <vespa/config-stor-distribution.h>
+#include <vespa/config/helper/configgetter.hpp>
#include <iostream>
#include <sstream>