summaryrefslogtreecommitdiffstats
path: root/searchcore/src/tests/proton/documentdb/feedview
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@broadpark.no>2018-10-31 20:48:43 +0100
committerTor Egge <Tor.Egge@broadpark.no>2019-01-03 12:45:42 +0100
commit80ce0cea721f2fd56abdb050de64ef1f6e3a13a0 (patch)
tree58a28eef41a9adc03bddd312d4764da2dfad2594 /searchcore/src/tests/proton/documentdb/feedview
parenta856cd4230d62f28894b3adca51eb8b3511253a8 (diff)
Compact lid space on source selector.
Diffstat (limited to 'searchcore/src/tests/proton/documentdb/feedview')
-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)