mirror of https://github.com/apache/lucene.git
use SMS when testing LogMP's strict invariants
git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1086629 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
5da11b6bff
commit
447b497c57
|
@ -131,7 +131,8 @@ public class TestIndexWriterMergePolicy extends LuceneTestCase {
|
||||||
|
|
||||||
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(
|
IndexWriter writer = new IndexWriter(dir, newIndexWriterConfig(
|
||||||
TEST_VERSION_CURRENT, new MockAnalyzer())
|
TEST_VERSION_CURRENT, new MockAnalyzer())
|
||||||
.setMaxBufferedDocs(101).setMergePolicy(new LogDocMergePolicy()));
|
.setMaxBufferedDocs(101).setMergePolicy(new LogDocMergePolicy())
|
||||||
|
.setMergeScheduler(new SerialMergeScheduler()));
|
||||||
|
|
||||||
// leftmost* segment has 1 doc
|
// leftmost* segment has 1 doc
|
||||||
// rightmost* segment has 100 docs
|
// rightmost* segment has 100 docs
|
||||||
|
@ -144,8 +145,8 @@ public class TestIndexWriterMergePolicy extends LuceneTestCase {
|
||||||
|
|
||||||
writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT,
|
writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT,
|
||||||
new MockAnalyzer()).setOpenMode(
|
new MockAnalyzer()).setOpenMode(
|
||||||
OpenMode.APPEND).setMaxBufferedDocs(101).setMergePolicy(
|
OpenMode.APPEND).setMaxBufferedDocs(101).setMergePolicy(new LogDocMergePolicy())
|
||||||
new LogDocMergePolicy()));
|
.setMergeScheduler(new SerialMergeScheduler()));
|
||||||
}
|
}
|
||||||
|
|
||||||
writer.close();
|
writer.close();
|
||||||
|
@ -153,7 +154,7 @@ public class TestIndexWriterMergePolicy extends LuceneTestCase {
|
||||||
ldmp.setMergeFactor(10);
|
ldmp.setMergeFactor(10);
|
||||||
writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT,
|
writer = new IndexWriter(dir, newIndexWriterConfig( TEST_VERSION_CURRENT,
|
||||||
new MockAnalyzer()).setOpenMode(
|
new MockAnalyzer()).setOpenMode(
|
||||||
OpenMode.APPEND).setMaxBufferedDocs(10).setMergePolicy(ldmp).setMergeScheduler(new ConcurrentMergeScheduler()));
|
OpenMode.APPEND).setMaxBufferedDocs(10).setMergePolicy(ldmp).setMergeScheduler(new SerialMergeScheduler()));
|
||||||
|
|
||||||
// merge policy only fixes segments on levels where merges
|
// merge policy only fixes segments on levels where merges
|
||||||
// have been triggered, so check invariants after all adds
|
// have been triggered, so check invariants after all adds
|
||||||
|
@ -236,13 +237,13 @@ public class TestIndexWriterMergePolicy extends LuceneTestCase {
|
||||||
int segmentCount = writer.getSegmentCount();
|
int segmentCount = writer.getSegmentCount();
|
||||||
for (int i = segmentCount - 1; i >= 0; i--) {
|
for (int i = segmentCount - 1; i >= 0; i--) {
|
||||||
int docCount = writer.getDocCount(i);
|
int docCount = writer.getDocCount(i);
|
||||||
assertTrue("docCount=" + docCount + " lowerBound=" + lowerBound + " i=" + i + " segmentCount=" + segmentCount + " index=" + writer.segString(), docCount > lowerBound);
|
assertTrue("docCount=" + docCount + " lowerBound=" + lowerBound + " upperBound=" + upperBound + " i=" + i + " segmentCount=" + segmentCount + " index=" + writer.segString() + " config=" + writer.getConfig(), docCount > lowerBound);
|
||||||
|
|
||||||
if (docCount <= upperBound) {
|
if (docCount <= upperBound) {
|
||||||
numSegments++;
|
numSegments++;
|
||||||
} else {
|
} else {
|
||||||
if (upperBound * mergeFactor <= maxMergeDocs) {
|
if (upperBound * mergeFactor <= maxMergeDocs) {
|
||||||
assertTrue("maxMergeDocs=" + maxMergeDocs + "; numSegments=" + numSegments + "; upperBound=" + upperBound + "; mergeFactor=" + mergeFactor + "; segs=" + writer.segString(), numSegments < mergeFactor);
|
assertTrue("maxMergeDocs=" + maxMergeDocs + "; numSegments=" + numSegments + "; upperBound=" + upperBound + "; mergeFactor=" + mergeFactor + "; segs=" + writer.segString() + " config=" + writer.getConfig(), numSegments < mergeFactor);
|
||||||
}
|
}
|
||||||
|
|
||||||
do {
|
do {
|
||||||
|
|
Loading…
Reference in New Issue