summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--documentapi/src/tests/messages/testbase.cpp2
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/documentprotocol.cpp9
-rw-r--r--documentapi/src/vespa/documentapi/messagebus/documentprotocol.h3
-rw-r--r--storage/src/vespa/storage/storageserver/communicationmanager.cpp9
4 files changed, 15 insertions, 8 deletions
diff --git a/documentapi/src/tests/messages/testbase.cpp b/documentapi/src/tests/messages/testbase.cpp
index 8f2729964a6..6af240fcf6e 100644
--- a/documentapi/src/tests/messages/testbase.cpp
+++ b/documentapi/src/tests/messages/testbase.cpp
@@ -18,7 +18,7 @@ TestBase::TestBase() :
TEST_PATH("../../../test/cfg/testdoctypes.cfg")))),
_dataPath(TEST_PATH("../../../test/crosslanguagefiles")),
_loadTypes(),
- _protocol(_loadTypes, _repo),
+ _protocol(_loadTypes, _repo, "", true),
_tests()
{
_loadTypes.addLoadType(34, "foo", Priority::PRI_NORMAL_2);
diff --git a/documentapi/src/vespa/documentapi/messagebus/documentprotocol.cpp b/documentapi/src/vespa/documentapi/messagebus/documentprotocol.cpp
index b2588657825..c5defa607a3 100644
--- a/documentapi/src/vespa/documentapi/messagebus/documentprotocol.cpp
+++ b/documentapi/src/vespa/documentapi/messagebus/documentprotocol.cpp
@@ -25,7 +25,8 @@ const mbus::string DocumentProtocol::NAME = "document";
DocumentProtocol::DocumentProtocol(const LoadTypeSet& loadTypes,
DocumentTypeRepo::SP repo,
- const string &configId) :
+ const string &configId,
+ bool enableMultipleBucketSpaces) :
_routingPolicyRepository(new RoutingPolicyRepository()),
_routableRepository(new RoutableRepository(loadTypes)),
_systemState(SystemState::newInstance("")),
@@ -107,10 +108,12 @@ DocumentProtocol::DocumentProtocol(const LoadTypeSet& loadTypes,
putRoutableFactory(MESSAGE_REMOVEDOCUMENT, IRoutableFactory::SP(new RoutableFactories52::RemoveDocumentMessageFactory()), from52);
// Add 6.x serialization (TODO finalize version)
- putRoutableFactory(MESSAGE_CREATEVISITOR, IRoutableFactory::SP(new RoutableFactories60::CreateVisitorMessageFactory(*_repo)), from6);
+ if (enableMultipleBucketSpaces) {
+ putRoutableFactory(MESSAGE_CREATEVISITOR, IRoutableFactory::SP(new RoutableFactories60::CreateVisitorMessageFactory(*_repo)), from6);
+ }
}
-DocumentProtocol::~DocumentProtocol() { }
+DocumentProtocol::~DocumentProtocol() = default;
mbus::IRoutingPolicy::UP
DocumentProtocol::createPolicy(const mbus::string &name, const mbus::string &param) const
diff --git a/documentapi/src/vespa/documentapi/messagebus/documentprotocol.h b/documentapi/src/vespa/documentapi/messagebus/documentprotocol.h
index c3417d85197..15a9e4c010a 100644
--- a/documentapi/src/vespa/documentapi/messagebus/documentprotocol.h
+++ b/documentapi/src/vespa/documentapi/messagebus/documentprotocol.h
@@ -200,7 +200,8 @@ public:
*/
DocumentProtocol(const LoadTypeSet& loadTypes,
std::shared_ptr<document::DocumentTypeRepo> repo,
- const string &configId = "");
+ const string &configId = "",
+ bool enableMultipleBucketSpaces = false);
~DocumentProtocol();
/**
diff --git a/storage/src/vespa/storage/storageserver/communicationmanager.cpp b/storage/src/vespa/storage/storageserver/communicationmanager.cpp
index 4cf4839319f..9a3d3b71f38 100644
--- a/storage/src/vespa/storage/storageserver/communicationmanager.cpp
+++ b/storage/src/vespa/storage/storageserver/communicationmanager.cpp
@@ -444,8 +444,10 @@ void CommunicationManager::configure(std::unique_ptr<CommunicationManagerConfig>
// config here.
_mbus = std::make_unique<mbus::RPCMessageBus>(
mbus::ProtocolSet()
- .add(std::make_shared<documentapi::DocumentProtocol>(*_component.getLoadTypes(), _component.getTypeRepo()))
- .add(std::make_shared<mbusprot::StorageProtocol>(_component.getTypeRepo(), *_component.getLoadTypes(), _component.enableMultipleBucketSpaces())),
+ .add(std::make_shared<documentapi::DocumentProtocol>(*_component.getLoadTypes(), _component.getTypeRepo(), "",
+ _component.enableMultipleBucketSpaces()))
+ .add(std::make_shared<mbusprot::StorageProtocol>(_component.getTypeRepo(), *_component.getLoadTypes(),
+ _component.enableMultipleBucketSpaces())),
params,
_configUri);
@@ -786,7 +788,8 @@ void CommunicationManager::updateMessagebusProtocol(
const document::DocumentTypeRepo::SP &repo) {
if (_mbus.get()) {
framework::SecondTime now(_component.getClock().getTimeInSeconds());
- mbus::IProtocol::SP newDocumentProtocol(new documentapi::DocumentProtocol( *_component.getLoadTypes(), repo));
+ mbus::IProtocol::SP newDocumentProtocol(new documentapi::DocumentProtocol(
+ *_component.getLoadTypes(), repo, "", _component.enableMultipleBucketSpaces()));
std::lock_guard<std::mutex> guard(_earlierGenerationsLock);
_earlierGenerations.push_back(std::make_pair(now, _mbus->getMessageBus().putProtocol(newDocumentProtocol)));
mbus::IProtocol::SP newStorageProtocol(new mbusprot::StorageProtocol(repo, *_component.getLoadTypes(), _component.enableMultipleBucketSpaces()));