summaryrefslogtreecommitdiffstats
path: root/searchlib/src/tests
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2024-02-14 19:05:23 +0100
committerTor Egge <Tor.Egge@online.no>2024-02-14 19:05:23 +0100
commitab47f5e966b7a4a3f0c6410852790cc5d7743b79 (patch)
treed57586fca257048e69f9a75540e97034965efe5a /searchlib/src/tests
parent5c5a0a43b2eee22b621ea17dfff39691abc28be5 (diff)
Add search::predicate::SimpleIndexSaver.
Remove extra logging when saving predicate attribute.
Diffstat (limited to 'searchlib/src/tests')
-rw-r--r--searchlib/src/tests/predicate/predicate_index_test.cpp6
-rw-r--r--searchlib/src/tests/predicate/simple_index_test.cpp16
2 files changed, 13 insertions, 9 deletions
diff --git a/searchlib/src/tests/predicate/predicate_index_test.cpp b/searchlib/src/tests/predicate/predicate_index_test.cpp
index 8e72fc1dbd9..40b650e489a 100644
--- a/searchlib/src/tests/predicate/predicate_index_test.cpp
+++ b/searchlib/src/tests/predicate/predicate_index_test.cpp
@@ -292,8 +292,7 @@ TEST("require that PredicateIndex can be (de)serialized") {
index.commit();
vespalib::DataBuffer buffer;
- PredicateIndex::SerializeStats dummy_stats;
- index.serialize(buffer, dummy_stats);
+ index.serialize(buffer);
uint32_t doc_id_limit;
DocIdLimitFinder finder(doc_id_limit);
PredicateIndex index2(generation_holder, dummy_provider, simple_index_config,
@@ -337,8 +336,7 @@ TEST("require that DocumentFeaturesStore is restored on deserialization") {
EXPECT_FALSE(index.getIntervalIndex().lookup(hash).valid());
indexFeature(index, doc_id, min_feature, {{hash, interval}}, {{hash2, bounds}});
vespalib::DataBuffer buffer;
- PredicateIndex::SerializeStats dummy_stats;
- index.serialize(buffer, dummy_stats);
+ index.serialize(buffer);
uint32_t doc_id_limit;
DocIdLimitFinder finder(doc_id_limit);
PredicateIndex index2(generation_holder, dummy_provider, simple_index_config,
diff --git a/searchlib/src/tests/predicate/simple_index_test.cpp b/searchlib/src/tests/predicate/simple_index_test.cpp
index c37d377e668..9b99ff8e809 100644
--- a/searchlib/src/tests/predicate/simple_index_test.cpp
+++ b/searchlib/src/tests/predicate/simple_index_test.cpp
@@ -2,6 +2,9 @@
// Unit tests for simple_index.
#include <vespa/searchlib/predicate/simple_index.hpp>
+#include <vespa/searchlib/predicate/simple_index_saver.hpp>
+#include <vespa/searchlib/predicate/nbo_write.h>
+#include <vespa/searchlib/util/data_buffer_writer.h>
#include <vespa/vespalib/testkit/testapp.h>
#include <vespa/searchlib/attribute/predicate_attribute.h>
#include <vespa/vespalib/btree/btree.hpp>
@@ -31,9 +34,9 @@ struct MyData {
}
};
-struct MyDataSerializer : PostingSerializer<MyData> {
- void serialize(const MyData &data, vespalib::DataBuffer& buffer) const override {
- buffer.writeInt32(data.data);
+struct MyDataSaver : PostingSaver<MyData> {
+ void save(const MyData &data, BufferWriter& writer) const override {
+ nbo_write<uint32_t>(writer, data.data);
}
};
@@ -176,8 +179,11 @@ TEST_FF("require that SimpleIndex can be serialized and deserialized.", Fixture,
}
f1.commit();
vespalib::DataBuffer buffer;
- SimpleIndex<MyData>::SerializeStats dummy_stats;
- f1.index().serialize(buffer, MyDataSerializer(), dummy_stats);
+ {
+ DataBufferWriter writer(buffer);
+ f1.index().make_saver(std::make_unique<MyDataSaver>())->save(writer);
+ writer.flush();
+ }
MyObserver observer;
MyDataDeserializer deserializer;
f2.index().deserialize(buffer, deserializer, observer, PredicateAttribute::PREDICATE_ATTRIBUTE_VERSION);