aboutsummaryrefslogtreecommitdiffstats
path: root/storageapi
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2020-11-27 00:21:44 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2020-11-27 11:56:09 +0000
commit39d00826c3e7e30d59e6ca6d88eb3f36fb8358fd (patch)
treea7c3158fd574ec67ab32e66d7cd3ab58ebbdb2cc /storageapi
parent989b8b5afa58dcbfa03e3999d75802ac6c70aa94 (diff)
GC LoadTypeSet
Diffstat (limited to 'storageapi')
-rw-r--r--storageapi/src/tests/mbusprot/storageprotocoltest.cpp4
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.cpp10
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.h10
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.cpp5
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.h9
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_2.h5
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/protocolserialization6_0.cpp9
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/protocolserialization6_0.h8
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/protocolserialization7.cpp17
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/protocolserialization7.h6
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/storageprotocol.cpp13
-rw-r--r--storageapi/src/vespa/storageapi/mbusprot/storageprotocol.h5
12 files changed, 34 insertions, 67 deletions
diff --git a/storageapi/src/tests/mbusprot/storageprotocoltest.cpp b/storageapi/src/tests/mbusprot/storageprotocoltest.cpp
index e807ab673d5..5637110f341 100644
--- a/storageapi/src/tests/mbusprot/storageprotocoltest.cpp
+++ b/storageapi/src/tests/mbusprot/storageprotocoltest.cpp
@@ -56,7 +56,6 @@ struct StorageProtocolTest : TestWithParam<vespalib::Version> {
document::Bucket _bucket;
document::BucketId _dummy_remap_bucket{17, 12345};
BucketInfo _dummy_bucket_info{1,2,3,4,5, true, false, 48};
- documentapi::LoadTypeSet _loadTypes;
mbusprot::StorageProtocol _protocol;
static auto constexpr CONDITION_STRING = "There's just one condition";
@@ -66,9 +65,8 @@ struct StorageProtocolTest : TestWithParam<vespalib::Version> {
_testDocId(_testDoc->getId()),
_bucket_id(16, 0x51),
_bucket(makeDocumentBucket(_bucket_id)),
- _protocol(_docMan.getTypeRepoSP(), _loadTypes)
+ _protocol(_docMan.getTypeRepoSP())
{
- _loadTypes.addLoadType(34, "foo", documentapi::Priority::PRI_NORMAL_2);
}
~StorageProtocolTest();
diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.cpp b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.cpp
index 2c7b4a1e6f8..1bb83b2a547 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.cpp
+++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.cpp
@@ -7,6 +7,7 @@
#include <vespa/storageapi/message/bucketsplitting.h>
#include <vespa/storageapi/message/visitor.h>
#include <vespa/document/update/documentupdate.h>
+#include <vespa/documentapi/loadtypes/loadtype.h>
#include <vespa/document/bucket/fixed_bucket_spaces.h>
#include <sstream>
@@ -92,7 +93,7 @@ ProtocolSerialization5_0::onEncodeCommand(GBBuf& buf, const api::StorageCommand&
buf.putLong(msg.getMsgId());
buf.putByte(msg.getPriority());
buf.putShort(msg.getSourceIndex());
- buf.putInt(msg.getLoadType().getId());
+ buf.putInt(documentapi::LoadType::DEFAULT.getId());
}
void
@@ -106,11 +107,8 @@ ProtocolSerialization5_0::onDecodeCommand(BBuf& buf, api::StorageCommand& msg) c
}
-ProtocolSerialization5_0::ProtocolSerialization5_0(
- const std::shared_ptr<const document::DocumentTypeRepo>& repo,
- const documentapi::LoadTypeSet& loadTypes)
- : ProtocolSerialization4_2(repo),
- _loadTypes(loadTypes)
+ProtocolSerialization5_0::ProtocolSerialization5_0(const std::shared_ptr<const document::DocumentTypeRepo>& repo)
+ : ProtocolSerialization4_2(repo)
{
}
diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.h b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.h
index 67f02aa2d2a..8d38db89a08 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.h
+++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_0.h
@@ -2,17 +2,12 @@
#pragma once
#include "protocolserialization4_2.h"
-#include <vespa/documentapi/loadtypes/loadtypeset.h>
namespace storage::mbusprot {
class ProtocolSerialization5_0 : public ProtocolSerialization4_2 {
-private:
- const documentapi::LoadTypeSet& _loadTypes;
-
public:
- ProtocolSerialization5_0(const std::shared_ptr<const document::DocumentTypeRepo>&,
- const documentapi::LoadTypeSet& loadTypes);
+ ProtocolSerialization5_0(const std::shared_ptr<const document::DocumentTypeRepo>&);
document::Bucket getBucket(document::ByteBuffer& buf) const override;
void putBucket(const document::Bucket& bucket, vespalib::GrowableByteBuffer& buf) const override;
@@ -73,9 +68,6 @@ public:
SRep::UP onDecodeCreateVisitorReply(const SCmd& cmd, BBuf& buf) const override;
void onDecodeCommand(BBuf& buf, api::StorageCommand& msg) const override;
void onDecodeReply(BBuf&, api::StorageReply&) const override;
-
-protected:
- const documentapi::LoadTypeSet& loadTypes() const noexcept { return _loadTypes; };
};
}
diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.cpp b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.cpp
index 0b1f66127ba..b289c1661a0 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.cpp
+++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.cpp
@@ -44,9 +44,8 @@ ProtocolSerialization5_1::putBucketInfo(
}
ProtocolSerialization5_1::ProtocolSerialization5_1(
- const std::shared_ptr<const document::DocumentTypeRepo>& repo,
- const documentapi::LoadTypeSet& loadTypes)
- : ProtocolSerialization5_0(repo, loadTypes)
+ const std::shared_ptr<const document::DocumentTypeRepo>& repo)
+ : ProtocolSerialization5_0(repo)
{
}
diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.h b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.h
index 5df0d757ce2..b46257a2182 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.h
+++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_1.h
@@ -3,8 +3,7 @@
#include "protocolserialization5_0.h"
-namespace storage {
-namespace mbusprot {
+namespace storage::mbusprot {
class ProtocolSerialization5_1 : public ProtocolSerialization5_0
{
@@ -13,8 +12,7 @@ class ProtocolSerialization5_1 : public ProtocolSerialization5_0
BUCKET_ACTIVE = 0x2,
};
public:
- ProtocolSerialization5_1(const std::shared_ptr<const document::DocumentTypeRepo>&,
- const documentapi::LoadTypeSet& loadTypes);
+ ProtocolSerialization5_1(const std::shared_ptr<const document::DocumentTypeRepo>&);
api::BucketInfo getBucketInfo(document::ByteBuffer& buf) const override;
void putBucketInfo(const api::BucketInfo& info, vespalib::GrowableByteBuffer& buf) const override;
@@ -33,5 +31,4 @@ protected:
SCmd::UP onDecodeCreateBucketCommand(BBuf&) const override;
};
-} // mbusprot
-} // storage
+}
diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_2.h b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_2.h
index f6f9443248c..50200edcbcf 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_2.h
+++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization5_2.h
@@ -12,9 +12,8 @@ namespace storage::mbusprot {
class ProtocolSerialization5_2 : public ProtocolSerialization5_1
{
public:
- ProtocolSerialization5_2(const std::shared_ptr<const document::DocumentTypeRepo>& repo,
- const documentapi::LoadTypeSet & loadTypes)
- : ProtocolSerialization5_1(repo, loadTypes)
+ ProtocolSerialization5_2(const std::shared_ptr<const document::DocumentTypeRepo>& repo)
+ : ProtocolSerialization5_1(repo)
{}
protected:
diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization6_0.cpp b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization6_0.cpp
index 930879082ed..cd66928877c 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization6_0.cpp
+++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization6_0.cpp
@@ -3,12 +3,10 @@
#include "protocolserialization6_0.h"
#include "serializationhelper.h"
-namespace storage {
-namespace mbusprot {
+namespace storage::mbusprot {
-ProtocolSerialization6_0::ProtocolSerialization6_0(const std::shared_ptr<const document::DocumentTypeRepo> &repo,
- const documentapi::LoadTypeSet &loadTypes)
- : ProtocolSerialization5_2(repo, loadTypes)
+ProtocolSerialization6_0::ProtocolSerialization6_0(const std::shared_ptr<const document::DocumentTypeRepo> &repo)
+ : ProtocolSerialization5_2(repo)
{
}
@@ -40,4 +38,3 @@ ProtocolSerialization6_0::putBucketSpace(document::BucketSpace bucketSpace, vesp
}
}
-}
diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization6_0.h b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization6_0.h
index 5c4e6b2ec63..efce45ce844 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization6_0.h
+++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization6_0.h
@@ -3,10 +3,8 @@
#pragma once
#include "protocolserialization5_2.h"
-#include <vespa/documentapi/loadtypes/loadtypeset.h>
-namespace storage {
-namespace mbusprot {
+namespace storage::mbusprot {
/**
* Protocol serialization version adding decoding and encoding
@@ -15,8 +13,7 @@ namespace mbusprot {
class ProtocolSerialization6_0 : public ProtocolSerialization5_2
{
public:
- ProtocolSerialization6_0(const std::shared_ptr<const document::DocumentTypeRepo> &repo,
- const documentapi::LoadTypeSet &loadTypes);
+ ProtocolSerialization6_0(const std::shared_ptr<const document::DocumentTypeRepo> &repo);
document::Bucket getBucket(document::ByteBuffer &buf) const override;
void putBucket(const document::Bucket &bucket, vespalib::GrowableByteBuffer &buf) const override;
@@ -25,4 +22,3 @@ public:
};
}
-}
diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization7.cpp b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization7.cpp
index b356ce59999..00572ff0eba 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization7.cpp
+++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization7.cpp
@@ -11,14 +11,13 @@
#include <vespa/storageapi/message/removelocation.h>
#include <vespa/storageapi/message/visitor.h>
#include <vespa/storageapi/message/stat.h>
+#include <vespa/documentapi/loadtypes/loadtype.h>
namespace storage::mbusprot {
-ProtocolSerialization7::ProtocolSerialization7(std::shared_ptr<const document::DocumentTypeRepo> repo,
- const documentapi::LoadTypeSet& load_types)
+ProtocolSerialization7::ProtocolSerialization7(std::shared_ptr<const document::DocumentTypeRepo> repo)
: ProtocolSerialization(),
- _repo(std::move(repo)),
- _load_types(load_types)
+ _repo(std::move(repo))
{
}
@@ -113,7 +112,7 @@ void write_request_header(vespalib::GrowableByteBuffer& buf, const api::StorageC
hdr.set_message_id(cmd.getMsgId());
hdr.set_priority(cmd.getPriority());
hdr.set_source_index(cmd.getSourceIndex());
- hdr.set_loadtype_id(cmd.getLoadType().getId());
+ hdr.set_loadtype_id(documentapi::LoadType::DEFAULT.getId());
uint8_t dest[128]; // Only primitive fields, should be plenty large enough.
auto encoded_size = static_cast<uint32_t>(hdr.ByteSizeLong());
@@ -232,12 +231,10 @@ class RequestDecoder {
protobuf::RequestHeader _hdr;
::google::protobuf::Arena _arena;
ProtobufType* _proto_obj;
- const documentapi::LoadTypeSet& _load_types;
public:
- RequestDecoder(document::ByteBuffer& in_buf, const documentapi::LoadTypeSet& load_types)
+ RequestDecoder(document::ByteBuffer& in_buf)
: _arena(),
- _proto_obj(::google::protobuf::Arena::Create<ProtobufType>(&_arena)),
- _load_types(load_types)
+ _proto_obj(::google::protobuf::Arena::Create<ProtobufType>(&_arena))
{
decode_request_header(in_buf, _hdr);
assert(in_buf.getRemaining() <= INT_MAX);
@@ -308,7 +305,7 @@ void encode_response(vespalib::GrowableByteBuffer& out_buf, const api::StorageRe
template <typename ProtobufType, typename Func>
std::unique_ptr<api::StorageCommand>
ProtocolSerialization7::decode_request(document::ByteBuffer& in_buf, Func&& f) const {
- RequestDecoder<ProtobufType> dec(in_buf, _load_types);
+ RequestDecoder<ProtobufType> dec(in_buf);
const auto& req = dec.request();
auto cmd = f(req);
dec.transfer_meta_information_to(*cmd);
diff --git a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization7.h b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization7.h
index e1d08691bc1..e7a97c6e3d5 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/protocolserialization7.h
+++ b/storageapi/src/vespa/storageapi/mbusprot/protocolserialization7.h
@@ -3,7 +3,6 @@
#pragma once
#include "protocolserialization.h"
-#include <vespa/documentapi/loadtypes/loadtypeset.h>
namespace storage::mbusprot {
@@ -13,13 +12,10 @@ namespace storage::mbusprot {
*/
class ProtocolSerialization7 final : public ProtocolSerialization {
const std::shared_ptr<const document::DocumentTypeRepo> _repo;
- const documentapi::LoadTypeSet& _load_types;
public:
- ProtocolSerialization7(std::shared_ptr<const document::DocumentTypeRepo> repo,
- const documentapi::LoadTypeSet& load_types);
+ ProtocolSerialization7(std::shared_ptr<const document::DocumentTypeRepo> repo);
const document::DocumentTypeRepo& type_repo() const noexcept { return *_repo; }
- const documentapi::LoadTypeSet& load_type_set() const noexcept { return _load_types; }
// Put
void onEncode(GBBuf&, const api::PutCommand&) const override;
diff --git a/storageapi/src/vespa/storageapi/mbusprot/storageprotocol.cpp b/storageapi/src/vespa/storageapi/mbusprot/storageprotocol.cpp
index b5107e68454..f6e68b3dd04 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/storageprotocol.cpp
+++ b/storageapi/src/vespa/storageapi/mbusprot/storageprotocol.cpp
@@ -15,13 +15,12 @@ namespace storage::mbusprot {
mbus::string StorageProtocol::NAME = "StorageProtocol";
-StorageProtocol::StorageProtocol(const std::shared_ptr<const document::DocumentTypeRepo> repo,
- const documentapi::LoadTypeSet& loadTypes)
- : _serializer5_0(repo, loadTypes),
- _serializer5_1(repo, loadTypes),
- _serializer5_2(repo, loadTypes),
- _serializer6_0(repo, loadTypes),
- _serializer7_0(repo, loadTypes)
+StorageProtocol::StorageProtocol(const std::shared_ptr<const document::DocumentTypeRepo> repo)
+ : _serializer5_0(repo),
+ _serializer5_1(repo),
+ _serializer5_2(repo),
+ _serializer6_0(repo),
+ _serializer7_0(repo)
{
}
diff --git a/storageapi/src/vespa/storageapi/mbusprot/storageprotocol.h b/storageapi/src/vespa/storageapi/mbusprot/storageprotocol.h
index 40f2d26d833..748fee93a86 100644
--- a/storageapi/src/vespa/storageapi/mbusprot/storageprotocol.h
+++ b/storageapi/src/vespa/storageapi/mbusprot/storageprotocol.h
@@ -15,8 +15,7 @@ public:
static mbus::string NAME;
- StorageProtocol(const std::shared_ptr<const document::DocumentTypeRepo>,
- const documentapi::LoadTypeSet& loadTypes);
+ StorageProtocol(const std::shared_ptr<const document::DocumentTypeRepo>);
~StorageProtocol() override;
const mbus::string& getName() const override { return NAME; }
@@ -29,7 +28,7 @@ private:
ProtocolSerialization5_1 _serializer5_1;
ProtocolSerialization5_2 _serializer5_2;
ProtocolSerialization6_0 _serializer6_0;
- ProtocolSerialization7 _serializer7_0;
+ ProtocolSerialization7 _serializer7_0;
};
}