diff options
Diffstat (limited to 'searchcore/src/tests/proton')
10 files changed, 184 insertions, 63 deletions
diff --git a/searchcore/src/tests/proton/common/CMakeLists.txt b/searchcore/src/tests/proton/common/CMakeLists.txt index da0bc9b5b10..30ec8c035ad 100644 --- a/searchcore/src/tests/proton/common/CMakeLists.txt +++ b/searchcore/src/tests/proton/common/CMakeLists.txt @@ -15,3 +15,10 @@ vespa_add_executable(searchcore_cachedselect_test_app TEST searchlib_test ) vespa_add_test(NAME searchcore_cachedselect_test_app COMMAND searchcore_cachedselect_test_app) +vespa_add_executable(pendinglidtracker_test_app TEST + SOURCES + pendinglidtracker_test.cpp + DEPENDS + searchcore_pcommon +) +vespa_add_test(NAME pendinglidtracker_test_app COMMAND pendinglidtracker_test_app) diff --git a/searchcore/src/tests/proton/common/pendinglidtracker_test.cpp b/searchcore/src/tests/proton/common/pendinglidtracker_test.cpp new file mode 100644 index 00000000000..3b42a399888 --- /dev/null +++ b/searchcore/src/tests/proton/common/pendinglidtracker_test.cpp @@ -0,0 +1,109 @@ +// Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. + +#include <vespa/vespalib/testkit/testapp.h> +#include <vespa/searchcore/proton/common/pendinglidtracker.h> + +#include <vespa/log/log.h> +LOG_SETUP("pendinglidtracker_test"); + +using namespace proton; + +constexpr uint32_t LID_1 = 1u; +const std::vector<uint32_t> LIDV_2_1_3({2u, LID_1, 3u}); +const std::vector<uint32_t> LIDV_2_3({2u, 3u}); + +namespace proton { + +std::ostream & +operator << (std::ostream & os, ILidCommitState::State state) { + switch (state) { + case ILidCommitState::State::NEED_COMMIT: + os << "NEED_COMMIT"; + break; + case ILidCommitState::State::WAITING: + os << "WAITING"; + break; + case ILidCommitState::State::COMPLETED: + os << "COMPLETED"; + break; + } + return os; +} + +} + +void +verifyPhase1ProduceAndNeedCommit(PendingLidTrackerBase & tracker, ILidCommitState::State expected) { + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState()); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LID_1)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_1_3)); + + auto token = tracker.produce(LID_1); + EXPECT_EQUAL(expected, tracker.getState()); + EXPECT_EQUAL(expected, tracker.getState(LID_1)); + EXPECT_EQUAL(expected, tracker.getState(LIDV_2_1_3)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_3)); + { + auto token2 = tracker.produce(LID_1); + EXPECT_EQUAL(expected, tracker.getState()); + EXPECT_EQUAL(expected, tracker.getState(LID_1)); + EXPECT_EQUAL(expected, tracker.getState(LIDV_2_1_3)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_3)); + } + EXPECT_EQUAL(expected, tracker.getState()); + EXPECT_EQUAL(expected, tracker.getState(LID_1)); + EXPECT_EQUAL(expected, tracker.getState(LIDV_2_1_3)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_3)); +} + +TEST("test pendinglidtracker for needcommit") { + PendingLidTracker tracker; + verifyPhase1ProduceAndNeedCommit(tracker, ILidCommitState::State::WAITING); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState()); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LID_1)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_1_3)); + { + ILidCommitState::State incomplete = ILidCommitState::State::WAITING; + auto token = tracker.produce(LID_1); + EXPECT_EQUAL(incomplete, tracker.getState()); + EXPECT_EQUAL(incomplete, tracker.getState(LID_1)); + EXPECT_EQUAL(incomplete, tracker.getState(LIDV_2_1_3)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_3)); + { + auto snapshot = tracker.produceSnapshot(); + EXPECT_EQUAL(incomplete, tracker.getState()); + EXPECT_EQUAL(incomplete, tracker.getState(LID_1)); + EXPECT_EQUAL(incomplete, tracker.getState(LIDV_2_1_3)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_3)); + } + EXPECT_EQUAL(incomplete, tracker.getState()); + EXPECT_EQUAL(incomplete, tracker.getState(LID_1)); + EXPECT_EQUAL(incomplete, tracker.getState(LIDV_2_1_3)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_3)); + } + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState()); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LID_1)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_1_3)); +} + +TEST("test two phase pendinglidtracker for needcommit") { + TwoPhasePendingLidTracker tracker; + ILidCommitState::State incomplete = ILidCommitState::State::NEED_COMMIT; + verifyPhase1ProduceAndNeedCommit(tracker, incomplete); + EXPECT_EQUAL(incomplete, tracker.getState()); + EXPECT_EQUAL(incomplete, tracker.getState(LID_1)); + EXPECT_EQUAL(incomplete, tracker.getState(LIDV_2_1_3)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_3)); + { + ILidCommitState::State waiting = ILidCommitState::State::WAITING; + auto snapshot = tracker.produceSnapshot(); + EXPECT_EQUAL(waiting, tracker.getState()); + EXPECT_EQUAL(waiting, tracker.getState(LID_1)); + EXPECT_EQUAL(waiting, tracker.getState(LIDV_2_1_3)); + } + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState()); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LID_1)); + EXPECT_EQUAL(ILidCommitState::State::COMPLETED, tracker.getState(LIDV_2_1_3)); +} + +TEST_MAIN() { TEST_RUN_ALL(); } diff --git a/searchcore/src/tests/proton/docsummary/docsummary.cpp b/searchcore/src/tests/proton/docsummary/docsummary.cpp index 7d27c3b21f4..92117e174e9 100644 --- a/searchcore/src/tests/proton/docsummary/docsummary.cpp +++ b/searchcore/src/tests/proton/docsummary/docsummary.cpp @@ -31,6 +31,7 @@ #include <vespa/searchlib/transactionlog/nosyncproxy.h> #include <vespa/searchlib/transactionlog/translogserver.h> #include <vespa/vespalib/data/slime/slime.h> +#include <vespa/vespalib/data/simple_buffer.h> #include <vespa/vespalib/encoding/base64.h> #include <vespa/config-bucketspaces.h> #include <vespa/vespalib/testkit/testapp.h> diff --git a/searchcore/src/tests/proton/document_iterator/document_iterator_test.cpp b/searchcore/src/tests/proton/document_iterator/document_iterator_test.cpp index b106233a13e..ec314c50f4a 100644 --- a/searchcore/src/tests/proton/document_iterator/document_iterator_test.cpp +++ b/searchcore/src/tests/proton/document_iterator/document_iterator_test.cpp @@ -9,6 +9,7 @@ #include <vespa/persistence/spi/result.h> #include <vespa/persistence/spi/test.h> #include <vespa/searchcore/proton/common/attribute_updater.h> +#include <vespa/searchcore/proton/common/pendinglidtracker.h> #include <vespa/searchcore/proton/persistenceengine/document_iterator.h> #include <vespa/searchcore/proton/persistenceengine/commit_and_wait_document_retriever.h> #include <vespa/searchlib/attribute/attributecontext.h> @@ -279,12 +280,12 @@ struct Committer : public ICommitable { size_t _commitAndWaitCount; Committer() : _commitCount(0), _commitAndWaitCount(0) { } void commit() override { _commitCount++; } - void commitAndWait() override { _commitAndWaitCount++; } - void commitAndWait(IPendingLidTracker &, uint32_t ) override { - commitAndWait(); + void commitAndWait(ILidCommitState &) override { _commitAndWaitCount++; } + void commitAndWait(ILidCommitState & tracker, uint32_t ) override { + commitAndWait(tracker); } - void commitAndWait(IPendingLidTracker &, const std::vector<uint32_t> & ) override { - commitAndWait(); + void commitAndWait(ILidCommitState & tracker, const std::vector<uint32_t> & ) override { + commitAndWait(tracker); } }; diff --git a/searchcore/src/tests/proton/documentdb/document_subdbs/document_subdbs_test.cpp b/searchcore/src/tests/proton/documentdb/document_subdbs/document_subdbs_test.cpp index eeb6fc1966f..c705010ada7 100644 --- a/searchcore/src/tests/proton/documentdb/document_subdbs/document_subdbs_test.cpp +++ b/searchcore/src/tests/proton/documentdb/document_subdbs/document_subdbs_test.cpp @@ -147,8 +147,7 @@ struct MyStoreOnlyContext StoreOnlyContext _ctx; MyStoreOnlyContext(IThreadingService &writeService, std::shared_ptr<BucketDBOwner> bucketDB, - IBucketDBHandlerInitializer & bucketDBHandlerInitializer, - ICommitable & commitable); + IBucketDBHandlerInitializer & bucketDBHandlerInitializer); ~MyStoreOnlyContext(); const MySubDBOwner &getOwner() const { return _owner; @@ -157,8 +156,7 @@ struct MyStoreOnlyContext MyStoreOnlyContext::MyStoreOnlyContext(IThreadingService &writeService, std::shared_ptr<BucketDBOwner> bucketDB, - IBucketDBHandlerInitializer &bucketDBHandlerInitializer, - ICommitable &) + IBucketDBHandlerInitializer &bucketDBHandlerInitializer) : _owner(), _syncProxy(), _getSerialNum(), _fileHeader(), _metrics(DOCTYPE_NAME, 1), _configMutex(), _hwInfo(), _ctx(_owner, _syncProxy, _getSerialNum, _fileHeader, writeService, bucketDB, @@ -185,8 +183,7 @@ struct MyFastAccessContext FastAccessContext _ctx; MyFastAccessContext(IThreadingService &writeService, std::shared_ptr<BucketDBOwner> bucketDB, - IBucketDBHandlerInitializer & bucketDBHandlerInitializer, - ICommitable & commitable); + IBucketDBHandlerInitializer & bucketDBHandlerInitializer); ~MyFastAccessContext(); const MyMetricsWireService &getWireService() const { return _wireService; @@ -198,9 +195,8 @@ struct MyFastAccessContext MyFastAccessContext::MyFastAccessContext(IThreadingService &writeService, std::shared_ptr<BucketDBOwner> bucketDB, - IBucketDBHandlerInitializer & bucketDBHandlerInitializer, - ICommitable & commitable) - : _storeOnlyCtx(writeService, bucketDB, bucketDBHandlerInitializer, commitable), + IBucketDBHandlerInitializer & bucketDBHandlerInitializer) + : _storeOnlyCtx(writeService, bucketDB, bucketDBHandlerInitializer), _attributeMetrics(nullptr), _wireService(), _ctx(_storeOnlyCtx._ctx, _attributeMetrics, _wireService) @@ -224,8 +220,7 @@ struct MySearchableContext SearchableContext _ctx; MySearchableContext(IThreadingService &writeService, std::shared_ptr<BucketDBOwner> bucketDB, - IBucketDBHandlerInitializer & bucketDBHandlerInitializer, - ICommitable & commitable); + IBucketDBHandlerInitializer & bucketDBHandlerInitializer); ~MySearchableContext(); const MyMetricsWireService &getWireService() const { return _fastUpdCtx.getWireService(); @@ -238,13 +233,11 @@ struct MySearchableContext MySearchableContext::MySearchableContext(IThreadingService &writeService, std::shared_ptr<BucketDBOwner> bucketDB, - IBucketDBHandlerInitializer & bucketDBHandlerInitializer, - ICommitable & commitable) - : _fastUpdCtx(writeService, bucketDB, bucketDBHandlerInitializer, commitable), + IBucketDBHandlerInitializer & bucketDBHandlerInitializer) + : _fastUpdCtx(writeService, bucketDB, bucketDBHandlerInitializer), _queryLimiter(), _clock(), _ctx(_fastUpdCtx._ctx, _queryLimiter, - _clock, dynamic_cast<vespalib::SyncableThreadExecutor &>(writeService.shared()), - commitable) + _clock, dynamic_cast<vespalib::SyncableThreadExecutor &>(writeService.shared())) {} MySearchableContext::~MySearchableContext() = default; @@ -267,12 +260,12 @@ struct Committer : public ICommitable { size_t _commitAndWaitCount; Committer() : _commitCount(0), _commitAndWaitCount(0) { } void commit() override { _commitCount++; } - void commitAndWait() override { _commitAndWaitCount++; } - void commitAndWait(IPendingLidTracker &, uint32_t ) override { - commitAndWait(); + void commitAndWait(ILidCommitState & ) override { _commitAndWaitCount++; } + void commitAndWait(ILidCommitState & tracker, uint32_t ) override { + commitAndWait(tracker); } - void commitAndWait(IPendingLidTracker &, const std::vector<uint32_t> & ) override { - commitAndWait(); + void commitAndWait(ILidCommitState & tracker, const std::vector<uint32_t> & ) override { + commitAndWait(tracker); } }; @@ -314,7 +307,6 @@ struct FixtureBase typename Traits::Config _cfg; std::shared_ptr<BucketDBOwner> _bucketDB; BucketDBHandler _bucketDBHandler; - Committer _committer; typename Traits::Context _ctx; typename Traits::Schema _baseSchema; MyConfigSnapshot::UP _snapshot; @@ -327,7 +319,7 @@ struct FixtureBase _cfg(), _bucketDB(std::make_shared<BucketDBOwner>()), _bucketDBHandler(*_bucketDB), - _ctx(_writeService, _bucketDB, _bucketDBHandler, _committer), + _ctx(_writeService, _bucketDB, _bucketDBHandler), _baseSchema(), _snapshot(new MyConfigSnapshot(_baseSchema, Traits::ConfigDir::dir())), _baseDir(BASE_DIR + "/" + SUB_NAME, BASE_DIR), diff --git a/searchcore/src/tests/proton/documentdb/feedhandler/feedhandler_test.cpp b/searchcore/src/tests/proton/documentdb/feedhandler/feedhandler_test.cpp index 4a01d7ae3e8..18b3a5c5d8e 100644 --- a/searchcore/src/tests/proton/documentdb/feedhandler/feedhandler_test.cpp +++ b/searchcore/src/tests/proton/documentdb/feedhandler/feedhandler_test.cpp @@ -23,7 +23,6 @@ #include <vespa/searchcore/proton/server/i_feed_handler_owner.h> #include <vespa/searchcore/proton/server/ireplayconfig.h> #include <vespa/searchcore/proton/test/dummy_feed_view.h> -#include <vespa/searchlib/common/idestructorcallback.h> #include <vespa/searchlib/index/docbuilder.h> #include <vespa/searchlib/index/dummyfileheadercontext.h> #include <vespa/searchlib/transactionlog/translogserver.h> diff --git a/searchcore/src/tests/proton/documentdb/maintenancecontroller/maintenancecontroller_test.cpp b/searchcore/src/tests/proton/documentdb/maintenancecontroller/maintenancecontroller_test.cpp index daae29dabdc..814e7ddeab9 100644 --- a/searchcore/src/tests/proton/documentdb/maintenancecontroller/maintenancecontroller_test.cpp +++ b/searchcore/src/tests/proton/documentdb/maintenancecontroller/maintenancecontroller_test.cpp @@ -386,12 +386,12 @@ public: void syncSubDBs(); void commit() override { } - void commitAndWait() override { } - void commitAndWait(IPendingLidTracker &, uint32_t ) override { - commitAndWait(); + void commitAndWait(ILidCommitState & ) override { } + void commitAndWait(ILidCommitState & tracker, uint32_t ) override { + commitAndWait(tracker); } - void commitAndWait(IPendingLidTracker &, const std::vector<uint32_t> & ) override { - commitAndWait(); + void commitAndWait(ILidCommitState & tracker, const std::vector<uint32_t> & ) override { + commitAndWait(tracker); } void performSyncSubDBs(); void notifyClusterStateChanged(); diff --git a/searchcore/src/tests/proton/server/feedstates_test.cpp b/searchcore/src/tests/proton/server/feedstates_test.cpp index fd1e24c1f17..15083975824 100644 --- a/searchcore/src/tests/proton/server/feedstates_test.cpp +++ b/searchcore/src/tests/proton/server/feedstates_test.cpp @@ -1,7 +1,6 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. // Unit tests for feedstates. - #include <vespa/document/base/documentid.h> #include <vespa/document/base/testdocrepo.h> #include <vespa/document/bucket/bucketid.h> @@ -102,11 +101,10 @@ struct RemoveOperationContext RemoveOperationContext::RemoveOperationContext(search::SerialNum serial) : doc_id("id:ns:doctypename::bar"), op(BucketFactory::getBucketId(doc_id), Timestamp(10), doc_id), - str(), packet() + str(), packet(std::make_unique<Packet>(0xf000)) { op.serialize(str); ConstBufferRef buf(str.data(), str.wp()); - packet = std::make_unique<Packet>(); packet->add(Packet::Entry(serial, FeedOperation::REMOVE, buf)); } RemoveOperationContext::~RemoveOperationContext() = default; diff --git a/searchcore/src/tests/proton/server/visibility_handler/visibility_handler_test.cpp b/searchcore/src/tests/proton/server/visibility_handler/visibility_handler_test.cpp index 56d82ed8695..1d69b7cec3c 100644 --- a/searchcore/src/tests/proton/server/visibility_handler/visibility_handler_test.cpp +++ b/searchcore/src/tests/proton/server/visibility_handler/visibility_handler_test.cpp @@ -40,7 +40,7 @@ class MyFeedView : public DummyFeedView uint32_t _forceCommitCount; SerialNum _committedSerialNum; public: - proton::PendingLidTracker _tracker; + std::unique_ptr<proton::PendingLidTrackerBase> _tracker; MyFeedView() @@ -48,11 +48,20 @@ public: _committedSerialNum(0u) {} + void setTracker(vespalib::duration visibilityDelay) { + if (visibilityDelay == vespalib::duration::zero()) { + _tracker = std::make_unique<proton::PendingLidTracker>(); + } else { + _tracker = std::make_unique<proton::TwoPhasePendingLidTracker>(); + } + } + void forceCommit(SerialNum serialNum) override { EXPECT_TRUE(serialNum >= _committedSerialNum); _committedSerialNum = serialNum; ++_forceCommitCount; + _tracker->produceSnapshot(); } uint32_t getForceCommitCount() const { return _forceCommitCount; } @@ -85,25 +94,22 @@ public: void checkCommitPostCondition(uint32_t expForceCommitCount, SerialNum expCommittedSerialNum, - uint32_t expMasterExecuteCnt, - uint32_t expAttributeFieldWriterSyncCnt) + uint32_t expMasterExecuteCnt) { EXPECT_EQUAL(expForceCommitCount, _feedViewReal->getForceCommitCount()); EXPECT_EQUAL(expCommittedSerialNum, _feedViewReal->getCommittedSerialNum()); EXPECT_EQUAL(expMasterExecuteCnt, _writeService.masterObserver().getExecuteCnt()); - EXPECT_EQUAL(expAttributeFieldWriterSyncCnt, - _writeService.attributeFieldWriterObserver().getSyncCnt()); } void testCommit(vespalib::duration visibilityDelay, bool internal, uint32_t expForceCommitCount, SerialNum expCommittedSerialNum, uint32_t expMasterExecuteCnt, - uint32_t expAttributeFieldWriterSyncCnt, SerialNum currSerialNum = 10u) { + _feedViewReal->setTracker(visibilityDelay); _getSerialNum.setSerialNum(currSerialNum); _visibilityHandler.setVisibilityDelay(visibilityDelay); if (internal) { @@ -116,8 +122,16 @@ public: _writeService.master().sync(); checkCommitPostCondition(expForceCommitCount, expCommittedSerialNum, - expMasterExecuteCnt, - expAttributeFieldWriterSyncCnt); + expMasterExecuteCnt); + } + + proton::PendingLidTracker::Token + createToken(proton::PendingLidTrackerBase & tracker, SerialNum serialNum, uint32_t lid) { + if (serialNum == 0) { + return proton::PendingLidTracker::Token(); + } else { + return tracker.produce(lid);; + } } void @@ -125,16 +139,16 @@ public: uint32_t expForceCommitCount, SerialNum expCommittedSerialNum, uint32_t expMasterExecuteCnt, - uint32_t expAttributeFieldWriterSyncCnt, SerialNum currSerialNum = 10u) { + _feedViewReal->setTracker(visibilityDelay); _getSerialNum.setSerialNum(currSerialNum); _visibilityHandler.setVisibilityDelay(visibilityDelay); constexpr uint32_t MY_LID=13; - if (currSerialNum != 0) { - _feedViewReal->_tracker.produce(MY_LID); + proton::PendingLidTrackerBase * lidTracker = _feedViewReal->_tracker.get(); + { + proton::PendingLidTracker::Token token = createToken(*lidTracker, currSerialNum, MY_LID); } - proton::PendingLidTracker * lidTracker = & _feedViewReal->_tracker; if (internal) { VisibilityHandler *visibilityHandler = &_visibilityHandler; auto task = makeLambdaTask([=]() { visibilityHandler->commitAndWait(*lidTracker, MY_LID); }); @@ -145,8 +159,7 @@ public: } checkCommitPostCondition(expForceCommitCount, expCommittedSerialNum, - expMasterExecuteCnt, - expAttributeFieldWriterSyncCnt); + expMasterExecuteCnt); } }; @@ -154,62 +167,62 @@ public: TEST_F("Check external commit with zero visibility delay", Fixture) { - f.testCommit(0s, false, 0u, 0u, 0u, 0u); + f.testCommit(0s, false, 0u, 0u, 0u); } TEST_F("Check external commit with nonzero visibility delay", Fixture) { - f.testCommit(1s, false, 1u, 10u, 1u, 0u); + f.testCommit(1s, false, 1u, 10u, 1u); } TEST_F("Check external commit with nonzero visibility delay and no new feed operation", Fixture) { - f.testCommit(1s, false, 1u, 0u, 1u, 0u, 0u); + f.testCommit(1s, false, 1u, 0u, 1u, 0u); } TEST_F("Check internal commit with zero visibility delay", Fixture) { - f.testCommit(0s, true, 0u, 0u, 1u, 0u); + f.testCommit(0s, true, 0u, 0u, 1u); } TEST_F("Check internal commit with nonzero visibility delay", Fixture) { - f.testCommit(1s, true, 1u, 10u, 1u, 0u); + f.testCommit(1s, true, 1u, 10u, 1u); } TEST_F("Check internal commit with nonzero visibility delay and no new feed operation", Fixture) { - f.testCommit(1s, true, 1u, 0u, 1u, 0u, 0u); + f.testCommit(1s, true, 1u, 0u, 1u, 0u); } TEST_F("Check external commitAndWait with zero visibility delay", Fixture) { - f.testCommitAndWait(0s, false, 0u, 0u, 0u, 1u); + f.testCommitAndWait(0s, false, 0u, 0u, 0u); } TEST_F("Check external commitAndWait with nonzero visibility delay", Fixture) { - f.testCommitAndWait(1s, false, 1u, 10u, 1u, 1u); + f.testCommitAndWait(1s, false, 1u, 10u, 1u); } TEST_F("Check external commitAndWait with nonzero visibility delay and no new feed operation", Fixture) { - f.testCommitAndWait(1s, false, 0u, 0u, 0u, 1u, 0u); + f.testCommitAndWait(1s, false, 0u, 0u, 0u, 0u); } TEST_F("Check internal commitAndWait with zero visibility delay", Fixture) { - f.testCommitAndWait(0s, true, 0u, 0u, 1u, 1u); + f.testCommitAndWait(0s, true, 0u, 0u, 1u); } TEST_F("Check internal commitAndWait with nonzero visibility delay", Fixture) { - f.testCommitAndWait(1s, true, 1u, 10u, 1u, 1u); + f.testCommitAndWait(1s, true, 1u, 10u, 1u); } TEST_F("Check internal commitAndWait with nonzero visibility delay and no new feed operation", Fixture) { - f.testCommitAndWait(1s, true, 0u, 0u, 1u, 1u, 0u); + f.testCommitAndWait(1s, true, 0u, 0u, 1u, 0u); } TEST_MAIN() { TEST_RUN_ALL(); } diff --git a/searchcore/src/tests/proton/summaryengine/summaryengine.cpp b/searchcore/src/tests/proton/summaryengine/summaryengine.cpp index 7cdd8d767c6..7e5e3527b1d 100644 --- a/searchcore/src/tests/proton/summaryengine/summaryengine.cpp +++ b/searchcore/src/tests/proton/summaryengine/summaryengine.cpp @@ -6,6 +6,7 @@ #include <vespa/searchlib/util/rawbuf.h> #include <vespa/searchlib/util/slime_output_raw_buf_adapter.h> #include <vespa/vespalib/data/databuffer.h> +#include <vespa/vespalib/data/simple_buffer.h> #include <vespa/vespalib/util/compressor.h> #include <vespa/searchsummary/docsummary/docsumwriter.h> #include <vespa/metrics/metricset.h> |