Package org.elasticsearch.snapshots
Class AbstractSnapshotIntegTestCase
java.lang.Object
org.junit.Assert
org.apache.lucene.util.LuceneTestCase
org.elasticsearch.test.ESTestCase
org.elasticsearch.test.ESIntegTestCase
org.elasticsearch.snapshots.AbstractSnapshotIntegTestCase
public abstract class AbstractSnapshotIntegTestCase extends ESIntegTestCase
-
Nested Class Summary
Nested classes/interfaces inherited from class org.elasticsearch.test.ESIntegTestCase
ESIntegTestCase.AssertActionNamePlugin, ESIntegTestCase.ClusterScope, ESIntegTestCase.NumShards, ESIntegTestCase.Scope, ESIntegTestCase.SuiteScopeTestCase, ESIntegTestCase.TestSeedPlugin, ESIntegTestCase.ThirdParty
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 static org.elasticsearch.common.settings.Settings
LARGE_SNAPSHOT_POOL_SETTINGS
Fields inherited from class org.elasticsearch.test.ESIntegTestCase
DEFAULT_MAX_NUM_SHARDS, DEFAULT_MIN_NUM_SHARDS, INDEX_TEST_SEED_SETTING, SUITE_CLUSTER_NODE_PREFIX, SYSPROP_THIRDPARTY, TEST_CLUSTER_NODE_PREFIX, TESTS_CLIENT_RATIO, TESTS_CLUSTER, TESTS_ENABLE_MOCK_MODULES
Fields inherited from class org.elasticsearch.test.ESTestCase
checkIndexFailures, DEFAULT_NAMED_WRITABLE_REGISTRY, DEFAULT_TEST_WORKER_ID, failureAndSuccessEvents, FIPS_SYSPROP, JAVA_TIMEZONE_IDS, JAVA_ZONE_IDS, JODA_TIMEZONE_IDS, logger, MIN_PRIVATE_PORT, 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 AbstractSnapshotIntegTestCase()
-
Method Summary
Modifier and Type Method Description protected void
addBwCFailedSnapshot(java.lang.String repoName, java.lang.String snapshotName, java.util.Map<java.lang.String,java.lang.Object> metadata)
Adds a snapshot in stateSnapshotState.FAILED
to the given repository.void
assertConsistentHistoryInLuceneIndex()
protected void
assertDocCount(java.lang.String index, long count)
static void
assertFileCount(java.nio.file.Path dir, int expectedCount)
void
assertRepoConsistency()
protected org.elasticsearch.snapshots.SnapshotInfo
assertSuccessful(org.elasticsearch.action.ActionFuture<org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotResponse> future)
protected void
awaitClusterState(java.lang.String viaNode, java.util.function.Predicate<org.elasticsearch.cluster.ClusterState> statePredicate)
protected void
awaitClusterState(java.util.function.Predicate<org.elasticsearch.cluster.ClusterState> statePredicate)
protected void
awaitMasterFinishRepoOperations()
protected void
awaitNDeletionsInProgress(int count)
protected void
awaitNoMoreRunningOperations()
protected void
awaitNoMoreRunningOperations(java.lang.String viaNode)
protected void
awaitNumberOfSnapshotsInProgress(int count)
static void
blockAllDataNodes(java.lang.String repository)
static void
blockDataNode(java.lang.String repository, java.lang.String nodeName)
static void
blockMasterFromDeletingIndexNFile(java.lang.String repositoryName)
static void
blockMasterFromFinalizingSnapshotOnIndexFile(java.lang.String repositoryName)
static void
blockMasterFromFinalizingSnapshotOnSnapFile(java.lang.String repositoryName)
static void
blockMasterOnWriteIndexFile(java.lang.String repositoryName)
static void
blockNodeOnAnyFiles(java.lang.String repository, java.lang.String nodeName)
static java.lang.String
blockNodeWithIndex(java.lang.String repositoryName, java.lang.String indexName)
protected org.elasticsearch.snapshots.SnapshotInfo
createFullSnapshot(java.lang.String repoName, java.lang.String snapshotName)
protected void
createIndexWithContent(java.lang.String indexName)
protected void
createIndexWithContent(java.lang.String indexName, org.elasticsearch.common.settings.Settings indexSettings)
protected void
createIndexWithRandomDocs(java.lang.String indexName, int docCount)
protected java.util.List<java.lang.String>
createNSnapshots(java.lang.String repoName, int count)
protected void
createRepository(java.lang.String repoName, java.lang.String type)
protected void
createRepository(java.lang.String repoName, java.lang.String type, java.nio.file.Path location)
protected void
createRepository(java.lang.String repoName, java.lang.String type, org.elasticsearch.common.settings.Settings.Builder settings)
protected void
createRepositoryNoVerify(java.lang.String repoName, java.lang.String type)
protected org.elasticsearch.snapshots.SnapshotInfo
createSnapshot(java.lang.String repositoryName, java.lang.String snapshot, java.util.List<java.lang.String> indices)
protected void
disableRepoConsistencyCheck(java.lang.String reason)
static void
failReadsAllDataNodes(java.lang.String repository)
static void
forEachFileRecursively(java.nio.file.Path path, org.elasticsearch.common.CheckedBiConsumer<java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes,java.io.IOException> forEach)
protected long
getCountForIndex(java.lang.String indexName)
static long
getFailureCount(java.lang.String repository)
protected org.elasticsearch.repositories.RepositoryData
getRepositoryData(java.lang.String repository)
protected org.elasticsearch.repositories.RepositoryData
getRepositoryData(java.lang.String repoName, org.elasticsearch.Version version)
protected org.elasticsearch.repositories.RepositoryData
getRepositoryData(org.elasticsearch.repositories.Repository repository)
protected static <T extends org.elasticsearch.repositories.Repository>
TgetRepositoryOnMaster(java.lang.String repositoryName)
protected static <T extends org.elasticsearch.repositories.Repository>
TgetRepositoryOnNode(java.lang.String repositoryName, java.lang.String nodeName)
protected org.elasticsearch.snapshots.SnapshotInfo
getSnapshot(java.lang.String repository, java.lang.String snapshot)
protected void
indexRandomDocs(java.lang.String index, int numdocs)
protected static org.elasticsearch.common.settings.Settings.Builder
indexSettingsNoReplicas(int shards)
protected java.lang.String
initWithSnapshotVersion(java.lang.String repoName, java.nio.file.Path repoPath, org.elasticsearch.Version version)
Workaround to simulate BwC situation: taking a snapshot without indices here so that we don't create any new version shard generations (the existence of which would short-circuit checks for the repo containing old version snapshots)protected void
maybeInitWithOldSnapshotVersion(java.lang.String repoName, java.nio.file.Path repoPath)
Randomly write an empty snapshot of an older version to an empty repository to simulate an older repository metadata format.protected java.util.Collection<java.lang.Class<? extends org.elasticsearch.plugins.Plugin>>
nodePlugins()
Returns a collection of plugins that should be loaded on each node.protected org.elasticsearch.common.settings.Settings
nodeSettings(int nodeOrdinal, org.elasticsearch.common.settings.Settings otherSettings)
This method is used to obtain settings for theN
th node in the cluster.static int
numberOfFiles(java.nio.file.Path dir)
protected org.elasticsearch.common.settings.Settings.Builder
randomRepositorySettings()
protected static org.elasticsearch.threadpool.ThreadPoolStats.Stats
snapshotThreadPoolStats(java.lang.String node)
protected org.elasticsearch.action.ActionFuture<org.elasticsearch.action.support.master.AcknowledgedResponse>
startDeleteSnapshot(java.lang.String repoName, java.lang.String snapshotName)
protected org.elasticsearch.action.ActionFuture<org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotResponse>
startFullSnapshot(java.lang.String repoName, java.lang.String snapshotName)
protected org.elasticsearch.action.ActionFuture<org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotResponse>
startFullSnapshot(java.lang.String repoName, java.lang.String snapshotName, boolean partial)
protected org.elasticsearch.action.ActionFuture<org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotResponse>
startFullSnapshotBlockedOnDataNode(java.lang.String snapshotName, java.lang.String repoName, java.lang.String dataNode)
protected void
stopNode(java.lang.String node)
static void
unblockAllDataNodes(java.lang.String repository)
void
unblockNode(java.lang.String repository, java.lang.String node)
protected void
updateClusterState(java.util.function.Function<org.elasticsearch.cluster.ClusterState,org.elasticsearch.cluster.ClusterState> updater)
void
verifyNoLeakedListeners()
void
waitForBlock(java.lang.String node, java.lang.String repository)
static void
waitForBlockOnAnyDataNode(java.lang.String repository)
Methods inherited from class org.elasticsearch.test.ESIntegTestCase
addMockGeoShapeFieldMapper, addMockHttpTransport, addMockInternalEngine, addMockTransportService, admin, afterClass, allowNodes, assertAllShardsOnNodes, assertResultsAndLogOnFailure, assertSortedSegments, beforeClass, beforeIndexDeletion, beforeInternal, buildTestCluster, cleanUpCluster, clearScroll, client, client, clients, cluster, clusterAdmin, clusterService, createIndex, createIndex, createRestClient, createRestClient, createRestClient, dataNodeClient, disableAllocation, disableIndexBlock, enableAllocation, enableIndexBlock, enableWarningsCheck, ensureClusterSizeConsistency, ensureClusterStateCanBeReadByNodeTool, ensureClusterStateConsistency, ensureFullyConnectedCluster, ensureGreen, ensureGreen, ensureSearchable, ensureStableCluster, ensureStableCluster, ensureStableCluster, ensureStableCluster, ensureYellow, ensureYellowAndNoInitializingShards, excludeTemplates, externalClusterClientSettings, flush, flushAndRefresh, forbidPrivateIndexSettings, forceMerge, forceSingleDataPath, getClientWrapper, getMockPlugins, getNumShards, getPerTestTransportClientRatio, getRestClient, ignoreExternalCluster, index, index, index, index, index, indexExists, indexRandom, indexRandom, indexRandom, indexRandom, indexRandom, indexSettings, inFipsJvm, internalCluster, isInternalCluster, isolateMasterDisruption, logClusterState, maximumNumberOfReplicas, maximumNumberOfShards, minimumNumberOfReplicas, minimumNumberOfShards, nodeConfigPath, numberOfReplicas, numberOfShards, prepareCreate, prepareCreate, prepareCreate, prepareCreate, randomRepoPath, randomRepoPath, refresh, refreshClusterInfo, resolveCustomDataPath, resolveIndex, restartNodesOnBrokenClusterState, routingKeyForShard, setClusterReadOnly, setDisruptionScheme, setRandomIndexSettings, setupSuiteScopeCluster, setupTestCluster, transportClientPlugins, transportClientSettings, waitForDocs, waitForRelocation, waitForRelocation, waitNoPendingTasksOnAll, xContentRegistry
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, createDefaultIndexAnalyzers, createParser, createParser, createParser, createParser, createParser, createParser, createTestAnalysis, createTestAnalysis, createTestAnalysis, enableJodaDeprecationWarningsCheck, ensureAllSearchContextsReleased, ensureCheckIndexPassed, ensureSupportedLocale, filteredWarnings, frequently, generateRandomStringArray, generateRandomStringArray, getBasePort, getDataPath, getPortRange, getSuiteFailureMarker, getTestTransportPlugin, getTestTransportType, iterations, maybeSet, mockScript, newEnvironment, newEnvironment, newNodeEnvironment, newNodeEnvironment, randomAlphaOfLength, randomAlphaOfLengthBetween, randomArray, randomArray, randomBigInteger, randomBoolean, randomByte, randomByteArrayOfLength, randomDateFormatterPattern, randomDateTimeZone, randomDouble, randomDoubleBetween, randomFloat, randomFrom, randomFrom, randomFrom, randomFrom, randomFrom, randomGeohash, randomInt, randomInt, randomIntBetween, randomIp, randomList, randomList, randomLong, randomLongBetween, randomNonNegativeByte, randomNonNegativeLong, randomPositiveTimeValue, randomRealisticUnicodeOfCodepointLength, randomRealisticUnicodeOfCodepointLengthBetween, randomRealisticUnicodeOfLength, randomRealisticUnicodeOfLengthBetween, randomShort, randomSubsetOf, randomSubsetOf, randomSubsetOf, randomTimeValue, randomTimeValue, randomTimeValue, randomTimeZone, randomUnicodeOfCodepointLength, randomUnicodeOfCodepointLengthBetween, randomUnicodeOfLength, randomUnicodeOfLengthBetween, randomUnique, randomValueOtherThan, randomValueOtherThanMany, randomZone, removeHeaderWarningAppender, resetCheckIndexStatus, resetPortCounter, restoreContentType, restoreFileSystem, scaledRandomIntBetween, setContentType, setFileSystem, setHeaderWarningAppender, settings, shuffleMap, shuffleXContent, shuffleXContent, spinForAtLeastNMilliseconds, spinForAtLeastOneMillisecond, terminate, terminate, tmpPaths, toShuffledXContent, waitUntil, waitUntil, writableRegistry
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, setUp, setupCPUCoreCount, setupSpins, slowFileExists, tearDown, 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
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
LARGE_SNAPSHOT_POOL_SETTINGS
protected static final org.elasticsearch.common.settings.Settings LARGE_SNAPSHOT_POOL_SETTINGS
-
-
Constructor Details
-
AbstractSnapshotIntegTestCase
public AbstractSnapshotIntegTestCase()
-
-
Method Details
-
nodeSettings
protected org.elasticsearch.common.settings.Settings nodeSettings(int nodeOrdinal, org.elasticsearch.common.settings.Settings otherSettings)Description copied from class:ESIntegTestCase
This method is used to obtain settings for theN
th node in the cluster. Nodes in this cluster are associated with an ordinal number such that nodes can be started with specific configurations. This method might be called multiple times with the same ordinal and is expected to return the same value for each invocation. In other words subclasses must ensure this method is idempotent.- Overrides:
nodeSettings
in classESIntegTestCase
-
nodePlugins
protected java.util.Collection<java.lang.Class<? extends org.elasticsearch.plugins.Plugin>> nodePlugins()Description copied from class:ESIntegTestCase
Returns a collection of plugins that should be loaded on each node.- Overrides:
nodePlugins
in classESIntegTestCase
-
assertConsistentHistoryInLuceneIndex
public void assertConsistentHistoryInLuceneIndex() throws java.lang.Exception- Throws:
java.lang.Exception
-
verifyNoLeakedListeners
public void verifyNoLeakedListeners() throws java.lang.Exception- Throws:
java.lang.Exception
-
assertRepoConsistency
public void assertRepoConsistency() -
disableRepoConsistencyCheck
protected void disableRepoConsistencyCheck(java.lang.String reason) -
getRepositoryData
protected org.elasticsearch.repositories.RepositoryData getRepositoryData(java.lang.String repoName, org.elasticsearch.Version version) -
getRepositoryData
protected org.elasticsearch.repositories.RepositoryData getRepositoryData(java.lang.String repository) -
getRepositoryData
protected org.elasticsearch.repositories.RepositoryData getRepositoryData(org.elasticsearch.repositories.Repository repository) -
getFailureCount
public static long getFailureCount(java.lang.String repository) -
assertFileCount
public static void assertFileCount(java.nio.file.Path dir, int expectedCount) throws java.io.IOException- Throws:
java.io.IOException
-
numberOfFiles
public static int numberOfFiles(java.nio.file.Path dir) throws java.io.IOException- Throws:
java.io.IOException
-
stopNode
protected void stopNode(java.lang.String node) throws java.io.IOException- Throws:
java.io.IOException
-
waitForBlock
public void waitForBlock(java.lang.String node, java.lang.String repository) throws java.lang.Exception- Throws:
java.lang.Exception
-
blockMasterFromFinalizingSnapshotOnIndexFile
public static void blockMasterFromFinalizingSnapshotOnIndexFile(java.lang.String repositoryName) -
blockMasterOnWriteIndexFile
public static void blockMasterOnWriteIndexFile(java.lang.String repositoryName) -
blockMasterFromDeletingIndexNFile
public static void blockMasterFromDeletingIndexNFile(java.lang.String repositoryName) -
blockMasterFromFinalizingSnapshotOnSnapFile
public static void blockMasterFromFinalizingSnapshotOnSnapFile(java.lang.String repositoryName) -
getRepositoryOnMaster
protected static <T extends org.elasticsearch.repositories.Repository> T getRepositoryOnMaster(java.lang.String repositoryName) -
getRepositoryOnNode
protected static <T extends org.elasticsearch.repositories.Repository> T getRepositoryOnNode(java.lang.String repositoryName, java.lang.String nodeName) -
blockNodeWithIndex
public static java.lang.String blockNodeWithIndex(java.lang.String repositoryName, java.lang.String indexName) -
blockNodeOnAnyFiles
public static void blockNodeOnAnyFiles(java.lang.String repository, java.lang.String nodeName) -
blockDataNode
public static void blockDataNode(java.lang.String repository, java.lang.String nodeName) -
blockAllDataNodes
public static void blockAllDataNodes(java.lang.String repository) -
unblockAllDataNodes
public static void unblockAllDataNodes(java.lang.String repository) -
failReadsAllDataNodes
public static void failReadsAllDataNodes(java.lang.String repository) -
waitForBlockOnAnyDataNode
public static void waitForBlockOnAnyDataNode(java.lang.String repository) throws java.lang.InterruptedException- Throws:
java.lang.InterruptedException
-
unblockNode
public void unblockNode(java.lang.String repository, java.lang.String node) -
createRepository
protected void createRepository(java.lang.String repoName, java.lang.String type, org.elasticsearch.common.settings.Settings.Builder settings) -
createRepository
protected void createRepository(java.lang.String repoName, java.lang.String type, java.nio.file.Path location) -
createRepository
protected void createRepository(java.lang.String repoName, java.lang.String type) -
createRepositoryNoVerify
protected void createRepositoryNoVerify(java.lang.String repoName, java.lang.String type) -
randomRepositorySettings
protected org.elasticsearch.common.settings.Settings.Builder randomRepositorySettings() -
indexSettingsNoReplicas
protected static org.elasticsearch.common.settings.Settings.Builder indexSettingsNoReplicas(int shards) -
maybeInitWithOldSnapshotVersion
protected void maybeInitWithOldSnapshotVersion(java.lang.String repoName, java.nio.file.Path repoPath) throws java.io.IOExceptionRandomly write an empty snapshot of an older version to an empty repository to simulate an older repository metadata format.- Throws:
java.io.IOException
-
initWithSnapshotVersion
protected java.lang.String initWithSnapshotVersion(java.lang.String repoName, java.nio.file.Path repoPath, org.elasticsearch.Version version) throws java.io.IOExceptionWorkaround to simulate BwC situation: taking a snapshot without indices here so that we don't create any new version shard generations (the existence of which would short-circuit checks for the repo containing old version snapshots)- Throws:
java.io.IOException
-
createFullSnapshot
protected org.elasticsearch.snapshots.SnapshotInfo createFullSnapshot(java.lang.String repoName, java.lang.String snapshotName) -
createSnapshot
protected org.elasticsearch.snapshots.SnapshotInfo createSnapshot(java.lang.String repositoryName, java.lang.String snapshot, java.util.List<java.lang.String> indices) -
createIndexWithRandomDocs
protected void createIndexWithRandomDocs(java.lang.String indexName, int docCount) throws java.lang.InterruptedException- Throws:
java.lang.InterruptedException
-
indexRandomDocs
protected void indexRandomDocs(java.lang.String index, int numdocs) throws java.lang.InterruptedException- Throws:
java.lang.InterruptedException
-
getCountForIndex
protected long getCountForIndex(java.lang.String indexName) -
assertDocCount
protected void assertDocCount(java.lang.String index, long count) -
addBwCFailedSnapshot
protected void addBwCFailedSnapshot(java.lang.String repoName, java.lang.String snapshotName, java.util.Map<java.lang.String,java.lang.Object> metadata) throws java.lang.ExceptionAdds a snapshot in stateSnapshotState.FAILED
to the given repository.- Parameters:
repoName
- repository to add snapshot tosnapshotName
- name for the new failed snapshotmetadata
- snapshot metadata to write (as returned bySnapshotInfo.userMetadata()
)- Throws:
java.lang.Exception
-
awaitNDeletionsInProgress
protected void awaitNDeletionsInProgress(int count) throws java.lang.Exception- Throws:
java.lang.Exception
-
awaitNoMoreRunningOperations
protected void awaitNoMoreRunningOperations() throws java.lang.Exception- Throws:
java.lang.Exception
-
awaitNoMoreRunningOperations
protected void awaitNoMoreRunningOperations(java.lang.String viaNode) throws java.lang.Exception- Throws:
java.lang.Exception
-
awaitClusterState
protected void awaitClusterState(java.util.function.Predicate<org.elasticsearch.cluster.ClusterState> statePredicate) throws java.lang.Exception- Throws:
java.lang.Exception
-
awaitClusterState
protected void awaitClusterState(java.lang.String viaNode, java.util.function.Predicate<org.elasticsearch.cluster.ClusterState> statePredicate) throws java.lang.Exception- Throws:
java.lang.Exception
-
startFullSnapshotBlockedOnDataNode
protected org.elasticsearch.action.ActionFuture<org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotResponse> startFullSnapshotBlockedOnDataNode(java.lang.String snapshotName, java.lang.String repoName, java.lang.String dataNode) throws java.lang.Exception- Throws:
java.lang.Exception
-
startFullSnapshot
protected org.elasticsearch.action.ActionFuture<org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotResponse> startFullSnapshot(java.lang.String repoName, java.lang.String snapshotName) -
startFullSnapshot
protected org.elasticsearch.action.ActionFuture<org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotResponse> startFullSnapshot(java.lang.String repoName, java.lang.String snapshotName, boolean partial) -
awaitNumberOfSnapshotsInProgress
protected void awaitNumberOfSnapshotsInProgress(int count) throws java.lang.Exception- Throws:
java.lang.Exception
-
assertSuccessful
protected org.elasticsearch.snapshots.SnapshotInfo assertSuccessful(org.elasticsearch.action.ActionFuture<org.elasticsearch.action.admin.cluster.snapshots.create.CreateSnapshotResponse> future) throws java.lang.Exception- Throws:
java.lang.Exception
-
createIndexWithContent
protected void createIndexWithContent(java.lang.String indexName) -
createIndexWithContent
protected void createIndexWithContent(java.lang.String indexName, org.elasticsearch.common.settings.Settings indexSettings) -
startDeleteSnapshot
protected org.elasticsearch.action.ActionFuture<org.elasticsearch.action.support.master.AcknowledgedResponse> startDeleteSnapshot(java.lang.String repoName, java.lang.String snapshotName) -
updateClusterState
protected void updateClusterState(java.util.function.Function<org.elasticsearch.cluster.ClusterState,org.elasticsearch.cluster.ClusterState> updater) throws java.lang.Exception- Throws:
java.lang.Exception
-
getSnapshot
protected org.elasticsearch.snapshots.SnapshotInfo getSnapshot(java.lang.String repository, java.lang.String snapshot) -
snapshotThreadPoolStats
protected static org.elasticsearch.threadpool.ThreadPoolStats.Stats snapshotThreadPoolStats(java.lang.String node) -
awaitMasterFinishRepoOperations
protected void awaitMasterFinishRepoOperations() throws java.lang.Exception- Throws:
java.lang.Exception
-
createNSnapshots
protected java.util.List<java.lang.String> createNSnapshots(java.lang.String repoName, int count) throws java.lang.Exception- Throws:
java.lang.Exception
-
forEachFileRecursively
public static void forEachFileRecursively(java.nio.file.Path path, org.elasticsearch.common.CheckedBiConsumer<java.nio.file.Path,java.nio.file.attribute.BasicFileAttributes,java.io.IOException> forEach) throws java.io.IOException- Throws:
java.io.IOException
-