From 7152fe6fd7782fc453ce0a6cf87ea0cc4ed89c3b Mon Sep 17 00:00:00 2001 From: Arnstein Ressem Date: Fri, 7 Jan 2022 00:30:48 +0100 Subject: Revert "Balder/refactor docentry" --- .../src/tests/persistence/splitbitdetectortest.cpp | 14 +++--- storage/src/tests/persistence/testandsettest.cpp | 11 ++--- storage/src/tests/visiting/visitortest.cpp | 57 +++++++++++----------- .../src/vespa/storage/persistence/asynchandler.cpp | 1 - .../vespa/storage/persistence/bucketprocessor.h | 7 +-- .../src/vespa/storage/persistence/mergehandler.cpp | 23 ++++++--- .../src/vespa/storage/persistence/mergehandler.h | 6 +-- storage/src/vespa/storage/persistence/messages.cpp | 2 +- storage/src/vespa/storage/persistence/messages.h | 16 +++--- .../storage/persistence/processallhandler.cpp | 3 +- .../storage/persistence/provider_error_wrapper.cpp | 1 - .../storage/persistence/simplemessagehandler.cpp | 1 - .../vespa/storage/persistence/splitbitdetector.cpp | 1 - .../src/vespa/storage/visiting/countvisitor.cpp | 3 +- storage/src/vespa/storage/visiting/countvisitor.h | 4 +- .../vespa/storage/visiting/dumpvisitorsingle.cpp | 7 ++- .../src/vespa/storage/visiting/dumpvisitorsingle.h | 2 +- .../src/vespa/storage/visiting/recoveryvisitor.cpp | 3 +- .../src/vespa/storage/visiting/recoveryvisitor.h | 2 +- .../vespa/storage/visiting/reindexing_visitor.cpp | 7 ++- .../vespa/storage/visiting/reindexing_visitor.h | 2 +- storage/src/vespa/storage/visiting/testvisitor.cpp | 3 +- storage/src/vespa/storage/visiting/testvisitor.h | 2 +- storage/src/vespa/storage/visiting/visitor.cpp | 6 +-- storage/src/vespa/storage/visiting/visitor.h | 8 +-- 25 files changed, 91 insertions(+), 101 deletions(-) (limited to 'storage') diff --git a/storage/src/tests/persistence/splitbitdetectortest.cpp b/storage/src/tests/persistence/splitbitdetectortest.cpp index 5c4dc85e825..d4e84836a5a 100644 --- a/storage/src/tests/persistence/splitbitdetectortest.cpp +++ b/storage/src/tests/persistence/splitbitdetectortest.cpp @@ -15,8 +15,6 @@ using namespace ::testing; namespace storage { -using DocEntryList = std::vector; - struct SplitBitDetectorTest : Test { document::TestDocMan testDocMan; spi::dummy::DummyPersistence provider; @@ -35,7 +33,7 @@ struct SplitBitDetectorTest : Test { }; TEST_F(SplitBitDetectorTest, two_users) { - DocEntryList entries; + std::vector entries; for (uint32_t i = 0; i < 5; ++i) { document::Document::SP doc( testDocMan.createRandomDocumentAtLocation(1, i, 1, 1)); @@ -56,7 +54,7 @@ TEST_F(SplitBitDetectorTest, two_users) { } TEST_F(SplitBitDetectorTest, single_user) { - DocEntryList entries; + std::vector entries; for (uint32_t i = 0; i < 10; ++i) { document::Document::SP doc( testDocMan.createRandomDocumentAtLocation(1, i, 1, 1)); @@ -73,7 +71,7 @@ TEST_F(SplitBitDetectorTest, single_user) { TEST_F(SplitBitDetectorTest, max_bits) { int minContentSize = 1, maxContentSize = 1; - DocEntryList entries; + std::vector entries; for (uint32_t seed = 0; seed < 10; ++seed) { int location = 1; document::Document::SP doc(testDocMan.createRandomDocumentAtLocation( @@ -94,7 +92,7 @@ TEST_F(SplitBitDetectorTest, max_bits_one_below_max) { provider.createBucket(my_bucket, context); - DocEntryList entries; + std::vector entries; for (uint32_t seed = 0; seed < 10; ++seed) { int location = 1 | (seed % 2 == 0 ? 0x8000 : 0); document::Document::SP doc(testDocMan.createRandomDocumentAtLocation( @@ -116,7 +114,7 @@ TEST_F(SplitBitDetectorTest, max_bits_one_below_max) { } TEST_F(SplitBitDetectorTest, unsplittable) { - DocEntryList entries; + std::vector entries; for (uint32_t i = 0; i < 10; ++i) { document::Document::SP doc( @@ -132,7 +130,7 @@ TEST_F(SplitBitDetectorTest, unsplittable) { } TEST_F(SplitBitDetectorTest, unsplittable_min_count) { - DocEntryList entries; + std::vector entries; for (uint32_t i = 0; i < 10; ++i) { document::Document::SP doc( diff --git a/storage/src/tests/persistence/testandsettest.cpp b/storage/src/tests/persistence/testandsettest.cpp index 8cf89b55ad0..146dcab2ba7 100644 --- a/storage/src/tests/persistence/testandsettest.cpp +++ b/storage/src/tests/persistence/testandsettest.cpp @@ -10,7 +10,6 @@ #include #include #include -#include #include using std::unique_ptr; @@ -74,7 +73,7 @@ struct TestAndSetTest : PersistenceTestUtils { static std::string expectedDocEntryString( api::Timestamp timestamp, const document::DocumentId & testDocId, - spi::DocumentMetaEnum removeFlag = spi::DocumentMetaEnum::NONE); + spi::DocumentMetaFlags removeFlag = spi::NONE); }; TEST_F(TestAndSetTest, conditional_put_not_executed_on_condition_mismatch) { @@ -151,7 +150,7 @@ TEST_F(TestAndSetTest, conditional_remove_executed_on_condition_match) { ASSERT_EQ(fetchResult(asyncHandler->handleRemove(*remove, createTracker(remove, BUCKET))).getResult(), api::ReturnCode::Result::OK); EXPECT_EQ(expectedDocEntryString(timestampOne, testDocId) + - expectedDocEntryString(timestampTwo, testDocId, spi::DocumentMetaEnum::REMOVE_ENTRY), + expectedDocEntryString(timestampTwo, testDocId, spi::REMOVE_ENTRY), dumpBucket(BUCKET_ID)); } @@ -292,12 +291,12 @@ void TestAndSetTest::assertTestDocumentFoundAndMatchesContent(const document::Fi std::string TestAndSetTest::expectedDocEntryString( api::Timestamp timestamp, const document::DocumentId & docId, - spi::DocumentMetaEnum removeFlag) + spi::DocumentMetaFlags removeFlag) { std::stringstream ss; - ss << "DocEntry(" << timestamp << ", " << int(removeFlag) << ", "; - if (removeFlag == spi::DocumentMetaEnum::REMOVE_ENTRY) { + ss << "DocEntry(" << timestamp << ", " << removeFlag << ", "; + if (removeFlag == spi::REMOVE_ENTRY) { ss << docId << ")\n"; } else { ss << "Doc(" << docId << "))\n"; diff --git a/storage/src/tests/visiting/visitortest.cpp b/storage/src/tests/visiting/visitortest.cpp index 945a08d910e..494af8a0eff 100644 --- a/storage/src/tests/visiting/visitortest.cpp +++ b/storage/src/tests/visiting/visitortest.cpp @@ -16,7 +16,6 @@ #include #include #include -#include #include #include #include @@ -24,8 +23,6 @@ using namespace std::chrono_literals; using document::test::makeBucketSpace; -using document::Document; -using document::DocumentId; using namespace ::testing; namespace storage { @@ -57,7 +54,7 @@ struct TestParams { struct VisitorTest : Test { static uint32_t docCount; - std::vector _documents; + std::vector _documents; std::unique_ptr _messageSessionFactory; std::unique_ptr _node; std::unique_ptr _top; @@ -95,11 +92,11 @@ struct VisitorTest : Test { void getMessagesAndReply( int expectedCount, TestVisitorMessageSession& session, - std::vector & docs, - std::vector& docIds, + std::vector& docs, + std::vector& docIds, std::vector& infoMessages, api::ReturnCode::Result returnCode = api::ReturnCode::OK); - uint32_t getMatchingDocuments(std::vector& docs); + uint32_t getMatchingDocuments(std::vector& docs); protected: void doTestVisitorInstanceHasConsistencyLevel( @@ -215,7 +212,7 @@ VisitorTest::initializeTest(const TestParams& params) uri << "id:test:testdoctype1:n=" << i % 10 << ":http://www.ntnu.no/" << i << ".html"; - _documents.push_back(Document::SP( + _documents.push_back(document::Document::SP( _node->getTestDocMan().createDocument(content, uri.str()))); const document::DocumentType& type(_documents.back()->getType()); _documents.back()->setValue(type.getField("headerval"), @@ -278,8 +275,8 @@ void VisitorTest::getMessagesAndReply( int expectedCount, TestVisitorMessageSession& session, - std::vector& docs, - std::vector& docIds, + std::vector& docs, + std::vector& docIds, std::vector& infoMessages, api::ReturnCode::Result result) { @@ -354,7 +351,7 @@ VisitorTest::verifyCreateVisitorReply( } uint32_t -VisitorTest::getMatchingDocuments(std::vector& docs) { +VisitorTest::getMatchingDocuments(std::vector& docs) { uint32_t equalCount = 0; for (uint32_t i=0; igetEntries().push_back(spi::DocEntry::create(spi::Timestamp(1000 + i), Document::UP(_documents[i]->clone()))); + reply->getEntries().emplace_back( + std::make_unique( + spi::Timestamp(1000 + i), + spi::NONE, + document::Document::UP(_documents[i]->clone()))); } if (documentCount == _documents.size() || overrideCompleted) { reply->setCompleted(); @@ -480,8 +481,8 @@ TEST_F(VisitorTest, normal_usage) { sendGetIterReply(*getIterCmd); - std::vector docs; - std::vector docIds; + std::vector docs; + std::vector docIds; std::vector infoMessages; getMessagesAndReply(_documents.size(), getSession(0), docs, docIds, infoMessages); ASSERT_EQ(0, infoMessages.size()); @@ -546,8 +547,8 @@ TEST_F(VisitorTest, document_api_client_error) { sendGetIterReply(*getIterCmd, api::ReturnCode(api::ReturnCode::OK), 1); } - std::vector docs; - std::vector docIds; + std::vector docs; + std::vector docIds; std::vector infoMessages; getMessagesAndReply(1, getSession(0), docs, docIds, infoMessages, api::ReturnCode::INTERNAL_FAILURE); @@ -586,8 +587,8 @@ TEST_F(VisitorTest, no_document_api_resending_for_failed_visitor) { sendGetIterReply(*getIterCmd, api::ReturnCode(api::ReturnCode::OK), 2, true); } - std::vector docs; - std::vector docIds; + std::vector docs; + std::vector docIds; std::vector infoMessages; // Use non-critical result. Visitor info message should be received // after we send a NOT_CONNECTED reply. Failing this message as well @@ -689,8 +690,8 @@ TEST_F(VisitorTest, no_visitor_notification_for_transient_failures) { ASSERT_NO_FATAL_FAILURE(initializeTest()); ASSERT_NO_FATAL_FAILURE(sendInitialCreateVisitorAndGetIterRound()); - std::vector docs; - std::vector docIds; + std::vector docs; + std::vector docIds; std::vector infoMessages; // Have to make sure time increases in visitor thread so that resend // times are reached. @@ -733,8 +734,8 @@ TEST_F(VisitorTest, notification_sent_if_transient_error_retried_many_times) { ASSERT_NO_FATAL_FAILURE(initializeTest()); sendInitialCreateVisitorAndGetIterRound(); - std::vector docs; - std::vector docIds; + std::vector docs; + std::vector docIds; std::vector infoMessages; // Have to make sure time increases in visitor thread so that resend // times are reached. @@ -773,8 +774,8 @@ VisitorTest::doCompleteVisitingSession( 1, true); - std::vector docs; - std::vector docIds; + std::vector docs; + std::vector docIds; std::vector infoMessages; getMessagesAndReply(1, getSession(0), docs, docIds, infoMessages); @@ -834,8 +835,8 @@ TEST_F(VisitorTest, no_more_iterators_sent_while_memory_used_above_limit) { std::this_thread::sleep_for(100ms); ASSERT_EQ(0, _bottom->getNumCommands()); - std::vector docs; - std::vector docIds; + std::vector docs; + std::vector docIds; std::vector infoMessages; getMessagesAndReply(1, getSession(0), docs, docIds, infoMessages); @@ -897,8 +898,8 @@ struct ReindexingVisitorTest : VisitorTest { void respond_to_client_put(api::ReturnCode::Result result) { // Reply to the Put from "client" back to the visitor - std::vector docs; - std::vector doc_ids; + std::vector docs; + std::vector doc_ids; std::vector info_messages; getMessagesAndReply(1, getSession(0), docs, doc_ids, info_messages, result); } diff --git a/storage/src/vespa/storage/persistence/asynchandler.cpp b/storage/src/vespa/storage/persistence/asynchandler.cpp index 3d24ee87879..b5161673af3 100644 --- a/storage/src/vespa/storage/persistence/asynchandler.cpp +++ b/storage/src/vespa/storage/persistence/asynchandler.cpp @@ -6,7 +6,6 @@ #include "bucketownershipnotifier.h" #include "bucketprocessor.h" #include -#include #include #include #include diff --git a/storage/src/vespa/storage/persistence/bucketprocessor.h b/storage/src/vespa/storage/persistence/bucketprocessor.h index 002cba6c15c..c605a9338e3 100644 --- a/storage/src/vespa/storage/persistence/bucketprocessor.h +++ b/storage/src/vespa/storage/persistence/bucketprocessor.h @@ -7,14 +7,11 @@ #pragma once #include +#include #include -#include namespace document { class FieldSet; } -namespace storage::spi { - struct PersistenceProvider; - class DocEntry; -} +namespace storage::spi { struct PersistenceProvider; } namespace storage { diff --git a/storage/src/vespa/storage/persistence/mergehandler.cpp b/storage/src/vespa/storage/persistence/mergehandler.cpp index b9739fcf734..0c9cecdb6a1 100644 --- a/storage/src/vespa/storage/persistence/mergehandler.cpp +++ b/storage/src/vespa/storage/persistence/mergehandler.cpp @@ -6,7 +6,7 @@ #include "apply_bucket_diff_state.h" #include #include -#include +#include #include #include #include @@ -130,8 +130,11 @@ void update_op_metrics(FileStorThreadMetrics& metrics, const api::StorageReply & } // anonymous namespace void -MergeHandler::populateMetaData(const spi::Bucket& bucket, Timestamp maxTimestamp, - DocEntryList& entries, spi::Context& context) const +MergeHandler::populateMetaData( + const spi::Bucket& bucket, + Timestamp maxTimestamp, + std::vector& entries, + spi::Context& context) const { spi::DocumentSelection docSel(""); @@ -147,7 +150,9 @@ MergeHandler::populateMetaData(const spi::Bucket& bucket, Timestamp maxTimestamp if (createIterResult.getErrorCode() != spi::Result::ErrorType::NONE) { std::ostringstream ss; ss << "Failed to create iterator for " - << bucket << ": " << createIterResult.getErrorMessage(); + << bucket + << ": " + << createIterResult.getErrorMessage(); throw std::runtime_error(ss.str()); } spi::IteratorId iteratorId(createIterResult.getIteratorId()); @@ -158,7 +163,9 @@ MergeHandler::populateMetaData(const spi::Bucket& bucket, Timestamp maxTimestamp if (result.getErrorCode() != spi::Result::ErrorType::NONE) { std::ostringstream ss; ss << "Failed to iterate for " - << bucket << ": " << result.getErrorMessage(); + << bucket + << ": " + << result.getErrorMessage(); throw std::runtime_error(ss.str()); } auto list = result.steal_entries(); @@ -234,7 +241,7 @@ MergeHandler::buildBucketInfoList( } } - DocEntryList entries; + std::vector entries; populateMetaData(bucket, maxTimestamp, entries, context); for (const auto& entry : entries) { @@ -395,7 +402,7 @@ MergeHandler::fetchLocalData( IteratorGuard iteratorGuard(_spi, iteratorId, context); // Fetch all entries - DocEntryList entries; + std::vector entries; entries.reserve(slots.size()); bool fetchedAllLocalData = false; bool chunkLimitReached = false; @@ -550,7 +557,7 @@ MergeHandler::applyDiffLocally( uint32_t notNeededByteCount = 0; async_results->mark_stale_bucket_info(); - DocEntryList entries; + std::vector entries; populateMetaData(bucket, MAX_TIMESTAMP, entries, context); const document::DocumentTypeRepo & repo = _env.getDocumentTypeRepo(); diff --git a/storage/src/vespa/storage/persistence/mergehandler.h b/storage/src/vespa/storage/persistence/mergehandler.h index f52fe63bc2b..5e66b364242 100644 --- a/storage/src/vespa/storage/persistence/mergehandler.h +++ b/storage/src/vespa/storage/persistence/mergehandler.h @@ -16,6 +16,7 @@ #include "types.h" #include "merge_bucket_info_syncer.h" #include +#include #include #include #include @@ -29,9 +30,9 @@ namespace storage { namespace spi { struct PersistenceProvider; class Context; - class DocEntry; } class PersistenceUtil; +class ApplyBucketDiffEntryResult; class ApplyBucketDiffState; class MergeStatus; @@ -81,7 +82,6 @@ public: void configure(bool async_apply_bucket_diff) noexcept; private: - using DocEntryList = std::vector>; const framework::Clock &_clock; const ClusterContext &_cluster_context; PersistenceUtil &_env; @@ -117,7 +117,7 @@ private: */ void populateMetaData(const spi::Bucket&, Timestamp maxTimestamp, - DocEntryList & entries, + std::vector& entries, spi::Context& context) const; Document::UP deserializeDiffDocument( diff --git a/storage/src/vespa/storage/persistence/messages.cpp b/storage/src/vespa/storage/persistence/messages.cpp index cf05ccd65b8..c6f7442cfdc 100644 --- a/storage/src/vespa/storage/persistence/messages.cpp +++ b/storage/src/vespa/storage/persistence/messages.cpp @@ -1,8 +1,8 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #include "messages.h" -#include #include +#include using document::BucketSpace; diff --git a/storage/src/vespa/storage/persistence/messages.h b/storage/src/vespa/storage/persistence/messages.h index 86cf1ac3b06..594506f53ba 100644 --- a/storage/src/vespa/storage/persistence/messages.h +++ b/storage/src/vespa/storage/persistence/messages.h @@ -2,6 +2,7 @@ #pragma once #include +#include #include #include #include @@ -9,8 +10,6 @@ namespace storage { -namespace spi { class DocEntry; } - class GetIterCommand : public api::InternalCommand { private: document::Bucket _bucket; @@ -45,10 +44,9 @@ private: class GetIterReply : public api::InternalReply { private: - using List = std::vector>; document::Bucket _bucket; - List _entries; - bool _completed; + std::vector _entries; + bool _completed; public: typedef std::unique_ptr UP; @@ -60,9 +58,13 @@ public: document::Bucket getBucket() const override { return _bucket; } - const List & getEntries() const { return _entries; } + const std::vector& getEntries() const { + return _entries; + } - List & getEntries() { return _entries; } + std::vector& getEntries() { + return _entries; + } void setCompleted(bool completed = true) { _completed = completed; } bool isCompleted() const { return _completed; } diff --git a/storage/src/vespa/storage/persistence/processallhandler.cpp b/storage/src/vespa/storage/persistence/processallhandler.cpp index 6d6723a0185..6a2b5e79450 100644 --- a/storage/src/vespa/storage/persistence/processallhandler.cpp +++ b/storage/src/vespa/storage/persistence/processallhandler.cpp @@ -5,7 +5,6 @@ #include "persistenceutil.h" #include #include -#include #include #include @@ -32,7 +31,7 @@ public: if (e.getDocument() != nullptr) { ost << "Doc(" << e.getDocument()->getId() << ")" << ", " << e.getDocument()->getId().getGlobalId().toString() - << ", size: " << e.getSize(); + << ", size: " << e.getPersistedDocumentSize(); } else if (e.getDocumentId() != nullptr) { ost << *e.getDocumentId() << ", " << e.getDocumentId()->getGlobalId().toString(); diff --git a/storage/src/vespa/storage/persistence/provider_error_wrapper.cpp b/storage/src/vespa/storage/persistence/provider_error_wrapper.cpp index b7344098698..752c1175f22 100644 --- a/storage/src/vespa/storage/persistence/provider_error_wrapper.cpp +++ b/storage/src/vespa/storage/persistence/provider_error_wrapper.cpp @@ -2,7 +2,6 @@ #include "provider_error_wrapper.h" #include "persistenceutil.h" -#include #include namespace storage { diff --git a/storage/src/vespa/storage/persistence/simplemessagehandler.cpp b/storage/src/vespa/storage/persistence/simplemessagehandler.cpp index 74813e2e891..9a7a451b906 100644 --- a/storage/src/vespa/storage/persistence/simplemessagehandler.cpp +++ b/storage/src/vespa/storage/persistence/simplemessagehandler.cpp @@ -3,7 +3,6 @@ #include "simplemessagehandler.h" #include "persistenceutil.h" #include -#include #include #include #include diff --git a/storage/src/vespa/storage/persistence/splitbitdetector.cpp b/storage/src/vespa/storage/persistence/splitbitdetector.cpp index 2a9ac635cff..bd472868e06 100644 --- a/storage/src/vespa/storage/persistence/splitbitdetector.cpp +++ b/storage/src/vespa/storage/persistence/splitbitdetector.cpp @@ -3,7 +3,6 @@ #include "splitbitdetector.h" #include "bucketprocessor.h" #include -#include #include #include #include diff --git a/storage/src/vespa/storage/visiting/countvisitor.cpp b/storage/src/vespa/storage/visiting/countvisitor.cpp index 3971544a9a0..e20699aa799 100644 --- a/storage/src/vespa/storage/visiting/countvisitor.cpp +++ b/storage/src/vespa/storage/visiting/countvisitor.cpp @@ -1,7 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #include "countvisitor.h" -#include #include #include #include @@ -23,7 +22,7 @@ CountVisitor::CountVisitor(StorageComponent& component, void CountVisitor::handleDocuments(const document::BucketId& /*bucketId*/, - DocEntryList& entries, + std::vector& entries, HitCounter& hitCounter) { for (size_t i = 0; i < entries.size(); ++i) { diff --git a/storage/src/vespa/storage/visiting/countvisitor.h b/storage/src/vespa/storage/visiting/countvisitor.h index 4120a96225f..4c436b3d07c 100644 --- a/storage/src/vespa/storage/visiting/countvisitor.h +++ b/storage/src/vespa/storage/visiting/countvisitor.h @@ -18,11 +18,11 @@ public: CountVisitor(StorageComponent&, const vdslib::Parameters& params); - void completedVisiting(HitCounter&) override; + virtual void completedVisiting(HitCounter&) override; private: void handleDocuments(const document::BucketId& bucketId, - DocEntryList & entries, + std::vector& entries, HitCounter& hitCounter) override; bool _doScheme; diff --git a/storage/src/vespa/storage/visiting/dumpvisitorsingle.cpp b/storage/src/vespa/storage/visiting/dumpvisitorsingle.cpp index 3419d329a06..704aaa219cb 100644 --- a/storage/src/vespa/storage/visiting/dumpvisitorsingle.cpp +++ b/storage/src/vespa/storage/visiting/dumpvisitorsingle.cpp @@ -1,7 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #include "dumpvisitorsingle.h" -#include #include #include #include @@ -17,8 +16,8 @@ DumpVisitorSingle::DumpVisitorSingle(StorageComponent& component, const vdslib:: { } -void DumpVisitorSingle::handleDocuments(const document::BucketId&, - DocEntryList& entries, +void DumpVisitorSingle::handleDocuments(const document::BucketId& /*bucketId*/, + std::vector& entries, HitCounter& hitCounter) { LOG(debug, "Visitor %s handling block of %zu documents.", @@ -26,7 +25,7 @@ void DumpVisitorSingle::handleDocuments(const document::BucketId&, for (size_t i = 0; i < entries.size(); ++i) { spi::DocEntry& entry(*entries[i]); - const uint32_t docSize = entry.getSize(); + const uint32_t docSize = entry.getDocumentSize(); if (entry.isRemove()) { hitCounter.addHit(*entry.getDocumentId(), docSize); sendMessage(std::make_unique(*entry.getDocumentId())); diff --git a/storage/src/vespa/storage/visiting/dumpvisitorsingle.h b/storage/src/vespa/storage/visiting/dumpvisitorsingle.h index c98bad17e84..81f4ab7e989 100644 --- a/storage/src/vespa/storage/visiting/dumpvisitorsingle.h +++ b/storage/src/vespa/storage/visiting/dumpvisitorsingle.h @@ -19,7 +19,7 @@ public: const vdslib::Parameters& params); private: - void handleDocuments(const document::BucketId&, DocEntryList&, HitCounter&) override; + void handleDocuments(const document::BucketId&, std::vector&, HitCounter&) override; }; struct DumpVisitorSingleFactory : public VisitorFactory { diff --git a/storage/src/vespa/storage/visiting/recoveryvisitor.cpp b/storage/src/vespa/storage/visiting/recoveryvisitor.cpp index 1c3c97d7dcb..df965f93ae6 100644 --- a/storage/src/vespa/storage/visiting/recoveryvisitor.cpp +++ b/storage/src/vespa/storage/visiting/recoveryvisitor.cpp @@ -2,7 +2,6 @@ #include "recoveryvisitor.h" -#include #include #include #include @@ -32,7 +31,7 @@ RecoveryVisitor::RecoveryVisitor(StorageComponent& component, void RecoveryVisitor::handleDocuments(const document::BucketId& bid, - DocEntryList & entries, + std::vector& entries, HitCounter& hitCounter) { std::lock_guard guard(_mutex); diff --git a/storage/src/vespa/storage/visiting/recoveryvisitor.h b/storage/src/vespa/storage/visiting/recoveryvisitor.h index e850eca3f37..045c8aeb484 100644 --- a/storage/src/vespa/storage/visiting/recoveryvisitor.h +++ b/storage/src/vespa/storage/visiting/recoveryvisitor.h @@ -22,7 +22,7 @@ public: private: void handleDocuments(const document::BucketId& bucketId, - DocEntryList & entries, + std::vector& entries, HitCounter& hitCounter) override; void completedBucket(const document::BucketId&, HitCounter&) override; diff --git a/storage/src/vespa/storage/visiting/reindexing_visitor.cpp b/storage/src/vespa/storage/visiting/reindexing_visitor.cpp index 0b08c52bdc4..528f83e29cc 100644 --- a/storage/src/vespa/storage/visiting/reindexing_visitor.cpp +++ b/storage/src/vespa/storage/visiting/reindexing_visitor.cpp @@ -3,7 +3,6 @@ #include #include #include -#include #include LOG_SETUP(".visitor.instance.reindexing_visitor"); @@ -15,8 +14,8 @@ ReindexingVisitor::ReindexingVisitor(StorageComponent& component) { } -void ReindexingVisitor::handleDocuments(const document::BucketId& , - DocEntryList & entries, +void ReindexingVisitor::handleDocuments(const document::BucketId& /*bucketId*/, + std::vector& entries, HitCounter& hitCounter) { auto lock_token = make_lock_access_token(); @@ -27,7 +26,7 @@ void ReindexingVisitor::handleDocuments(const document::BucketId& , // We don't reindex removed documents, as that would be very silly. continue; } - const uint32_t doc_size = entry->getSize(); + const uint32_t doc_size = entry->getDocumentSize(); hitCounter.addHit(*entry->getDocumentId(), doc_size); auto msg = std::make_unique(entry->releaseDocument()); msg->setApproxSize(doc_size); diff --git a/storage/src/vespa/storage/visiting/reindexing_visitor.h b/storage/src/vespa/storage/visiting/reindexing_visitor.h index d9e18542818..9bde9903617 100644 --- a/storage/src/vespa/storage/visiting/reindexing_visitor.h +++ b/storage/src/vespa/storage/visiting/reindexing_visitor.h @@ -20,7 +20,7 @@ public: ~ReindexingVisitor() override = default; private: - void handleDocuments(const document::BucketId&, DocEntryList&, HitCounter&) override; + void handleDocuments(const document::BucketId&, std::vector&, HitCounter&) override; bool remap_docapi_message_error_code(api::ReturnCode& in_out_code) override; vespalib::string make_lock_access_token() const; }; diff --git a/storage/src/vespa/storage/visiting/testvisitor.cpp b/storage/src/vespa/storage/visiting/testvisitor.cpp index 10c79ea6f18..b5ace673e48 100644 --- a/storage/src/vespa/storage/visiting/testvisitor.cpp +++ b/storage/src/vespa/storage/visiting/testvisitor.cpp @@ -1,7 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #include "testvisitor.h" -#include #include #include @@ -40,7 +39,7 @@ TestVisitor::startingVisitor(const std::vector& buckets) void TestVisitor::handleDocuments(const document::BucketId& /*bucketId*/, - DocEntryList & entries, + std::vector& entries, HitCounter& /*hitCounter*/) { std::ostringstream ost; diff --git a/storage/src/vespa/storage/visiting/testvisitor.h b/storage/src/vespa/storage/visiting/testvisitor.h index 989581ac121..482b1347faa 100644 --- a/storage/src/vespa/storage/visiting/testvisitor.h +++ b/storage/src/vespa/storage/visiting/testvisitor.h @@ -20,7 +20,7 @@ private: void startingVisitor(const std::vector& buckets) override; void handleDocuments(const document::BucketId& bucketId, - DocEntryList & entries, + std::vector& entries, HitCounter& hitCounter) override; void completedBucket(const document::BucketId& bucket, HitCounter& hitCounter) override; diff --git a/storage/src/vespa/storage/visiting/visitor.cpp b/storage/src/vespa/storage/visiting/visitor.cpp index b66285f5048..dfb78122e07 100644 --- a/storage/src/vespa/storage/visiting/visitor.cpp +++ b/storage/src/vespa/storage/visiting/visitor.cpp @@ -2,7 +2,6 @@ #include "visitor.h" #include "visitormetrics.h" -#include #include #include #include @@ -815,11 +814,12 @@ Visitor::onGetIterReply(const std::shared_ptr& reply, uint64_t size = 0; for (const auto& entry : reply->getEntries()) { - size += entry->getSize(); + size += entry->getPersistedDocumentSize(); } _visitorStatistics.setDocumentsVisited( - _visitorStatistics.getDocumentsVisited() + reply->getEntries().size()); + _visitorStatistics.getDocumentsVisited() + + reply->getEntries().size()); _visitorStatistics.setBytesVisited(_visitorStatistics.getBytesVisited() + size); } catch (std::exception& e) { LOG(warning, "handleDocuments threw exception %s", e.what()); diff --git a/storage/src/vespa/storage/visiting/visitor.h b/storage/src/vespa/storage/visiting/visitor.h index 8857a54e8df..52b2d586c78 100644 --- a/storage/src/vespa/storage/visiting/visitor.h +++ b/storage/src/vespa/storage/visiting/visitor.h @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include @@ -38,10 +39,6 @@ namespace documentapi { namespace storage { -namespace spi { - class DocEntry; -} - namespace api { class ReturnCode; class StorageCommand; @@ -360,7 +357,6 @@ protected: // error code, false if the DocumentAPI message should be retried later. [[nodiscard]] virtual bool remap_docapi_message_error_code(api::ReturnCode& in_out_code); public: - using DocEntryList = std::vector>; Visitor(StorageComponent& component); virtual ~Visitor(); @@ -402,7 +398,7 @@ public: * vector of documents arrive from the persistence layer. */ virtual void handleDocuments(const document::BucketId&, - DocEntryList & entries, + std::vector& entries, HitCounter& hitCounter) = 0; /** -- cgit v1.2.3