aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeir Storli <geirstorli@yahoo.no>2018-02-12 16:59:48 +0100
committerGitHub <noreply@github.com>2018-02-12 16:59:48 +0100
commit2939cebfc9ecdf30c6561e93e7e668bf86acb89f (patch)
tree3e720e3c4fa5b34d0892862c7b65dbc7ae16a349
parent5818eb21f6c8284cf21a9b6f440f4d2d4dd7b21f (diff)
parent8fea5e1a211442d80958d6b28a176054e6cce7d4 (diff)
Merge pull request #5013 from vespa-engine/toregge/always-enable-global-content-bucket-space
Always enable global content bucket space
-rw-r--r--storage/src/tests/bucketdb/initializertest.cpp13
-rw-r--r--storage/src/tests/persistence/filestorage/modifiedbucketcheckertest.cpp9
-rw-r--r--storage/src/vespa/storage/common/content_bucket_space_repo.cpp5
-rw-r--r--storage/src/vespa/storage/common/content_bucket_space_repo.h2
-rw-r--r--storage/src/vespa/storage/frameworkimpl/component/servicelayercomponentregisterimpl.cpp13
-rw-r--r--storage/src/vespa/storage/frameworkimpl/component/servicelayercomponentregisterimpl.h1
6 files changed, 21 insertions, 22 deletions
diff --git a/storage/src/tests/bucketdb/initializertest.cpp b/storage/src/tests/bucketdb/initializertest.cpp
index cb76876c24e..2141dbf4b53 100644
--- a/storage/src/tests/bucketdb/initializertest.cpp
+++ b/storage/src/tests/bucketdb/initializertest.cpp
@@ -17,10 +17,13 @@
#include <vespa/vdstestlib/cppunit/macros.h>
#include <vespa/storage/bucketdb/lockablemap.hpp>
#include <vespa/vdstestlib/cppunit/dirconfig.hpp>
+#include <vespa/document/bucket/fixed_bucket_spaces.h>
#include <vespa/log/log.h>
LOG_SETUP(".test.bucketdb.initializing");
+using document::FixedBucketSpaces;
+
namespace storage {
typedef uint16_t PartitionId;
@@ -444,10 +447,12 @@ struct FakePersistenceLayer : public StorageLink {
<< " for which we should not get a request";
fatal(ost.str());
} else {
- for (DiskData::const_iterator it2 = it->second.begin();
- it2 != it->second.end(); ++it2)
- {
- reply->getBuckets().push_back(it2->first);
+ if (cmd.getBucket().getBucketSpace() == FixedBucketSpaces::default_space()) {
+ for (DiskData::const_iterator it2 = it->second.begin();
+ it2 != it->second.end(); ++it2)
+ {
+ reply->getBuckets().push_back(it2->first);
+ }
}
}
if (!fatalError.empty()) {
diff --git a/storage/src/tests/persistence/filestorage/modifiedbucketcheckertest.cpp b/storage/src/tests/persistence/filestorage/modifiedbucketcheckertest.cpp
index ac1a046bd17..7895d9e4cd0 100644
--- a/storage/src/tests/persistence/filestorage/modifiedbucketcheckertest.cpp
+++ b/storage/src/tests/persistence/filestorage/modifiedbucketcheckertest.cpp
@@ -140,6 +140,8 @@ ModifiedBucketCheckerTest::testDoNotCheckModifiedBucketsIfAlreadyPending()
expectCommandsAndSendReplies(0, 0);
// After replies received, tick should send new requests again.
replyToAll(messages, 0);
+ _handler->tick(); // global bucket space ==> nothing to do
+ expectCommandsAndSendReplies(0, 0);
_handler->tick();
expectCommandsAndSendReplies(3, 3);
}
@@ -177,13 +179,20 @@ ModifiedBucketCheckerTest::testRecheckRequestsAreChunked()
_handler->tick();
expectCommandsAndSendReplies(1, 4);
+ _handler->tick(); // global bucket space ==> nothing to do
+ expectCommandsAndSendReplies(0, 0);
+
// New round of fetching
_handler->tick();
expectCommandsAndSendReplies(1, 10);
+ _handler->tick(); // global bucket space ==> nothing to do
+ expectCommandsAndSendReplies(0, 0);
// And done!
_handler->tick();
expectCommandsAndSendReplies(0, 0);
+ _handler->tick(); // global bucket space ==> nothing to do
+ expectCommandsAndSendReplies(0, 0);
}
void
diff --git a/storage/src/vespa/storage/common/content_bucket_space_repo.cpp b/storage/src/vespa/storage/common/content_bucket_space_repo.cpp
index 304c6eddddc..774ddb81578 100644
--- a/storage/src/vespa/storage/common/content_bucket_space_repo.cpp
+++ b/storage/src/vespa/storage/common/content_bucket_space_repo.cpp
@@ -11,6 +11,7 @@ ContentBucketSpaceRepo::ContentBucketSpaceRepo()
: _map()
{
_map.emplace(document::FixedBucketSpaces::default_space(), std::make_unique<ContentBucketSpace>(document::FixedBucketSpaces::default_space()));
+ _map.emplace(document::FixedBucketSpaces::global_space(), std::make_unique<ContentBucketSpace>(document::FixedBucketSpaces::global_space()));
}
ContentBucketSpace &
@@ -21,10 +22,6 @@ ContentBucketSpaceRepo::get(BucketSpace bucketSpace) const
return *itr->second;
}
-void ContentBucketSpaceRepo::enableGlobalBucketSpace() {
- _map.emplace(document::FixedBucketSpaces::global_space(), std::make_unique<ContentBucketSpace>(document::FixedBucketSpaces::global_space()));
-}
-
ContentBucketSpaceRepo::BucketSpaces
ContentBucketSpaceRepo::getBucketSpaces() const
{
diff --git a/storage/src/vespa/storage/common/content_bucket_space_repo.h b/storage/src/vespa/storage/common/content_bucket_space_repo.h
index f0803d76282..0d4ddb86bcf 100644
--- a/storage/src/vespa/storage/common/content_bucket_space_repo.h
+++ b/storage/src/vespa/storage/common/content_bucket_space_repo.h
@@ -24,8 +24,6 @@ public:
BucketSpaceMap::const_iterator begin() const { return _map.begin(); }
BucketSpaceMap::const_iterator end() const { return _map.end(); }
- void enableGlobalBucketSpace();
-
BucketSpaces getBucketSpaces() const;
size_t getBucketMemoryUsage() const;
diff --git a/storage/src/vespa/storage/frameworkimpl/component/servicelayercomponentregisterimpl.cpp b/storage/src/vespa/storage/frameworkimpl/component/servicelayercomponentregisterimpl.cpp
index 29c69b59760..888f1e816a1 100644
--- a/storage/src/vespa/storage/frameworkimpl/component/servicelayercomponentregisterimpl.cpp
+++ b/storage/src/vespa/storage/frameworkimpl/component/servicelayercomponentregisterimpl.cpp
@@ -42,18 +42,9 @@ void
ServiceLayerComponentRegisterImpl::setDistribution(lib::Distribution::SP distribution)
{
_bucketSpaceRepo.get(document::FixedBucketSpaces::default_space()).setDistribution(distribution);
- if (enableMultipleBucketSpaces()) {
- auto global_distr = GlobalBucketSpaceDistributionConverter::convert_to_global(*distribution);
- _bucketSpaceRepo.get(document::FixedBucketSpaces::global_space()).setDistribution(global_distr);
- }
+ auto global_distr = GlobalBucketSpaceDistributionConverter::convert_to_global(*distribution);
+ _bucketSpaceRepo.get(document::FixedBucketSpaces::global_space()).setDistribution(global_distr);
StorageComponentRegisterImpl::setDistribution(distribution);
}
-void ServiceLayerComponentRegisterImpl::setEnableMultipleBucketSpaces(bool enabled) {
- StorageComponentRegisterImpl::setEnableMultipleBucketSpaces(enabled);
- if (enabled) {
- _bucketSpaceRepo.enableGlobalBucketSpace();
- }
-}
-
} // storage
diff --git a/storage/src/vespa/storage/frameworkimpl/component/servicelayercomponentregisterimpl.h b/storage/src/vespa/storage/frameworkimpl/component/servicelayercomponentregisterimpl.h
index fc07f394fff..deb3b2c0767 100644
--- a/storage/src/vespa/storage/frameworkimpl/component/servicelayercomponentregisterimpl.h
+++ b/storage/src/vespa/storage/frameworkimpl/component/servicelayercomponentregisterimpl.h
@@ -38,7 +38,6 @@ public:
void registerServiceLayerComponent(ServiceLayerManagedComponent&) override;
void setDiskCount(uint16_t count);
void setDistribution(lib::Distribution::SP distribution) override;
- void setEnableMultipleBucketSpaces(bool enabled) override;
};
} // storage