summaryrefslogtreecommitdiffstats
path: root/searchcore/src/tests/proton/documentdb/feedview/feedview_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'searchcore/src/tests/proton/documentdb/feedview/feedview_test.cpp')
-rw-r--r--searchcore/src/tests/proton/documentdb/feedview/feedview_test.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/searchcore/src/tests/proton/documentdb/feedview/feedview_test.cpp b/searchcore/src/tests/proton/documentdb/feedview/feedview_test.cpp
index c11bea14863..0f9df1fc594 100644
--- a/searchcore/src/tests/proton/documentdb/feedview/feedview_test.cpp
+++ b/searchcore/src/tests/proton/documentdb/feedview/feedview_test.cpp
@@ -140,12 +140,14 @@ struct MyIndexWriter : public test::MockIndexWriter
MyLidVector _removes;
int _heartBeatCount;
uint32_t _commitCount;
+ uint32_t _wantedLidLimit;
MyTracer &_tracer;
MyIndexWriter(MyTracer &tracer)
: test::MockIndexWriter(IIndexManager::SP(new test::MockIndexManager())),
_removes(),
_heartBeatCount(0),
_commitCount(0),
+ _wantedLidLimit(0),
_tracer(tracer)
{}
virtual void put(SerialNum serialNum, const document::Document &doc,
@@ -164,6 +166,9 @@ struct MyIndexWriter : public test::MockIndexWriter
_tracer.traceCommit(indexAdapterTypeName, serialNum);
}
virtual void heartBeat(SerialNum) override { ++_heartBeatCount; }
+ void compactLidSpace(SerialNum, uint32_t lidLimit) override {
+ _wantedLidLimit = lidLimit;
+ }
};
struct MyGidToLidChangeHandler : public MockGidToLidChangeHandler
@@ -1144,7 +1149,7 @@ TEST_F("require that compactLidSpace() propagates to document meta store and doc
f.compactLidSpaceAndWait(2);
// performIndexForceCommit in index thread, then completion callback
// in master thread.
- EXPECT_TRUE(assertThreadObserver(7, 4, 3, f.writeServiceObserver()));
+ EXPECT_TRUE(assertThreadObserver(7, 5, 3, f.writeServiceObserver()));
EXPECT_EQUAL(2u, f.metaStoreObserver()._compactLidSpaceLidLimit);
EXPECT_EQUAL(2u, f.getDocumentStore()._compactLidSpaceLidLimit);
EXPECT_EQUAL(1u, f.metaStoreObserver()._holdUnblockShrinkLidSpaceCnt);
@@ -1162,7 +1167,7 @@ TEST_F("require that compactLidSpace() doesn't propagate to "
op.setSerialNum(0);
f.runInMaster([&] () { f.fv.handleCompactLidSpace(op); });
// Delayed holdUnblockShrinkLidSpace() in index thread, then master thread
- EXPECT_TRUE(assertThreadObserver(6, 3, 3, f.writeServiceObserver()));
+ EXPECT_TRUE(assertThreadObserver(6, 4, 3, f.writeServiceObserver()));
EXPECT_EQUAL(0u, f.metaStoreObserver()._compactLidSpaceLidLimit);
EXPECT_EQUAL(0u, f.getDocumentStore()._compactLidSpaceLidLimit);
EXPECT_EQUAL(0u, f.metaStoreObserver()._holdUnblockShrinkLidSpaceCnt);
@@ -1176,6 +1181,13 @@ TEST_F("require that compactLidSpace() propagates to attributeadapter",
EXPECT_EQUAL(2u, f.maw._wantedLidLimit);
}
+TEST_F("require that compactLidSpace() propagates to index writer",
+ SearchableFeedViewFixture)
+{
+ f.populateBeforeCompactLidSpace();
+ f.compactLidSpaceAndWait(2);
+ EXPECT_EQUAL(2u, f.miw._wantedLidLimit);
+}
TEST_F("require that commit is called if visibility delay is 0",
SearchableFeedViewFixture)