public abstract class BaseMergePolicyTestCase extends LuceneTestCase
MergePolicy
.Modifier and Type | Class and Description |
---|---|
static class |
BaseMergePolicyTestCase.IOStats
Statistics about bytes written to storage.
|
static class |
BaseMergePolicyTestCase.MockMergeContext
Simple mock merge context for tests
|
LuceneTestCase.AwaitsFix, LuceneTestCase.BadApple, LuceneTestCase.Monster, LuceneTestCase.Nightly, LuceneTestCase.Slow, LuceneTestCase.SuppressCodecs, LuceneTestCase.SuppressFileSystems, LuceneTestCase.SuppressFsync, LuceneTestCase.SuppressReproduceLine, LuceneTestCase.SuppressSysoutChecks, LuceneTestCase.SuppressTempFileChecks, LuceneTestCase.ThrowingRunnable, LuceneTestCase.Weekly
assertsAreEnabled, classRules, DEFAULT_LINE_DOCS_FILE, INFOSTREAM, JENKINS_LARGE_LINE_DOCS_FILE, LEAVE_TEMPORARY, MAYBE_CACHE_POLICY, RANDOM_MULTIPLIER, ruleChain, suiteFailureMarker, SYSPROP_AWAITSFIX, SYSPROP_BADAPPLES, SYSPROP_FAILFAST, SYSPROP_MAXFAILURES, SYSPROP_MONSTER, SYSPROP_NIGHTLY, SYSPROP_SLOW, SYSPROP_WEEKLY, TEST_ASSERTS_ENABLED, TEST_AWAITSFIX, TEST_BADAPPLES, TEST_CODEC, TEST_DIRECTORY, TEST_DOCVALUESFORMAT, TEST_LINE_DOCS_FILE, TEST_MONSTER, TEST_NIGHTLY, TEST_POSTINGSFORMAT, TEST_SLOW, TEST_THROTTLING, TEST_WEEKLY, VERBOSE
Constructor and Description |
---|
BaseMergePolicyTestCase() |
Modifier and Type | Method and Description |
---|---|
protected static SegmentInfos |
applyDeletes(SegmentInfos infos,
int numDeletes)
Apply
numDeletes uniformly across all segments of infos . |
protected static SegmentInfos |
applyMerge(SegmentInfos infos,
MergePolicy.OneMerge merge,
String mergedSegmentName,
BaseMergePolicyTestCase.IOStats stats)
Apply a merge to a
SegmentInfos instance, accumulating the number
of written bytes into stats . |
protected abstract void |
assertMerge(MergePolicy policy,
MergePolicy.MergeSpecification merge)
Assert that the given merge matches expectations of the merge policy.
|
protected abstract void |
assertSegmentInfos(MergePolicy policy,
SegmentInfos infos)
Assert that the given segment infos match expectations of the merge
policy, assuming segments that have only been either flushed or merged with
this merge policy.
|
protected void |
doTestSimulateAppendOnly(MergePolicy mergePolicy,
int totalDocs,
int maxDocsPerFlush)
Simulate an append-only use-case, ie.
|
protected void |
doTestSimulateUpdates(MergePolicy mergePolicy,
int totalDocs,
int maxDocsPerFlush)
Simulate an update use-case where documents are uniformly updated across segments.
|
protected static SegmentCommitInfo |
makeSegmentCommitInfo(String name,
int maxDoc,
int numDeletedDocs,
double sizeMB,
String source)
Make a new
SegmentCommitInfo with the given maxDoc ,
numDeletedDocs and sizeInBytes , which are usually the
numbers that merge policies care about. |
protected abstract MergePolicy |
mergePolicy()
Create a new
MergePolicy instance. |
void |
testFindForcedDeletesMerges() |
void |
testForceMergeNotNeeded() |
void |
testSimulateAppendOnly()
Simulate an append-only use-case, ie.
|
void |
testSimulateUpdates()
Simulate an update use-case where documents are uniformly updated across segments.
|
addVirusChecker, assertDeletedDocsEquals, assertDocsAndPositionsEnumEquals, assertDocsEnumEquals, assertDocsSkippingEquals, assertDocValuesEquals, assertDocValuesEquals, assertFieldInfosEquals, assertNormsEquals, assertPointsEquals, assertPositionsSkippingEquals, assertReaderEquals, assertReaderStatisticsEquals, assertStoredFieldEquals, assertStoredFieldsEquals, assertTermsEnumEquals, assertTermsEquals, assertTermsEquals, assertTermsStatisticsEquals, assertTermStatsEquals, assertTermVectorsEquals, asSet, assumeFalse, assumeNoException, assumeTrue, assumeWorkingMMapOnWindows, atLeast, atLeast, callStackContains, callStackContains, callStackContainsAnyOf, closeAfterSuite, closeAfterTest, collate, createTempDir, createTempDir, createTempFile, createTempFile, dumpArray, dumpIterator, ensureSaneIWCOnNightly, expectThrows, expectThrows, expectThrows, expectThrowsAnyOf, expectThrowsAnyOf, getBaseTempDirForTestClass, getDataInputStream, getDataPath, getOnlyLeafReader, getTestClass, getTestName, hasWorkingMMapOnWindows, isTestThread, localeForLanguageTag, maybeChangeLiveIndexWriterConfig, maybeWrapReader, newAlcoholicMergePolicy, newAlcoholicMergePolicy, newDirectory, newDirectory, newDirectory, newDirectory, newDirectory, newField, newField, newFSDirectory, newFSDirectory, newIndexWriterConfig, newIndexWriterConfig, newIndexWriterConfig, newIOContext, newIOContext, newLogMergePolicy, newLogMergePolicy, newLogMergePolicy, newLogMergePolicy, newLogMergePolicy, newMaybeVirusCheckingDirectory, newMaybeVirusCheckingFSDirectory, newMergePolicy, newMergePolicy, newMergePolicy, newMockDirectory, newMockDirectory, newMockDirectory, newMockFSDirectory, newMockFSDirectory, newSearcher, newSearcher, newSearcher, newStringField, newStringField, newStringField, newStringField, newTextField, newTextField, newTieredMergePolicy, newTieredMergePolicy, overrideDefaultQueryCache, overrideTestDefaultQueryCache, random, randomLocale, randomTimeZone, rarely, rarely, replaceMaxFailureRule, resetDefaultQueryCache, restoreCPUCoreCount, restoreIndexWriterMaxDocs, restoreSpins, runWithRestrictedPermissions, setIndexWriterMaxDocs, setUp, setupCPUCoreCount, setupSpins, slowFileExists, tearDown, usually, usually, wrapReader
assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertArrayEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotEquals, assertNotEquals, assertNotEquals, assertNotEquals, assertNotEquals, assertNotEquals, assertNotEquals, assertNotEquals, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertThat, assertThat, assertThrows, assertThrows, assertTrue, assertTrue, fail, fail
protected abstract MergePolicy mergePolicy()
MergePolicy
instance.protected abstract void assertSegmentInfos(MergePolicy policy, SegmentInfos infos) throws IOException
IOException
protected abstract void assertMerge(MergePolicy policy, MergePolicy.MergeSpecification merge) throws IOException
IOException
public void testForceMergeNotNeeded() throws IOException
IOException
public void testFindForcedDeletesMerges() throws IOException
IOException
protected static SegmentCommitInfo makeSegmentCommitInfo(String name, int maxDoc, int numDeletedDocs, double sizeMB, String source)
SegmentCommitInfo
with the given maxDoc
,
numDeletedDocs
and sizeInBytes
, which are usually the
numbers that merge policies care about.protected static SegmentInfos applyMerge(SegmentInfos infos, MergePolicy.OneMerge merge, String mergedSegmentName, BaseMergePolicyTestCase.IOStats stats) throws IOException
SegmentInfos
instance, accumulating the number
of written bytes into stats
.IOException
protected static SegmentInfos applyDeletes(SegmentInfos infos, int numDeletes)
numDeletes
uniformly across all segments of infos
.public void testSimulateAppendOnly() throws IOException
IOException
protected void doTestSimulateAppendOnly(MergePolicy mergePolicy, int totalDocs, int maxDocsPerFlush) throws IOException
totalDocs
exist in the index in the end, and flushes contribute at most
maxDocsPerFlush
documents.IOException
public void testSimulateUpdates() throws IOException
IOException
protected void doTestSimulateUpdates(MergePolicy mergePolicy, int totalDocs, int maxDocsPerFlush) throws IOException
totalDocs
exist in the index in the end, and flushes contribute at most
maxDocsPerFlush
documents.IOException
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.