Package org.elasticsearch.index.engine
Class EngineTestCase
java.lang.Object
org.junit.Assert
org.apache.lucene.util.LuceneTestCase
org.elasticsearch.test.ESTestCase
org.elasticsearch.index.engine.EngineTestCase
public abstract class EngineTestCase extends ESTestCase
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
EngineTestCase.IndexWriterFactory
static class
EngineTestCase.PrimaryTermSupplier
Nested classes/interfaces inherited from class org.elasticsearch.test.ESTestCase
ESTestCase.GeohashGenerator, ESTestCase.TestAnalysis
Nested classes/interfaces inherited from class org.apache.lucene.util.LuceneTestCase
org.apache.lucene.util.LuceneTestCase.AwaitsFix, org.apache.lucene.util.LuceneTestCase.BadApple, org.apache.lucene.util.LuceneTestCase.Monster, org.apache.lucene.util.LuceneTestCase.Nightly, org.apache.lucene.util.LuceneTestCase.Slow, org.apache.lucene.util.LuceneTestCase.SuppressCodecs, org.apache.lucene.util.LuceneTestCase.SuppressFileSystems, org.apache.lucene.util.LuceneTestCase.SuppressFsync, org.apache.lucene.util.LuceneTestCase.SuppressReproduceLine, org.apache.lucene.util.LuceneTestCase.SuppressSysoutChecks, org.apache.lucene.util.LuceneTestCase.SuppressTempFileChecks, org.apache.lucene.util.LuceneTestCase.ThrowingRunnable, org.apache.lucene.util.LuceneTestCase.Weekly
-
Field Summary
Fields Modifier and Type Field Description protected org.elasticsearch.cluster.routing.AllocationId
allocationId
protected static org.elasticsearch.common.bytes.BytesReference
B_1
protected static org.elasticsearch.common.bytes.BytesReference
B_2
protected static org.elasticsearch.common.bytes.BytesReference
B_3
protected java.lang.String
codecName
protected org.elasticsearch.index.IndexSettings
defaultSettings
protected org.elasticsearch.index.engine.InternalEngine
engine
protected static org.elasticsearch.index.IndexSettings
INDEX_SETTINGS
protected EngineTestCase.PrimaryTermSupplier
primaryTerm
protected java.nio.file.Path
primaryTranslogDir
protected org.elasticsearch.index.engine.InternalEngine
replicaEngine
protected java.nio.file.Path
replicaTranslogDir
protected org.elasticsearch.index.shard.ShardId
shardId
protected static org.elasticsearch.common.bytes.BytesArray
SOURCE
protected org.elasticsearch.index.store.Store
store
protected org.elasticsearch.index.store.Store
storeReplica
protected org.elasticsearch.threadpool.ThreadPool
threadPool
protected TranslogHandler
translogHandler
Fields inherited from class org.elasticsearch.test.ESTestCase
checkIndexFailures, DEFAULT_TEST_WORKER_ID, failureAndSuccessEvents, FIPS_SYSPROP, JAVA_TIMEZONE_IDS, JAVA_ZONE_IDS, JODA_TIMEZONE_IDS, logger, TEST_WORKER_SYS_PROPERTY, TEST_WORKER_VM_ID
Fields inherited from class org.apache.lucene.util.LuceneTestCase
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 Summary
Constructors Constructor Description EngineTestCase()
-
Method Summary
Modifier and Type Method Description static org.elasticsearch.index.engine.Engine.Result
applyOperation(org.elasticsearch.index.engine.Engine engine, org.elasticsearch.index.engine.Engine.Operation operation)
static void
applyOperations(org.elasticsearch.index.engine.Engine engine, java.util.List<org.elasticsearch.index.engine.Engine.Operation> operations)
static void
assertAtMostOneLuceneDocumentPerSequenceNumber(org.elasticsearch.index.engine.Engine engine)
static void
assertAtMostOneLuceneDocumentPerSequenceNumber(org.elasticsearch.index.IndexSettings indexSettings, org.apache.lucene.index.DirectoryReader reader)
static void
assertConsistentHistoryBetweenTranslogAndLuceneIndex(org.elasticsearch.index.engine.Engine engine, org.elasticsearch.index.mapper.MapperService mapper)
Asserts the provided engine has a consistent document history between translog and Lucene index.static void
assertMaxSeqNoInCommitUserData(org.elasticsearch.index.engine.Engine engine)
Asserts that the max_seq_no stored in the commit's user_data is never smaller than seq_no of any document in the commit.static void
assertOpsOnReplica(java.util.List<org.elasticsearch.index.engine.Engine.Operation> ops, org.elasticsearch.index.engine.InternalEngine replicaEngine, boolean shuffleOps, org.apache.logging.log4j.Logger logger)
protected static void
assertVisibleCount(org.elasticsearch.index.engine.Engine engine, int numDocs)
protected static void
assertVisibleCount(org.elasticsearch.index.engine.Engine engine, int numDocs, boolean refresh)
protected static void
assertVisibleCount(org.elasticsearch.index.engine.InternalEngine engine, int numDocs)
protected static void
assertVisibleCount(org.elasticsearch.index.engine.InternalEngine engine, int numDocs, boolean refresh)
protected static org.elasticsearch.common.bytes.BytesArray
bytesArray(java.lang.String string)
static void
concurrentlyApplyOps(java.util.List<org.elasticsearch.index.engine.Engine.Operation> ops, org.elasticsearch.index.engine.InternalEngine engine)
protected org.elasticsearch.index.engine.EngineConfig
config(org.elasticsearch.index.engine.EngineConfig config, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.elasticsearch.index.engine.EngineConfig.TombstoneDocSupplier tombstoneDocSupplier)
org.elasticsearch.index.engine.EngineConfig
config(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, org.apache.lucene.search.ReferenceManager.RefreshListener refreshListener)
org.elasticsearch.index.engine.EngineConfig
config(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, org.apache.lucene.search.ReferenceManager.RefreshListener externalRefreshListener, org.apache.lucene.search.ReferenceManager.RefreshListener internalRefreshListener, org.apache.lucene.search.Sort indexSort, java.util.function.LongSupplier maybeGlobalCheckpointSupplier, java.util.function.Supplier<org.elasticsearch.index.seqno.RetentionLeases> maybeRetentionLeasesSupplier, org.elasticsearch.indices.breaker.CircuitBreakerService breakerService)
org.elasticsearch.index.engine.EngineConfig
config(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, org.apache.lucene.search.ReferenceManager.RefreshListener externalRefreshListener, org.apache.lucene.search.ReferenceManager.RefreshListener internalRefreshListener, org.apache.lucene.search.Sort indexSort, java.util.function.LongSupplier maybeGlobalCheckpointSupplier, org.elasticsearch.indices.breaker.CircuitBreakerService breakerService)
org.elasticsearch.index.engine.EngineConfig
config(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, org.apache.lucene.search.ReferenceManager.RefreshListener refreshListener, org.apache.lucene.search.Sort indexSort, java.util.function.LongSupplier globalCheckpointSupplier)
org.elasticsearch.index.engine.EngineConfig
config(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, org.apache.lucene.search.ReferenceManager.RefreshListener refreshListener, org.apache.lucene.search.Sort indexSort, java.util.function.LongSupplier globalCheckpointSupplier, java.util.function.Supplier<org.elasticsearch.index.seqno.RetentionLeases> retentionLeasesSupplier)
org.elasticsearch.index.engine.EngineConfig
copy(org.elasticsearch.index.engine.EngineConfig config, java.util.function.LongSupplier globalCheckpointSupplier)
org.elasticsearch.index.engine.EngineConfig
copy(org.elasticsearch.index.engine.EngineConfig config, org.apache.lucene.analysis.Analyzer analyzer)
org.elasticsearch.index.engine.EngineConfig
copy(org.elasticsearch.index.engine.EngineConfig config, org.apache.lucene.index.MergePolicy mergePolicy)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(org.elasticsearch.index.engine.EngineConfig config)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(EngineTestCase.IndexWriterFactory indexWriterFactory, java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, java.util.function.ToLongBiFunction<org.elasticsearch.index.engine.Engine,org.elasticsearch.index.engine.Engine.Operation> seqNoForOperation, org.elasticsearch.index.engine.EngineConfig config)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, EngineTestCase.IndexWriterFactory indexWriterFactory)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, EngineTestCase.IndexWriterFactory indexWriterFactory, java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, java.util.function.LongSupplier globalCheckpointSupplier)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, EngineTestCase.IndexWriterFactory indexWriterFactory, java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, java.util.function.LongSupplier globalCheckpointSupplier, java.util.function.ToLongBiFunction<org.elasticsearch.index.engine.Engine,org.elasticsearch.index.engine.Engine.Operation> seqNoForOperation)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, EngineTestCase.IndexWriterFactory indexWriterFactory, java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, java.util.function.ToLongBiFunction<org.elasticsearch.index.engine.Engine,org.elasticsearch.index.engine.Engine.Operation> seqNoForOperation, org.apache.lucene.search.Sort indexSort, java.util.function.LongSupplier globalCheckpointSupplier)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, java.util.function.ToLongBiFunction<org.elasticsearch.index.engine.Engine,org.elasticsearch.index.engine.Engine.Operation> seqNoForOperation)
protected org.elasticsearch.index.engine.InternalEngine
createEngine(org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, java.util.function.LongSupplier globalCheckpointSupplier)
static org.elasticsearch.index.engine.InternalEngine
createInternalEngine(EngineTestCase.IndexWriterFactory indexWriterFactory, java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, java.util.function.ToLongBiFunction<org.elasticsearch.index.engine.Engine,org.elasticsearch.index.engine.Engine.Operation> seqNoForOperation, org.elasticsearch.index.engine.EngineConfig config)
static org.elasticsearch.index.mapper.MapperService
createMapperService(java.lang.String type)
static org.elasticsearch.index.mapper.ParsedDocument
createParsedDoc(java.lang.String id, java.lang.String routing)
static org.elasticsearch.index.mapper.ParsedDocument
createParsedDoc(java.lang.String id, java.lang.String routing, boolean recoverySource)
protected org.elasticsearch.index.store.Store
createStore()
protected org.elasticsearch.index.store.Store
createStore(org.apache.lucene.store.Directory directory)
protected org.elasticsearch.index.store.Store
createStore(org.elasticsearch.index.IndexSettings indexSettings, org.apache.lucene.store.Directory directory)
protected org.elasticsearch.index.translog.Translog
createTranslog(java.nio.file.Path translogPath, java.util.function.LongSupplier primaryTermSupplier)
protected org.elasticsearch.index.translog.Translog
createTranslog(java.util.function.LongSupplier primaryTermSupplier)
protected TranslogHandler
createTranslogHandler(org.elasticsearch.index.IndexSettings indexSettings)
java.util.List<org.elasticsearch.index.engine.Engine.Operation>
generateHistoryOnReplica(int numOps, boolean allowGapInSeqNo, boolean allowDuplicate, boolean includeNestedDocs)
static long
generateNewSeqNo(org.elasticsearch.index.engine.Engine engine)
Generate a new sequence number and return it.static java.util.List<org.elasticsearch.index.engine.Engine.Operation>
generateSingleDocHistory(boolean forReplica, org.elasticsearch.index.VersionType versionType, long primaryTerm, int minOpCount, int maxOpCount, java.lang.String docId)
static java.util.List<DocIdSeqNoAndSource>
getDocIds(org.elasticsearch.index.engine.Engine engine, boolean refresh)
Gets a collection of tuples of docId, sequence number, and primary term of all live documents in the provided engine.static long
getNumVersionLookups(org.elasticsearch.index.engine.Engine engine)
Returns the number of times a version was looked up either from version map or from the index.static org.elasticsearch.index.translog.Translog
getTranslog(org.elasticsearch.index.engine.Engine engine)
Exposes a translog associated with the given engine for testing purpose.static boolean
hasSnapshottedCommits(org.elasticsearch.index.engine.Engine engine)
protected org.elasticsearch.index.engine.Engine.Index
indexForDoc(org.elasticsearch.index.mapper.ParsedDocument doc)
protected org.elasticsearch.common.settings.Settings
indexSettings()
static org.elasticsearch.common.CheckedBiFunction<java.lang.String,java.lang.Integer,org.elasticsearch.index.mapper.ParsedDocument,java.io.IOException>
nestedParsedDocFactory()
protected org.elasticsearch.index.engine.Engine.Get
newGet(boolean realtime, org.elasticsearch.index.mapper.ParsedDocument doc)
static org.apache.lucene.index.Term
newUid(java.lang.String id)
static org.apache.lucene.index.Term
newUid(org.elasticsearch.index.mapper.ParsedDocument doc)
protected org.elasticsearch.index.engine.EngineConfig
noOpConfig(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath)
protected org.elasticsearch.index.engine.EngineConfig
noOpConfig(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, java.util.function.LongSupplier globalCheckpointSupplier)
static java.util.List<org.elasticsearch.index.translog.Translog.Operation>
readAllOperationsInLucene(org.elasticsearch.index.engine.Engine engine, org.elasticsearch.index.mapper.MapperService mapper)
Reads all engine operations that have been processed by the engine from Lucene index.protected org.elasticsearch.index.engine.Engine.Delete
replicaDeleteForDoc(java.lang.String id, long version, long seqNo, long startTime)
protected org.elasticsearch.index.engine.Engine.Index
replicaIndexForDoc(org.elasticsearch.index.mapper.ParsedDocument doc, long version, long seqNo, boolean isRetry)
void
setUp()
void
tearDown()
protected static org.elasticsearch.index.mapper.ParseContext.Document
testDocument()
protected static org.elasticsearch.index.mapper.ParseContext.Document
testDocumentWithTextField()
protected static org.elasticsearch.index.mapper.ParseContext.Document
testDocumentWithTextField(java.lang.String value)
protected static org.elasticsearch.index.mapper.ParsedDocument
testParsedDocument(java.lang.String id, java.lang.String routing, org.elasticsearch.index.mapper.ParseContext.Document document, org.elasticsearch.common.bytes.BytesReference source, org.elasticsearch.index.mapper.Mapping mappingUpdate)
protected static org.elasticsearch.index.mapper.ParsedDocument
testParsedDocument(java.lang.String id, java.lang.String routing, org.elasticsearch.index.mapper.ParseContext.Document document, org.elasticsearch.common.bytes.BytesReference source, org.elasticsearch.index.mapper.Mapping mappingUpdate, boolean recoverySource)
static org.elasticsearch.index.engine.EngineConfig.TombstoneDocSupplier
tombstoneDocSupplier()
Creates a tombstone document that only includes uid, seq#, term and version fields.static void
waitForOpsToComplete(org.elasticsearch.index.engine.InternalEngine engine, long seqNo)
Waits for all operations up to the provided sequence number to complete in the given internal engine.Methods inherited from class org.elasticsearch.test.ESTestCase
after, afterIfFailed, afterIfSuccessful, allowedWarnings, assertArrayEquals, assertBusy, assertBusy, assertEquals, assertSettingDeprecationsAndWarnings, assertSettingDeprecationsAndWarnings, assertWarnings, assertWarnings, before, between, buildEnvSettings, buildNewFakeTransportAddress, checkStaticState, clearAdditionalRoles, copyInstance, copyNamedWriteable, copyNamedWriteable, copyWriteable, copyWriteable, createParser, createParser, createParser, createParser, createParser, createParser, createTestAnalysis, createTestAnalysis, createTestAnalysis, enableJodaDeprecationWarningsCheck, enableWarningsCheck, ensureAllSearchContextsReleased, ensureCheckIndexPassed, ensureSupportedLocale, frequently, generateRandomStringArray, generateRandomStringArray, getBasePort, getDataPath, getPortRange, getSuiteFailureMarker, getTestTransportPlugin, getTestTransportType, inFipsJvm, iterations, maybeSet, mockScript, newNodeEnvironment, newNodeEnvironment, randomAlphaOfLength, randomAlphaOfLengthBetween, randomArray, randomArray, randomBoolean, randomByte, randomByteArrayOfLength, randomDateTimeZone, randomDouble, randomDoubleBetween, randomFloat, randomFrom, randomFrom, randomFrom, randomFrom, randomFrom, randomGeohash, randomInt, randomInt, randomIntBetween, randomIp, randomList, randomList, randomLong, randomLongBetween, randomNonNegativeLong, randomPositiveTimeValue, randomRealisticUnicodeOfCodepointLength, randomRealisticUnicodeOfCodepointLengthBetween, randomRealisticUnicodeOfLength, randomRealisticUnicodeOfLengthBetween, randomShort, randomSubsetOf, randomSubsetOf, randomSubsetOf, randomTimeValue, randomTimeValue, randomTimeValue, randomTimeZone, randomUnicodeOfCodepointLength, randomUnicodeOfCodepointLengthBetween, randomUnicodeOfLength, randomUnicodeOfLengthBetween, randomUnique, randomValueOtherThan, randomValueOtherThanMany, randomZone, resetCheckIndexStatus, resetPortCounter, restoreContentType, restoreFileSystem, scaledRandomIntBetween, setContentType, setFileSystem, settings, shuffleMap, shuffleXContent, shuffleXContent, spinForAtLeastNMilliseconds, spinForAtLeastOneMillisecond, terminate, terminate, tmpPaths, toShuffledXContent, waitUntil, waitUntil, writableRegistry, xContentRegistry
Methods inherited from class org.apache.lucene.util.LuceneTestCase
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, 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, setupCPUCoreCount, setupSpins, slowFileExists, usually, usually, wrapReader
Methods inherited from class org.junit.Assert
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, assertTrue, assertTrue, fail, fail
-
Field Details
-
shardId
protected final org.elasticsearch.index.shard.ShardId shardId -
allocationId
protected final org.elasticsearch.cluster.routing.AllocationId allocationId -
INDEX_SETTINGS
protected static final org.elasticsearch.index.IndexSettings INDEX_SETTINGS -
threadPool
protected org.elasticsearch.threadpool.ThreadPool threadPool -
translogHandler
-
store
protected org.elasticsearch.index.store.Store store -
storeReplica
protected org.elasticsearch.index.store.Store storeReplica -
engine
protected org.elasticsearch.index.engine.InternalEngine engine -
replicaEngine
protected org.elasticsearch.index.engine.InternalEngine replicaEngine -
defaultSettings
protected org.elasticsearch.index.IndexSettings defaultSettings -
codecName
protected java.lang.String codecName -
primaryTranslogDir
protected java.nio.file.Path primaryTranslogDir -
replicaTranslogDir
protected java.nio.file.Path replicaTranslogDir -
primaryTerm
-
B_1
protected static final org.elasticsearch.common.bytes.BytesReference B_1 -
B_2
protected static final org.elasticsearch.common.bytes.BytesReference B_2 -
B_3
protected static final org.elasticsearch.common.bytes.BytesReference B_3 -
SOURCE
protected static final org.elasticsearch.common.bytes.BytesArray SOURCE
-
-
Constructor Details
-
EngineTestCase
public EngineTestCase()
-
-
Method Details
-
assertVisibleCount
protected static void assertVisibleCount(org.elasticsearch.index.engine.Engine engine, int numDocs) throws java.io.IOException- Throws:
java.io.IOException
-
assertVisibleCount
protected static void assertVisibleCount(org.elasticsearch.index.engine.Engine engine, int numDocs, boolean refresh) throws java.io.IOException- Throws:
java.io.IOException
-
indexSettings
protected org.elasticsearch.common.settings.Settings indexSettings() -
setUp
public void setUp() throws java.lang.Exception- Overrides:
setUp
in classorg.apache.lucene.util.LuceneTestCase
- Throws:
java.lang.Exception
-
copy
public org.elasticsearch.index.engine.EngineConfig copy(org.elasticsearch.index.engine.EngineConfig config, java.util.function.LongSupplier globalCheckpointSupplier) -
copy
public org.elasticsearch.index.engine.EngineConfig copy(org.elasticsearch.index.engine.EngineConfig config, org.apache.lucene.analysis.Analyzer analyzer) -
copy
public org.elasticsearch.index.engine.EngineConfig copy(org.elasticsearch.index.engine.EngineConfig config, org.apache.lucene.index.MergePolicy mergePolicy) -
tearDown
public void tearDown() throws java.lang.Exception- Overrides:
tearDown
in classorg.apache.lucene.util.LuceneTestCase
- Throws:
java.lang.Exception
-
testDocumentWithTextField
protected static org.elasticsearch.index.mapper.ParseContext.Document testDocumentWithTextField() -
testDocumentWithTextField
protected static org.elasticsearch.index.mapper.ParseContext.Document testDocumentWithTextField(java.lang.String value) -
testDocument
protected static org.elasticsearch.index.mapper.ParseContext.Document testDocument() -
createParsedDoc
public static org.elasticsearch.index.mapper.ParsedDocument createParsedDoc(java.lang.String id, java.lang.String routing) -
createParsedDoc
public static org.elasticsearch.index.mapper.ParsedDocument createParsedDoc(java.lang.String id, java.lang.String routing, boolean recoverySource) -
testParsedDocument
protected static org.elasticsearch.index.mapper.ParsedDocument testParsedDocument(java.lang.String id, java.lang.String routing, org.elasticsearch.index.mapper.ParseContext.Document document, org.elasticsearch.common.bytes.BytesReference source, org.elasticsearch.index.mapper.Mapping mappingUpdate) -
testParsedDocument
protected static org.elasticsearch.index.mapper.ParsedDocument testParsedDocument(java.lang.String id, java.lang.String routing, org.elasticsearch.index.mapper.ParseContext.Document document, org.elasticsearch.common.bytes.BytesReference source, org.elasticsearch.index.mapper.Mapping mappingUpdate, boolean recoverySource) -
nestedParsedDocFactory
public static org.elasticsearch.common.CheckedBiFunction<java.lang.String,java.lang.Integer,org.elasticsearch.index.mapper.ParsedDocument,java.io.IOException> nestedParsedDocFactory() throws java.lang.Exception- Throws:
java.lang.Exception
-
tombstoneDocSupplier
public static org.elasticsearch.index.engine.EngineConfig.TombstoneDocSupplier tombstoneDocSupplier()Creates a tombstone document that only includes uid, seq#, term and version fields. -
createStore
protected org.elasticsearch.index.store.Store createStore() throws java.io.IOException- Throws:
java.io.IOException
-
createStore
protected org.elasticsearch.index.store.Store createStore(org.apache.lucene.store.Directory directory) throws java.io.IOException- Throws:
java.io.IOException
-
createStore
protected org.elasticsearch.index.store.Store createStore(org.elasticsearch.index.IndexSettings indexSettings, org.apache.lucene.store.Directory directory) throws java.io.IOException- Throws:
java.io.IOException
-
createTranslog
protected org.elasticsearch.index.translog.Translog createTranslog(java.util.function.LongSupplier primaryTermSupplier) throws java.io.IOException- Throws:
java.io.IOException
-
createTranslog
protected org.elasticsearch.index.translog.Translog createTranslog(java.nio.file.Path translogPath, java.util.function.LongSupplier primaryTermSupplier) throws java.io.IOException- Throws:
java.io.IOException
-
createTranslogHandler
protected TranslogHandler createTranslogHandler(org.elasticsearch.index.IndexSettings indexSettings) -
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath) throws java.io.IOException- Throws:
java.io.IOException
-
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, java.util.function.LongSupplier globalCheckpointSupplier) throws java.io.IOException- Throws:
java.io.IOException
-
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier) throws java.io.IOException- Throws:
java.io.IOException
-
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, java.util.function.ToLongBiFunction<org.elasticsearch.index.engine.Engine,org.elasticsearch.index.engine.Engine.Operation> seqNoForOperation) throws java.io.IOException- Throws:
java.io.IOException
-
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy) throws java.io.IOException- Throws:
java.io.IOException
-
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, @Nullable EngineTestCase.IndexWriterFactory indexWriterFactory) throws java.io.IOException- Throws:
java.io.IOException
-
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, @Nullable EngineTestCase.IndexWriterFactory indexWriterFactory, @Nullable java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, @Nullable java.util.function.LongSupplier globalCheckpointSupplier) throws java.io.IOException- Throws:
java.io.IOException
-
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, @Nullable EngineTestCase.IndexWriterFactory indexWriterFactory, @Nullable java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, @Nullable java.util.function.LongSupplier globalCheckpointSupplier, @Nullable java.util.function.ToLongBiFunction<org.elasticsearch.index.engine.Engine,org.elasticsearch.index.engine.Engine.Operation> seqNoForOperation) throws java.io.IOException- Throws:
java.io.IOException
-
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, @Nullable EngineTestCase.IndexWriterFactory indexWriterFactory, @Nullable java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, @Nullable java.util.function.ToLongBiFunction<org.elasticsearch.index.engine.Engine,org.elasticsearch.index.engine.Engine.Operation> seqNoForOperation, @Nullable org.apache.lucene.search.Sort indexSort, @Nullable java.util.function.LongSupplier globalCheckpointSupplier) throws java.io.IOException- Throws:
java.io.IOException
-
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(org.elasticsearch.index.engine.EngineConfig config) throws java.io.IOException- Throws:
java.io.IOException
-
createEngine
protected org.elasticsearch.index.engine.InternalEngine createEngine(@Nullable EngineTestCase.IndexWriterFactory indexWriterFactory, @Nullable java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, @Nullable java.util.function.ToLongBiFunction<org.elasticsearch.index.engine.Engine,org.elasticsearch.index.engine.Engine.Operation> seqNoForOperation, org.elasticsearch.index.engine.EngineConfig config) throws java.io.IOException- Throws:
java.io.IOException
-
generateNewSeqNo
public static long generateNewSeqNo(org.elasticsearch.index.engine.Engine engine)Generate a new sequence number and return it. Only works on InternalEngines -
createInternalEngine
public static org.elasticsearch.index.engine.InternalEngine createInternalEngine(@Nullable EngineTestCase.IndexWriterFactory indexWriterFactory, @Nullable java.util.function.BiFunction<java.lang.Long,java.lang.Long,org.elasticsearch.index.seqno.LocalCheckpointTracker> localCheckpointTrackerSupplier, @Nullable java.util.function.ToLongBiFunction<org.elasticsearch.index.engine.Engine,org.elasticsearch.index.engine.Engine.Operation> seqNoForOperation, org.elasticsearch.index.engine.EngineConfig config) -
config
public org.elasticsearch.index.engine.EngineConfig config(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, org.apache.lucene.search.ReferenceManager.RefreshListener refreshListener) -
config
public org.elasticsearch.index.engine.EngineConfig config(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, org.apache.lucene.search.ReferenceManager.RefreshListener refreshListener, org.apache.lucene.search.Sort indexSort, java.util.function.LongSupplier globalCheckpointSupplier) -
config
public org.elasticsearch.index.engine.EngineConfig config(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, org.apache.lucene.search.ReferenceManager.RefreshListener refreshListener, org.apache.lucene.search.Sort indexSort, java.util.function.LongSupplier globalCheckpointSupplier, java.util.function.Supplier<org.elasticsearch.index.seqno.RetentionLeases> retentionLeasesSupplier) -
config
public org.elasticsearch.index.engine.EngineConfig config(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, org.apache.lucene.search.ReferenceManager.RefreshListener externalRefreshListener, org.apache.lucene.search.ReferenceManager.RefreshListener internalRefreshListener, org.apache.lucene.search.Sort indexSort, @Nullable java.util.function.LongSupplier maybeGlobalCheckpointSupplier, org.elasticsearch.indices.breaker.CircuitBreakerService breakerService) -
config
public org.elasticsearch.index.engine.EngineConfig config(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.apache.lucene.index.MergePolicy mergePolicy, org.apache.lucene.search.ReferenceManager.RefreshListener externalRefreshListener, org.apache.lucene.search.ReferenceManager.RefreshListener internalRefreshListener, org.apache.lucene.search.Sort indexSort, @Nullable java.util.function.LongSupplier maybeGlobalCheckpointSupplier, @Nullable java.util.function.Supplier<org.elasticsearch.index.seqno.RetentionLeases> maybeRetentionLeasesSupplier, org.elasticsearch.indices.breaker.CircuitBreakerService breakerService) -
config
protected org.elasticsearch.index.engine.EngineConfig config(org.elasticsearch.index.engine.EngineConfig config, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, org.elasticsearch.index.engine.EngineConfig.TombstoneDocSupplier tombstoneDocSupplier) -
noOpConfig
protected org.elasticsearch.index.engine.EngineConfig noOpConfig(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath) -
noOpConfig
protected org.elasticsearch.index.engine.EngineConfig noOpConfig(org.elasticsearch.index.IndexSettings indexSettings, org.elasticsearch.index.store.Store store, java.nio.file.Path translogPath, java.util.function.LongSupplier globalCheckpointSupplier) -
bytesArray
protected static org.elasticsearch.common.bytes.BytesArray bytesArray(java.lang.String string) -
newUid
public static org.apache.lucene.index.Term newUid(java.lang.String id) -
newUid
public static org.apache.lucene.index.Term newUid(org.elasticsearch.index.mapper.ParsedDocument doc) -
newGet
protected org.elasticsearch.index.engine.Engine.Get newGet(boolean realtime, org.elasticsearch.index.mapper.ParsedDocument doc) -
indexForDoc
protected org.elasticsearch.index.engine.Engine.Index indexForDoc(org.elasticsearch.index.mapper.ParsedDocument doc) -
replicaIndexForDoc
protected org.elasticsearch.index.engine.Engine.Index replicaIndexForDoc(org.elasticsearch.index.mapper.ParsedDocument doc, long version, long seqNo, boolean isRetry) -
replicaDeleteForDoc
protected org.elasticsearch.index.engine.Engine.Delete replicaDeleteForDoc(java.lang.String id, long version, long seqNo, long startTime) -
assertVisibleCount
protected static void assertVisibleCount(org.elasticsearch.index.engine.InternalEngine engine, int numDocs) throws java.io.IOException- Throws:
java.io.IOException
-
assertVisibleCount
protected static void assertVisibleCount(org.elasticsearch.index.engine.InternalEngine engine, int numDocs, boolean refresh) throws java.io.IOException- Throws:
java.io.IOException
-
generateSingleDocHistory
public static java.util.List<org.elasticsearch.index.engine.Engine.Operation> generateSingleDocHistory(boolean forReplica, org.elasticsearch.index.VersionType versionType, long primaryTerm, int minOpCount, int maxOpCount, java.lang.String docId) -
generateHistoryOnReplica
public java.util.List<org.elasticsearch.index.engine.Engine.Operation> generateHistoryOnReplica(int numOps, boolean allowGapInSeqNo, boolean allowDuplicate, boolean includeNestedDocs) throws java.lang.Exception- Throws:
java.lang.Exception
-
assertOpsOnReplica
public static void assertOpsOnReplica(java.util.List<org.elasticsearch.index.engine.Engine.Operation> ops, org.elasticsearch.index.engine.InternalEngine replicaEngine, boolean shuffleOps, org.apache.logging.log4j.Logger logger) throws java.io.IOException- Throws:
java.io.IOException
-
concurrentlyApplyOps
public static void concurrentlyApplyOps(java.util.List<org.elasticsearch.index.engine.Engine.Operation> ops, org.elasticsearch.index.engine.InternalEngine engine) throws java.lang.InterruptedException- Throws:
java.lang.InterruptedException
-
applyOperations
public static void applyOperations(org.elasticsearch.index.engine.Engine engine, java.util.List<org.elasticsearch.index.engine.Engine.Operation> operations) throws java.io.IOException- Throws:
java.io.IOException
-
applyOperation
public static org.elasticsearch.index.engine.Engine.Result applyOperation(org.elasticsearch.index.engine.Engine engine, org.elasticsearch.index.engine.Engine.Operation operation) throws java.io.IOException- Throws:
java.io.IOException
-
getDocIds
public static java.util.List<DocIdSeqNoAndSource> getDocIds(org.elasticsearch.index.engine.Engine engine, boolean refresh) throws java.io.IOExceptionGets a collection of tuples of docId, sequence number, and primary term of all live documents in the provided engine.- Throws:
java.io.IOException
-
readAllOperationsInLucene
public static java.util.List<org.elasticsearch.index.translog.Translog.Operation> readAllOperationsInLucene(org.elasticsearch.index.engine.Engine engine, org.elasticsearch.index.mapper.MapperService mapper) throws java.io.IOExceptionReads all engine operations that have been processed by the engine from Lucene index. The returned operations are sorted and de-duplicated, thus each sequence number will be have at most one operation.- Throws:
java.io.IOException
-
assertConsistentHistoryBetweenTranslogAndLuceneIndex
public static void assertConsistentHistoryBetweenTranslogAndLuceneIndex(org.elasticsearch.index.engine.Engine engine, org.elasticsearch.index.mapper.MapperService mapper) throws java.io.IOExceptionAsserts the provided engine has a consistent document history between translog and Lucene index.- Throws:
java.io.IOException
-
assertMaxSeqNoInCommitUserData
public static void assertMaxSeqNoInCommitUserData(org.elasticsearch.index.engine.Engine engine) throws java.lang.ExceptionAsserts that the max_seq_no stored in the commit's user_data is never smaller than seq_no of any document in the commit.- Throws:
java.lang.Exception
-
assertAtMostOneLuceneDocumentPerSequenceNumber
public static void assertAtMostOneLuceneDocumentPerSequenceNumber(org.elasticsearch.index.engine.Engine engine) throws java.io.IOException- Throws:
java.io.IOException
-
assertAtMostOneLuceneDocumentPerSequenceNumber
public static void assertAtMostOneLuceneDocumentPerSequenceNumber(org.elasticsearch.index.IndexSettings indexSettings, org.apache.lucene.index.DirectoryReader reader) throws java.io.IOException- Throws:
java.io.IOException
-
createMapperService
public static org.elasticsearch.index.mapper.MapperService createMapperService(java.lang.String type) throws java.io.IOException- Throws:
java.io.IOException
-
getTranslog
public static org.elasticsearch.index.translog.Translog getTranslog(org.elasticsearch.index.engine.Engine engine)Exposes a translog associated with the given engine for testing purpose. -
waitForOpsToComplete
public static void waitForOpsToComplete(org.elasticsearch.index.engine.InternalEngine engine, long seqNo) throws java.lang.InterruptedExceptionWaits for all operations up to the provided sequence number to complete in the given internal engine.- Parameters:
seqNo
- the sequence number that the checkpoint must advance to before this method returns- Throws:
java.lang.InterruptedException
- if the thread was interrupted while blocking on the condition
-
hasSnapshottedCommits
public static boolean hasSnapshottedCommits(org.elasticsearch.index.engine.Engine engine) -
getNumVersionLookups
public static long getNumVersionLookups(org.elasticsearch.index.engine.Engine engine)Returns the number of times a version was looked up either from version map or from the index.
-