Class OpenSearchIntegTestCase
- Direct Known Subclasses:
OpenSearchBlobStoreRepositoryIntegTestCase,ParameterizedDynamicSettingsOpenSearchIntegTestCase,ParameterizedStaticSettingsOpenSearchIntegTestCase,RemoteStoreBaseIntegTestCase
OpenSearchIntegTestCase is an abstract base class to run integration
tests against a JVM private OpenSearch Cluster. The test class supports 2 different
cluster scopes.
OpenSearchIntegTestCase.Scope.TEST- uses a new cluster for each individual test method.OpenSearchIntegTestCase.Scope.SUITE- uses a cluster shared across all test methods in the same suite
The most common test scope is OpenSearchIntegTestCase.Scope.SUITE which shares a cluster per test suite.
If the test methods need specific node settings or change persistent and/or transient cluster settings OpenSearchIntegTestCase.Scope.TEST
should be used. To configure a scope for the test cluster the OpenSearchIntegTestCase.ClusterScope annotation
should be used, here is an example:
@NodeScope(scope=Scope.TEST) public class SomeIT extends OpenSearchIntegTestCase {
public void testMethod() {}
}
If no OpenSearchIntegTestCase.ClusterScope annotation is present on an integration test the default scope is OpenSearchIntegTestCase.Scope.SUITE
A test cluster creates a set of nodes in the background before the test starts. The number of nodes in the cluster is
determined at random and can change across tests. The OpenSearchIntegTestCase.ClusterScope allows configuring the initial number of nodes
that are created before the tests start.
@NodeScope(scope=Scope.SUITE, numDataNodes=3)
public class SomeIT extends OpenSearchIntegTestCase {
public void testMethod() {}
}
Note, the OpenSearchIntegTestCase uses randomized settings on a cluster and index level. For instance
each test might use different directory implementation for each test or will return a random client to one of the
nodes in the cluster for each call to client(). Test failures might only be reproducible if the correct
system properties are passed to the test execution environment.
This class supports the following system properties (passed with -Dkey=value to the application)
- -D"tests.enable_mock_modules" - a boolean value to enable or disable mock modules. This is useful to test the system without asserting modules that to make sure they don't hide any bugs in production.
- - a random seed used to initialize the index random context.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classstatic @interfaceDefines a cluster scope for aOpenSearchIntegTestCasesubclass.protected static classstatic enumThe scope of a test cluster used together withOpenSearchIntegTestCase.ClusterScopeannotations onOpenSearchIntegTestCasesubclasses.static @interfaceIf a test is annotated withOpenSearchIntegTestCase.SuiteScopeTestCasethe checks and modifications that are applied to the used test cluster are only done after all tests of this class are executed.static final classstatic @interfaceAnnotation for third-party integration tests.Nested classes/interfaces inherited from class org.opensearch.test.OpenSearchTestCase
OpenSearchTestCase.AnnotatedFeatureFlagRule, OpenSearchTestCase.GeohashGenerator, OpenSearchTestCase.LockFeatureFlag, OpenSearchTestCase.TestAnalysisNested classes/interfaces inherited from class org.apache.lucene.tests.util.LuceneTestCase
org.apache.lucene.tests.util.LuceneTestCase.AwaitsFix, org.apache.lucene.tests.util.LuceneTestCase.Concurrency, org.apache.lucene.tests.util.LuceneTestCase.Monster, org.apache.lucene.tests.util.LuceneTestCase.Nightly, org.apache.lucene.tests.util.LuceneTestCase.SuppressCodecs, org.apache.lucene.tests.util.LuceneTestCase.SuppressFileSystems, org.apache.lucene.tests.util.LuceneTestCase.SuppressFsync, org.apache.lucene.tests.util.LuceneTestCase.SuppressReproduceLine, org.apache.lucene.tests.util.LuceneTestCase.SuppressSysoutChecks, org.apache.lucene.tests.util.LuceneTestCase.SuppressTempFileChecks, org.apache.lucene.tests.util.LuceneTestCase.ThrowingConsumer<T>, org.apache.lucene.tests.util.LuceneTestCase.ThrowingRunnable, org.apache.lucene.tests.util.LuceneTestCase.Weekly -
Field Summary
FieldsModifier and TypeFieldDescriptionThe lucene_defaultCodecis not added to the list as it internally maps to AssertingCodec.protected static final intDefault maximum number of shards for an indexprotected static final intDefault minimum number of shards for an indexstatic final org.opensearch.common.settings.Setting<Long> Key used to retrieve the index random seed from the index settings on a running node.protected static Booleanprotected static final Stringprotected static Booleanprotected static Booleanstatic final Stringnode names of the corresponding clusters will start with these prefixesstatic final StringProperty that controls whether ThirdParty Integration tests are run (not the default).static final Stringstatic org.opensearch.test.OpenSearchTestClusterRulestatic final StringKey used to eventually switch to using an external cluster and provide its transport addressesstatic final StringKey to provide the cluster namestatic final StringA boolean value to enable or disable mock modules.protected static BooleanFields inherited from class org.opensearch.test.OpenSearchTestCase
checkIndexFailures, DEFAULT_NAMED_WRITABLE_REGISTRY, DEFAULT_TEST_WORKER_ID, failureAndSuccessEvents, flagLockRule, JAVA_TIMEZONE_IDS, JAVA_ZONE_IDS, JODA_TIMEZONE_IDS, logger, TEST_WORKER_SYS_PROPERTY, TEST_WORKER_VM_IDFields inherited from class org.apache.lucene.tests.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_FAILFAST, SYSPROP_MAXFAILURES, SYSPROP_MONSTER, SYSPROP_NIGHTLY, SYSPROP_WEEKLY, TEST_ASSERTS_ENABLED, TEST_AWAITSFIX, TEST_CODEC, TEST_DIRECTORY, TEST_DOCVALUESFORMAT, TEST_LINE_DOCS_FILE, TEST_MONSTER, TEST_NIGHTLY, TEST_POSTINGSFORMAT, TEST_THROTTLING, TEST_WEEKLY, VERBOSE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Collection<org.opensearch.plugins.PluginInfo> Returns a collection of plugins that should be loaded on each node.protected booleanReturnstrueiff this test cluster should use a dummy geo_shape field mapperprotected booleanReturnstrueiff this test cluster should use a dummy http transportprotected booleanprotected booleanReturnstrueif this test cluster can use a mock internal engine.protected booleanReturnstrueif this test cluster should have tracing enabled with MockTelemetryPlugin Disabling this for now as the existing way of strict check do not support multiple nodes internal cluster.protected booleanIff this returns true mock transport implementations are used for the test runs.protected org.opensearch.transport.client.AdminClientadmin()Returns a random admin client.static voidvoidallowNodes(String index, int n) Restricts the given index to be allocated onnnodes using the allocation deciders.assertAllShardsOnNodes(String index, String... pattern) Asserts that all shards are allocated on nodes matching the given node pattern.voidassertResultsAndLogOnFailure(long expectedResults, org.opensearch.action.search.SearchResponse searchResponse) Ensures the result counts are as expected, and logs the results if differentvoidassertSortedSegments(String indexName, org.apache.lucene.search.Sort expectedIndexSort) Asserts that all segments are sorted with the providedSort.static voidprotected voidprotected org.opensearch.common.settings.SettingsbuildRemotePublicationNodeAttributes(String remoteStateRepoName, String remoteStateRepoType, String routingTableRepoName, String routingTableRepoType) static org.opensearch.common.settings.SettingsbuildRemoteStateNodeAttributes(String stateRepoName, Path stateRepoPath, String stateRepoType) protected static org.opensearch.common.settings.SettingsbuildRemoteStoreNodeAttributes(String segmentRepoName, Path segmentRepoPath, String segmentRepoType, String translogRepoName, Path translogRepoPath, String translogRepoType, String routingTableRepoName, Path routingTableRepoPath, String routingTableRepoType, boolean withRateLimiterAttributes) static org.opensearch.common.settings.SettingsbuildRemoteStoreNodeAttributes(String segmentRepoName, Path segmentRepoPath, String translogRepoName, Path translogRepoPath, boolean withRateLimiterAttributes) static org.opensearch.common.settings.SettingsbuildRemoteStoreNodeAttributes(String segmentRepoName, Path segmentRepoPath, String translogRepoName, Path translogRepoPath, String remoteRoutingTableRepoName, Path remoteRoutingTableRepoPath, boolean withRateLimiterAttributes) protected TestClusterbuildTestCluster(OpenSearchIntegTestCase.Scope scope, long seed) voidclearScroll(String... scrollIds) Clears the given scroll Idsstatic org.opensearch.transport.client.Clientclient()static org.opensearch.transport.client.Clientstatic Iterable<org.opensearch.transport.client.Client> clients()static TestClustercluster()protected org.opensearch.transport.client.ClusterAdminClientReturns a random cluster admin client.org.opensearch.cluster.service.ClusterServicefinal voidcreateIndex(String... names) Creates one or more indices and asserts that the indices are acknowledged.final voidcreateIndex(String name, org.opensearch.cluster.metadata.Context context) creates an index with the given settingfinal voidcreateIndex(String name, org.opensearch.common.settings.Settings indexSettings) creates an index with the given settingfinal voidcreateIndex(String name, org.opensearch.common.settings.Settings indexSettings, String mapping) creates an index with the given setting and mappingprotected voidcreateRepository(String repoName, String type, org.opensearch.common.settings.Settings.Builder settings) protected voidcreateRepository(String repoName, String type, org.opensearch.common.settings.Settings.Builder settings, String timeout) static org.opensearch.transport.client.Clientprotected final voiddisableAllocation(String... indices) Syntactic sugar for disabling allocation forindicesstatic voiddisableIndexBlock(String index, String block) Disables an index block for the specified indexprotected final voidenableAllocation(String... indices) Syntactic sugar for enabling allocation forindicesstatic voidenableIndexBlock(String index, String block) Enables an index block for the specified indexprotected final booleanWhether or not we check after each test whether it has left warnings behind.protected voidprotected voidprotected voidVerifies that all nodes that have the same version of the cluster state as cluster-manager have same cluster stateprotected voidEnsures that all nodes in the cluster are connected to each other.org.opensearch.cluster.health.ClusterHealthStatusensureGreen(String... indices) Ensures the cluster has a green state via the cluster health API.org.opensearch.cluster.health.ClusterHealthStatusensureGreen(org.opensearch.common.unit.TimeValue timeout, boolean waitForNoRelocatingShards, String... indices) org.opensearch.cluster.health.ClusterHealthStatusensureGreen(org.opensearch.common.unit.TimeValue timeout, String... indices) Ensures the cluster has a green state via the cluster health API.org.opensearch.cluster.health.ClusterHealthStatusEnsures the cluster has a red state via the cluster health API.protected org.opensearch.cluster.health.ClusterHealthStatusensureSearchable(String... indices) Ensures the cluster is in a searchable state for the given indices.protected voidensureStableCluster(int nodeCount) protected voidensureStableCluster(int nodeCount, String viaNode) protected voidensureStableCluster(int nodeCount, org.opensearch.common.unit.TimeValue timeValue) protected voidensureStableCluster(int nodeCount, org.opensearch.common.unit.TimeValue timeValue, boolean local, String viaNode) org.opensearch.cluster.health.ClusterHealthStatusensureYellow(String... indices) Ensures the cluster has a yellow state via the cluster health API.org.opensearch.cluster.health.ClusterHealthStatusensureYellowAndNoInitializingShards(String... indices) Ensures the cluster has a yellow state via the cluster health API and ensures the that cluster has no initializing shards for the given indicesprotected org.opensearch.common.settings.Settingsprotected org.opensearch.common.settings.SettingsSetting all feature flag settings at base IT, which can be overridden later by individual IT classes.protected final org.opensearch.action.admin.indices.flush.FlushResponseFlush some or all indices in the cluster.protected final voidflushAndRefresh(String... indices) Flushes and refreshes all indices in the clusterprotected booleanprotected org.opensearch.action.admin.indices.forcemerge.ForceMergeResponseWaits for all relocations and force merge all indices in the cluster to 1 segment.protected org.opensearch.action.admin.indices.forcemerge.ForceMergeResponseforceMerge(int maxNumSegments) protected Function<org.opensearch.transport.client.Client, org.opensearch.transport.client.Client> Returns a function that allows to wrap / filter all clients that are exposed by the test cluster.protected org.opensearch.cluster.ClusterStateprotected org.opensearch.index.shard.IndexShardgetIndexShard(String node, org.opensearch.core.index.shard.ShardId shardId, String indexName) Fetch IndexShard by shardId, multiple shards per node allowed.protected org.opensearch.index.shard.IndexShardgetIndexShard(org.opensearch.cluster.routing.ShardRouting routing, String indexName) protected longgetLatestSegmentInfoVersion(org.opensearch.index.shard.IndexShard shard) Fetch latest segment info snapshot version of an index.protected Collection<Class<? extends org.opensearch.plugins.Plugin>> Return the mock plugins the cluster should useorg.opensearch.common.settings.Settingsprotected OpenSearchIntegTestCase.NumShardsgetNumShards(String index) protected static org.opensearch.client.RestClientReturns an instance ofRestClientpointing to the current test cluster.protected booleanprotected final org.opensearch.action.index.IndexResponseDeprecated.protected final org.opensearch.action.index.IndexResponseDeprecated.protected final org.opensearch.action.index.IndexResponseSyntactic sugar for:protected final org.opensearch.action.index.IndexResponseDeprecated.protected final org.opensearch.action.index.IndexResponseDeprecated.protected static booleanindexExists(String index) Returnstrueiff the given index exists otherwisefalsevoidindexRandom(boolean forceRefresh, boolean dummyDocuments, boolean maybeFlush, List<org.opensearch.action.index.IndexRequestBuilder> builders) Indexes the givenIndexRequestBuilderinstances randomly.voidindexRandom(boolean forceRefresh, boolean dummyDocuments, List<org.opensearch.action.index.IndexRequestBuilder> builders) Indexes the givenIndexRequestBuilderinstances randomly.voidindexRandom(boolean forceRefresh, boolean dummyDocuments, org.opensearch.action.index.IndexRequestBuilder... builders) voidindexRandom(boolean forceRefresh, List<org.opensearch.action.index.IndexRequestBuilder> builders) Indexes the givenIndexRequestBuilderinstances randomly.voidindexRandom(boolean forceRefresh, org.opensearch.action.index.IndexRequestBuilder... builders) Convenience method that forwards toindexRandom(boolean, List).protected voidindexRandomForMultipleSlices(String... indices) org.opensearch.common.settings.SettingsReturns a settings object used increateIndex(String...)andprepareCreate(String)and friends.static InternalTestClusterstatic booleanbooleanprotected static NetworkDisruptionCreates a disruption that isolates the current cluster-manager node from all other nodes in the cluster.protected booleanChecks if Segment Replication is enabled on Index.voidPrints the current cluster state as debug logging.voidmanageReplicaBalanceSetting(boolean apply) voidmanageReplicaSettingForDefaultReplica(boolean apply) protected intprotected intprotected intprotected intprotected PathnodeConfigPath(int nodeOrdinal) protected Collection<Class<? extends org.opensearch.plugins.Plugin>> Returns a collection of plugins that should be loaded on each node.protected org.opensearch.common.settings.SettingsnodeSettings(int nodeOrdinal) This method is used to obtain settings for theNth node in the cluster.protected intprotected intprotected voidFor tests with remote cluster state, it will reset the cluster and cluster state will be restored from remote.final org.opensearch.action.admin.indices.create.CreateIndexRequestBuilderprepareCreate(String index) Creates a newCreateIndexRequestBuilderwith the settings obtained fromindexSettings().final org.opensearch.action.admin.indices.create.CreateIndexRequestBuilderprepareCreate(String index, int numNodes) Creates a newCreateIndexRequestBuilderwith the settings obtained fromindexSettings().org.opensearch.action.admin.indices.create.CreateIndexRequestBuilderprepareCreate(String index, int numNodes, org.opensearch.common.settings.Settings.Builder settingsBuilder) Creates a newCreateIndexRequestBuilderwith the settings obtained fromindexSettings().org.opensearch.action.admin.indices.create.CreateIndexRequestBuilderprepareCreate(String index, org.opensearch.common.settings.Settings.Builder settingsBuilder) Creates a newCreateIndexRequestBuilderwith the settings obtained fromindexSettings(), augmented by the given builderprotected StringprimaryNodeName(String indexName) protected StringprimaryNodeName(String indexName, int shardId) static voidputRepository(org.opensearch.transport.client.ClusterAdminClient adminClient, String repoName, String type, boolean verify, org.opensearch.common.settings.Settings.Builder settings) static voidputRepository(org.opensearch.transport.client.ClusterAdminClient adminClient, String repoName, String type, String timeout, org.opensearch.common.settings.Settings.Builder settings) static voidputRepository(org.opensearch.transport.client.ClusterAdminClient adminClient, String repoName, String type, org.opensearch.common.settings.Settings.Builder settings) static voidputRepository(org.opensearch.transport.client.ClusterAdminClient adminClient, String repoName, String type, org.opensearch.common.settings.Settings.Builder settings, org.opensearch.core.action.ActionListener<org.opensearch.action.support.clustermanager.AcknowledgedResponse> listener) static org.opensearch.action.admin.cluster.repositories.put.PutRepositoryRequestBuilderputRepositoryRequestBuilder(org.opensearch.transport.client.ClusterAdminClient adminClient, String repoName, String type, boolean verify, org.opensearch.common.settings.Settings.Builder settings, String timeout, boolean finalSettings) static voidputRepositoryWithNoSettingOverrides(org.opensearch.transport.client.ClusterAdminClient adminClient, String repoName, String type, boolean verify, org.opensearch.common.settings.Settings.Builder settings) protected voidCreates a randomized index template.Returns path to a random directory that can be used to create a temporary file system repostatic PathrandomRepoPath(org.opensearch.common.settings.Settings settings) Returns path to a random directory that can be used to create a temporary file system repoprotected final org.opensearch.action.admin.indices.refresh.RefreshResponseWaits for relocations and refreshes all indices in the cluster.protected org.opensearch.action.admin.indices.refresh.RefreshResponserefreshAndWaitForReplication(String... indices) Refreshes the indices in the cluster and waits until active/started replica shards are caught up with primary shard only when Segment Replication is enabled.static org.opensearch.common.settings.SettingsremoteStoreClusterSettings(String name, Path path) static org.opensearch.common.settings.SettingsremoteStoreClusterSettings(String segmentRepoName, Path segmentRepoPath, String segmentRepoType, String translogRepoName, Path translogRepoPath, String translogRepoType) static org.opensearch.common.settings.SettingsremoteStoreClusterSettings(String segmentRepoName, Path segmentRepoPath, String segmentRepoType, String translogRepoName, Path translogRepoPath, String translogRepoType, String routingTableRepoName, Path routingTableRepoPath, String routingTableRepoType) static org.opensearch.common.settings.SettingsremoteStoreClusterSettings(String segmentRepoName, Path segmentRepoPath, String translogRepoName, Path translogRepoPath) static org.opensearch.common.settings.SettingsremoteStoreClusterSettings(String segmentRepoName, Path segmentRepoPath, String translogRepoName, Path translogRepoPath, String remoteRoutingTableRepoName, Path remoteRoutingTableRepoPath) protected StringreplicaNodeName(String indexName) static StringresolveCustomDataPath(String index) static org.opensearch.core.index.IndexresolveIndex(String index) static StringresolvePath(org.opensearch.repositories.IndexId indexId, String shardId) protected StringroutingKeyForShard(String index, int shard) Compute a routing key that will route documents to theshard-th shard of the provided index.static voidsetClusterReadOnly(boolean value) Sets or unsets the cluster read_only modevoidprotected org.opensearch.common.settings.Settings.BuildersetRandomIndexSettings(Random random, org.opensearch.common.settings.Settings.Builder builder) protected voidThis method is executed iff the test is annotated withOpenSearchIntegTestCase.SuiteScopeTestCasebefore the first test of this class is executed.protected booleanRepresent if it needs to trigger remote state restore or not.protected voidupdateRepository(String repoName, String type, org.opensearch.common.settings.Settings.Builder settings) protected booleanUsed for selecting random replication strategy, either DOCUMENT or SEGMENT.voidwaitForDocs(long numDocs, BackgroundIndexer indexer) Waits until at least a give number of document is visible for searchersvoidwaitForIndexed(long numDocs, BackgroundIndexer indexer) Waits until at least a give number of document is indexed by indexerorg.opensearch.cluster.health.ClusterHealthStatusWaits for all relocating shards to become active using the cluster health API.org.opensearch.cluster.health.ClusterHealthStatuswaitForRelocation(org.opensearch.cluster.health.ClusterHealthStatus status) Waits for all relocating shards to become active and the cluster has reached the given health status using the cluster health API.protected voidwaitForReplication(String... indices) Waits until active/started replica shards are caught up with primary shard only when Segment Replication is enabled.voidWaits until all nodes have no pending tasks.protected booleanOn Debian 8 the "memory" subsystem is not mounted by default when cgroups are enabled, and this confuses many versions of Java prior to Java 15.protected org.opensearch.core.xcontent.NamedXContentRegistryTheNamedXContentRegistryto use for this test.Methods inherited from class org.opensearch.test.OpenSearchTestCase
after, afterIfFailed, afterIfSuccessful, allowedWarnings, assertArrayEquals, assertBusy, assertBusy, assertBusyWithFixedSleepTime, assertEquals, assertNoDeprecationWarnings, 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, frequently, generateRandomStringArray, generateRandomStringArray, getBasePort, getBasePort, getDataPath, getPortRange, getShardLevelBlobPath, getSuiteFailureMarker, getTestTransportPlugin, getTestTransportType, inFipsJvm, iterations, maybeSet, mockScript, newNodeEnvironment, newNodeEnvironment, persistedStateRegistry, 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, randomNonNegativeInt, randomNonNegativeLong, randomPositiveTimeValue, randomRealisticUnicodeOfCodepointLength, randomRealisticUnicodeOfCodepointLengthBetween, randomRealisticUnicodeOfLength, randomRealisticUnicodeOfLengthBetween, randomShort, randomSubsetOf, randomSubsetOf, randomSubsetOf, randomTimeValue, randomTimeValue, randomTimeValue, randomTimeZone, randomUnicodeOfCodepointLength, randomUnicodeOfCodepointLengthBetween, randomUnicodeOfLength, randomUnicodeOfLengthBetween, randomUnique, randomUnsignedLong, randomValueOtherThan, randomValueOtherThanMany, randomZone, remoteIndexSettings, removeHeaderWarningAppender, replaceUnicodeControlCharacters, replaceUnicodeControlCharacters, resetCheckIndexStatus, resetPortCounter, restoreContentType, restoreFileSystem, scaledRandomIntBetween, setContentType, setFileSystem, setHeaderWarningAppender, settings, shuffleMap, shuffleXContent, shuffleXContent, spinForAtLeastNMilliseconds, spinForAtLeastOneMillisecond, tearDown, terminate, terminate, tmpPaths, toShuffledXContent, toShuffledXContent, waitUntil, waitUntil, warmIndexSettings, writableRegistryMethods inherited from class org.apache.lucene.tests.util.LuceneTestCase
addVirusChecker, assertDeletedDocsEquals, assertDocsAndPositionsEnumEquals, assertDocsEnumEquals, assertDocsSkippingEquals, assertDocValuesEquals, assertDocValuesEquals, assertDoubleUlpEquals, assertFieldInfosEquals, assertFloatUlpEquals, assertNormsEquals, assertPointsEquals, assertPositionsSkippingEquals, assertReaderEquals, assertReaderStatisticsEquals, assertStoredFieldEquals, assertStoredFieldsEquals, assertTermsEnumEquals, assertTermsEquals, assertTermsEquals, assertTermsStatisticsEquals, assertTermStatsEquals, assertTermVectorsEquals, assertThat, assertThat, asSet, assumeFalse, assumeNoException, assumeTrue, atLeast, atLeast, callStackContains, callStackContains, callStackContainsAnyOf, closeAfterSuite, closeAfterTest, collate, createTempDir, createTempDir, createTempFile, createTempFile, dumpArray, dumpIterator, ensureSaneIWCOnNightly, expectThrows, expectThrows, expectThrows, expectThrowsAnyOf, expectThrowsAnyOf, getDataInputStream, getJvmForkArguments, getOnlyLeafReader, getTestClass, getTestName, isTestThread, localeForLanguageTag, maybeChangeLiveIndexWriterConfig, maybeWrapReader, newAlcoholicMergePolicy, newAlcoholicMergePolicy, newBytesRef, newBytesRef, newBytesRef, newBytesRef, newBytesRef, newBytesRef, 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, newSearcher, newSearcher, newSnapshotIndexWriterConfig, newStringField, newStringField, newStringField, newStringField, newTextField, newTextField, newTieredMergePolicy, newTieredMergePolicy, overrideDefaultQueryCache, overrideTestDefaultQueryCache, random, randomLocale, randomTimeZone, randomVectorFormat, rarely, rarely, replaceMaxFailureRule, resetDefaultQueryCache, restoreCPUCoreCount, restoreIndexWriterMaxDocs, runWithRestrictedPermissions, setIndexWriterMaxDocs, setUp, setupCPUCoreCount, setUpExecutorService, shutdownExecutorService, slowFileExists, usually, usually, wrapReaderMethods 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, assertThrows, assertThrows, assertTrue, assertTrue, fail, fail
-
Field Details
-
SYSPROP_THIRDPARTY
Property that controls whether ThirdParty Integration tests are run (not the default).- See Also:
-
CODECS
-
SUITE_CLUSTER_NODE_PREFIX
node names of the corresponding clusters will start with these prefixes- See Also:
-
TEST_CLUSTER_NODE_PREFIX
- See Also:
-
TESTS_CLUSTER
Key used to eventually switch to using an external cluster and provide its transport addresses- See Also:
-
INDEX_TEST_SEED_SETTING
Key used to retrieve the index random seed from the index settings on a running node. The value of this seed can be used to initialize a random context for a specific index. It's set once per test via a generic index template. -
TESTS_ENABLE_MOCK_MODULES
A boolean value to enable or disable mock modules. This is useful to test the system without asserting modules that to make sure they don't hide any bugs in production.- See Also:
-
testClusterRule
public static org.opensearch.test.OpenSearchTestClusterRule testClusterRule -
DEFAULT_MIN_NUM_SHARDS
protected static final int DEFAULT_MIN_NUM_SHARDSDefault minimum number of shards for an index- See Also:
-
DEFAULT_MAX_NUM_SHARDS
protected static final int DEFAULT_MAX_NUM_SHARDSDefault maximum number of shards for an index- See Also:
-
TESTS_CLUSTER_NAME
-
REMOTE_BACKED_STORAGE_REPOSITORY_NAME
- See Also:
-
prefixModeVerificationEnable
-
translogPathFixedPrefix
-
segmentsPathFixedPrefix
-
snapshotShardPathFixedPrefix
-
-
Constructor Details
-
OpenSearchIntegTestCase
public OpenSearchIntegTestCase()
-
-
Method Details
-
beforeClass
-
enableWarningsCheck
protected final boolean enableWarningsCheck()Description copied from class:OpenSearchTestCaseWhether or not we check after each test whether it has left warnings behind. That happens if any deprecated feature or syntax was used by the test and the test didn't assert on it usingOpenSearchTestCase.assertWarnings(String...).- Overrides:
enableWarningsCheckin classOpenSearchTestCase
-
randomIndexTemplate
protected void randomIndexTemplate()Creates a randomized index template. This template is used to pass in randomized settings on a per index basis. Allows to enable/disable the randomization for number of shards and replicas -
setRandomIndexSettings
protected org.opensearch.common.settings.Settings.Builder setRandomIndexSettings(Random random, org.opensearch.common.settings.Settings.Builder builder) -
excludeTemplates
-
beforeIndexDeletion
-
cluster
-
isInternalCluster
public static boolean isInternalCluster() -
internalCluster
-
clusterService
public org.opensearch.cluster.service.ClusterService clusterService() -
client
public static org.opensearch.transport.client.Client client() -
client
-
dataNodeClient
public static org.opensearch.transport.client.Client dataNodeClient() -
clients
-
minimumNumberOfShards
protected int minimumNumberOfShards() -
maximumNumberOfShards
protected int maximumNumberOfShards() -
numberOfShards
protected int numberOfShards() -
minimumNumberOfReplicas
protected int minimumNumberOfReplicas() -
maximumNumberOfReplicas
protected int maximumNumberOfReplicas() -
numberOfReplicas
protected int numberOfReplicas() -
setDisruptionScheme
-
isolateClusterManagerDisruption
protected static NetworkDisruption isolateClusterManagerDisruption(NetworkDisruption.NetworkLinkDisruptionType disruptionType) Creates a disruption that isolates the current cluster-manager node from all other nodes in the cluster.- Parameters:
disruptionType- type of disruption to create- Returns:
- disruption
-
indexSettings
public org.opensearch.common.settings.Settings indexSettings()Returns a settings object used increateIndex(String...)andprepareCreate(String)and friends. This method can be overwritten by subclasses to set defaults for the indices that are created by the test. By default it returns a settings object that sets a random number of shards. Number of shards and replicas can be controlled through specific methods. -
featureFlagSettings
protected org.opensearch.common.settings.Settings featureFlagSettings()Setting all feature flag settings at base IT, which can be overridden later by individual IT classes.- Returns:
- Feature flag settings.
-
triggerRemoteStateRestore
protected boolean triggerRemoteStateRestore()Represent if it needs to trigger remote state restore or not. For tests with remote store enabled domain, it will be overridden to true.- Returns:
- if needs to perform remote state restore or not
-
performRemoteStoreTestAction
protected void performRemoteStoreTestAction()For tests with remote cluster state, it will reset the cluster and cluster state will be restored from remote. -
createIndex
Creates one or more indices and asserts that the indices are acknowledged. If one of the indices already exists this method will fail and wipe all the indices created so far. -
createIndex
creates an index with the given setting -
createIndex
-
createIndex
creates an index with the given setting -
prepareCreate
public final org.opensearch.action.admin.indices.create.CreateIndexRequestBuilder prepareCreate(String index) Creates a newCreateIndexRequestBuilderwith the settings obtained fromindexSettings(). -
prepareCreate
public final org.opensearch.action.admin.indices.create.CreateIndexRequestBuilder prepareCreate(String index, int numNodes) Creates a newCreateIndexRequestBuilderwith the settings obtained fromindexSettings(). The index that is created with this builder will only be allowed to allocate on the number of nodes passed to this method.This method uses allocation deciders to filter out certain nodes to allocate the created index on. It defines allocation rules based on
index.routing.allocation.exclude._name. -
prepareCreate
public org.opensearch.action.admin.indices.create.CreateIndexRequestBuilder prepareCreate(String index, org.opensearch.common.settings.Settings.Builder settingsBuilder) Creates a newCreateIndexRequestBuilderwith the settings obtained fromindexSettings(), augmented by the given builder -
prepareCreate
public org.opensearch.action.admin.indices.create.CreateIndexRequestBuilder prepareCreate(String index, int numNodes, org.opensearch.common.settings.Settings.Builder settingsBuilder) Creates a newCreateIndexRequestBuilderwith the settings obtained fromindexSettings(). The index that is created with this builder will only be allowed to allocate on the number of nodes passed to this method.This method uses allocation deciders to filter out certain nodes to allocate the created index on. It defines allocation rules based on
index.routing.allocation.exclude._name. -
waitNoPendingTasksOnAll
-
assertResultsAndLogOnFailure
public void assertResultsAndLogOnFailure(long expectedResults, org.opensearch.action.search.SearchResponse searchResponse) Ensures the result counts are as expected, and logs the results if different -
allowNodes
Restricts the given index to be allocated onnnodes using the allocation deciders. Yet if the shards can't be allocated on any other node shards for this index will remain allocated on more thannnodes. -
ensureGreen
Ensures the cluster has a green state via the cluster health API. This method will also wait for relocations. It is useful to ensure that all action on the cluster have finished and all shards that were currently relocating are now allocated and started. -
ensureGreen
public org.opensearch.cluster.health.ClusterHealthStatus ensureGreen(org.opensearch.common.unit.TimeValue timeout, String... indices) Ensures the cluster has a green state via the cluster health API. This method will also wait for relocations. It is useful to ensure that all action on the cluster have finished and all shards that were currently relocating are now allocated and started.- Parameters:
timeout- time out value to set onClusterHealthRequest
-
ensureGreen
public org.opensearch.cluster.health.ClusterHealthStatus ensureGreen(org.opensearch.common.unit.TimeValue timeout, boolean waitForNoRelocatingShards, String... indices) -
ensureYellow
Ensures the cluster has a yellow state via the cluster health API. -
ensureRed
Ensures the cluster has a red state via the cluster health API. -
ensureYellowAndNoInitializingShards
public org.opensearch.cluster.health.ClusterHealthStatus ensureYellowAndNoInitializingShards(String... indices) Ensures the cluster has a yellow state via the cluster health API and ensures the that cluster has no initializing shards for the given indices -
waitForRelocation
public org.opensearch.cluster.health.ClusterHealthStatus waitForRelocation()Waits for all relocating shards to become active using the cluster health API. -
waitForRelocation
public org.opensearch.cluster.health.ClusterHealthStatus waitForRelocation(org.opensearch.cluster.health.ClusterHealthStatus status) Waits for all relocating shards to become active and the cluster has reached the given health status using the cluster health API. -
waitForDocs
Waits until at least a give number of document is visible for searchers- Parameters:
numDocs- number of documents to wait forindexer- aBackgroundIndexer. It will be first checked for documents indexed. This saves on unneeded searches.- Throws:
Exception
-
waitForIndexed
Waits until at least a give number of document is indexed by indexer- Parameters:
numDocs- number of documents to wait forindexer- aBackgroundIndexer. It will be first checked for documents indexed. This saves on unneeded searches.- Throws:
Exception
-
logClusterState
public void logClusterState()Prints the current cluster state as debug logging. -
ensureClusterSizeConsistency
protected void ensureClusterSizeConsistency() -
ensureClusterStateConsistency
Verifies that all nodes that have the same version of the cluster state as cluster-manager have same cluster state- Throws:
IOException
-
ensureClusterStateCanBeReadByNodeTool
- Throws:
IOException
-
ensureSearchable
Ensures the cluster is in a searchable state for the given indices. This means a searchable copy of each shard is available on the cluster. -
ensureStableCluster
protected void ensureStableCluster(int nodeCount) -
ensureStableCluster
protected void ensureStableCluster(int nodeCount, org.opensearch.common.unit.TimeValue timeValue) -
ensureStableCluster
-
ensureStableCluster
protected void ensureStableCluster(int nodeCount, org.opensearch.common.unit.TimeValue timeValue, boolean local, @Nullable String viaNode) -
ensureFullyConnectedCluster
protected void ensureFullyConnectedCluster()Ensures that all nodes in the cluster are connected to each other.Some network disruptions may leave nodes that are not the cluster-manager disconnected from each other.
NodeConnectionsServicewill eventually reconnect but it's handy to be able to ensure this happens faster -
index
@Deprecated protected final org.opensearch.action.index.IndexResponse index(String index, String type, org.opensearch.core.xcontent.XContentBuilder source) Deprecated.Syntactic sugar for:client().prepareIndex(index, type).setSource(source).execute().actionGet();
-
index
-
index
@Deprecated protected final org.opensearch.action.index.IndexResponse index(String index, String type, String id, org.opensearch.core.xcontent.XContentBuilder source) Deprecated.Syntactic sugar for:return client().prepareIndex(index, type, id).setSource(source).execute().actionGet();
-
index
@Deprecated protected final org.opensearch.action.index.IndexResponse index(String index, String type, String id, Object... source) Deprecated.Syntactic sugar for:return client().prepareIndex(index, type, id).setSource(source).execute().actionGet();
-
index
@Deprecated protected final org.opensearch.action.index.IndexResponse index(String index, String type, String id, String source) Deprecated.Syntactic sugar for:return client().prepareIndex(index, type, id).setSource(source).execute().actionGet();
where source is a JSON String.
-
refresh
protected final org.opensearch.action.admin.indices.refresh.RefreshResponse refresh(String... indices) Waits for relocations and refreshes all indices in the cluster.- See Also:
-
flushAndRefresh
Flushes and refreshes all indices in the cluster -
flush
Flush some or all indices in the cluster. -
forceMerge
protected org.opensearch.action.admin.indices.forcemerge.ForceMergeResponse forceMerge()Waits for all relocations and force merge all indices in the cluster to 1 segment. -
forceMerge
protected org.opensearch.action.admin.indices.forcemerge.ForceMergeResponse forceMerge(int maxNumSegments) -
indexExists
Returnstrueiff the given index exists otherwisefalse -
enableAllocation
Syntactic sugar for enabling allocation forindices -
disableAllocation
Syntactic sugar for disabling allocation forindices -
admin
protected org.opensearch.transport.client.AdminClient admin()Returns a random admin client. This client can be a node pointing to any of the nodes in the cluster. -
clusterAdmin
protected org.opensearch.transport.client.ClusterAdminClient clusterAdmin()Returns a random cluster admin client. This client can be pointing to any of the nodes in the cluster. -
indexRandom
public void indexRandom(boolean forceRefresh, org.opensearch.action.index.IndexRequestBuilder... builders) throws InterruptedException Convenience method that forwards toindexRandom(boolean, List).- Throws:
InterruptedException
-
indexRandom
public void indexRandom(boolean forceRefresh, boolean dummyDocuments, org.opensearch.action.index.IndexRequestBuilder... builders) throws InterruptedException - Throws:
InterruptedException
-
indexRandom
public void indexRandom(boolean forceRefresh, List<org.opensearch.action.index.IndexRequestBuilder> builders) throws InterruptedException Indexes the givenIndexRequestBuilderinstances randomly. It shuffles the given builders and either indexes them in a blocking or async fashion. This is very useful to catch problems that relate to internal document ids or index segment creations. Some features might have bug when a given document is the first or the last in a segment or if only one document is in a segment etc. This method prevents issues like this by randomizing the index layout.- Parameters:
forceRefresh- iftrueall involved indices are refreshed once the documents are indexed. Additionally iftruesome empty dummy documents are may be randomly inserted into the document list and deleted once all documents are indexed. This is useful to produce deleted documents on the server side.builders- the documents to index.- Throws:
InterruptedException- See Also:
-
indexRandom
public void indexRandom(boolean forceRefresh, boolean dummyDocuments, List<org.opensearch.action.index.IndexRequestBuilder> builders) throws InterruptedException Indexes the givenIndexRequestBuilderinstances randomly. It shuffles the given builders and either indexes them in a blocking or async fashion. This is very useful to catch problems that relate to internal document ids or index segment creations. Some features might have bug when a given document is the first or the last in a segment or if only one document is in a segment etc. This method prevents issues like this by randomizing the index layout.- Parameters:
forceRefresh- iftrueall involved indices are refreshed once the documents are indexed.dummyDocuments- iftruesome empty dummy documents may be randomly inserted into the document list and deleted once all documents are indexed. This is useful to produce deleted documents on the server side.builders- the documents to index.- Throws:
InterruptedException
-
indexRandom
public void indexRandom(boolean forceRefresh, boolean dummyDocuments, boolean maybeFlush, List<org.opensearch.action.index.IndexRequestBuilder> builders) throws InterruptedException Indexes the givenIndexRequestBuilderinstances randomly. It shuffles the given builders and either indexes them in a blocking or async fashion. This is very useful to catch problems that relate to internal document ids or index segment creations. Some features might have bug when a given document is the first or the last in a segment or if only one document is in a segment etc. This method prevents issues like this by randomizing the index layout.- Parameters:
forceRefresh- iftrueall involved indices are refreshed once the documents are indexed.dummyDocuments- iftruesome empty dummy documents may be randomly inserted into the document list and deleted once all documents are indexed. This is useful to produce deleted documents on the server side.maybeFlush- iftruethis method may randomly execute full flushes after index operations.builders- the documents to index.- Throws:
InterruptedException
-
indexRandomForMultipleSlices
- Throws:
InterruptedException
-
disableIndexBlock
-
enableIndexBlock
-
setClusterReadOnly
public static void setClusterReadOnly(boolean value) Sets or unsets the cluster read_only mode -
clearScroll
Clears the given scroll Ids -
nodeSettings
protected org.opensearch.common.settings.Settings nodeSettings(int nodeOrdinal) This method is used to obtain settings for theNth 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. -
useRandomReplicationStrategy
protected boolean useRandomReplicationStrategy()Used for selecting random replication strategy, either DOCUMENT or SEGMENT. This method must be overridden by subclass to use random replication strategy. Should be used only on test classes where replication strategy is not critical for tests. -
nodeConfigPath
-
nodePlugins
Returns a collection of plugins that should be loaded on each node. -
additionalNodePlugins
Returns a collection of plugins that should be loaded on each node. -
externalClusterClientSettings
protected org.opensearch.common.settings.Settings externalClusterClientSettings() -
ignoreExternalCluster
protected boolean ignoreExternalCluster() -
buildTestCluster
protected TestCluster buildTestCluster(OpenSearchIntegTestCase.Scope scope, long seed) throws IOException - Throws:
IOException
-
addMockTransportService
protected boolean addMockTransportService()Iff this returns true mock transport implementations are used for the test runs. Otherwise not mock transport impls are used. The default istrue. -
addMockIndexStorePlugin
protected boolean addMockIndexStorePlugin() -
addMockHttpTransport
protected boolean addMockHttpTransport()Returnstrueiff this test cluster should use a dummy http transport -
addMockInternalEngine
protected boolean addMockInternalEngine()Returnstrueif this test cluster can use a mock internal engine. Defaults to true. -
addMockGeoShapeFieldMapper
protected boolean addMockGeoShapeFieldMapper()Returnstrueiff this test cluster should use a dummy geo_shape field mapper -
addMockTelemetryPlugin
protected boolean addMockTelemetryPlugin()Returnstrueif this test cluster should have tracing enabled with MockTelemetryPlugin Disabling this for now as the existing way of strict check do not support multiple nodes internal cluster.- Returns:
- boolean.
-
getClientWrapper
protected Function<org.opensearch.transport.client.Client, org.opensearch.transport.client.Client> getClientWrapper()Returns a function that allows to wrap / filter all clients that are exposed by the test cluster. This is useful for debugging or request / response pre and post processing. It also allows to intercept all calls done by the test framework. By default this method returns an identity functionFunction.identity(). -
getMockPlugins
Return the mock plugins the cluster should use -
randomRepoPath
Returns path to a random directory that can be used to create a temporary file system repo -
randomRepoPath
Returns path to a random directory that can be used to create a temporary file system repo -
getNumShards
-
assertAllShardsOnNodes
-
assertSortedSegments
Asserts that all segments are sorted with the providedSort. -
afterClass
-
routingKeyForShard
-
xContentRegistry
protected org.opensearch.core.xcontent.NamedXContentRegistry xContentRegistry()Description copied from class:OpenSearchTestCaseTheNamedXContentRegistryto use for this test. Subclasses should override and use liberally.- Overrides:
xContentRegistryin classOpenSearchTestCase
-
forbidPrivateIndexSettings
protected boolean forbidPrivateIndexSettings() -
getRestClient
protected static org.opensearch.client.RestClient getRestClient()Returns an instance ofRestClientpointing to the current test cluster. Creates a new client if the method is invoked for the first time in the context of the current test scope. The returned client gets automatically closed when needed, it shouldn't be closed as part of tests otherwise it cannot be reused by other tests anymore. -
setupSuiteScopeCluster
This method is executed iff the test is annotated withOpenSearchIntegTestCase.SuiteScopeTestCasebefore the first test of this class is executed.- Throws:
Exception- See Also:
-
resolveIndex
-
resolveCustomDataPath
-
willSufferDebian8MemoryProblem
protected boolean willSufferDebian8MemoryProblem()On Debian 8 the "memory" subsystem is not mounted by default when cgroups are enabled, and this confuses many versions of Java prior to Java 15. Tests that rely on machine memory being accurately determined will not work on such setups, and can use this method for selective muting. See https://github.com/elastic/elasticsearch/issues/67089 and https://github.com/elastic/elasticsearch/issues/66885 -
manageReplicaBalanceSetting
public void manageReplicaBalanceSetting(boolean apply) -
manageReplicaSettingForDefaultReplica
public void manageReplicaSettingForDefaultReplica(boolean apply) -
-
primaryNodeName
-
replicaNodeName
-
getClusterState
protected org.opensearch.cluster.ClusterState getClusterState() -
refreshAndWaitForReplication
protected org.opensearch.action.admin.indices.refresh.RefreshResponse refreshAndWaitForReplication(String... indices) Refreshes the indices in the cluster and waits until active/started replica shards are caught up with primary shard only when Segment Replication is enabled. This doesn't wait for inactive/non-started replica shards to become active/started. -
isMigratingToRemoteStore
public boolean isMigratingToRemoteStore() -
waitForReplication
Waits until active/started replica shards are caught up with primary shard only when Segment Replication is enabled. This doesn't wait for inactive/non-started replica shards to become active/started. -
isSegmentReplicationEnabledForIndex
Checks if Segment Replication is enabled on Index. -
getIndexShard
protected org.opensearch.index.shard.IndexShard getIndexShard(org.opensearch.cluster.routing.ShardRouting routing, String indexName) -
getIndexShard
-
getLatestSegmentInfoVersion
protected long getLatestSegmentInfoVersion(org.opensearch.index.shard.IndexShard shard) Fetch latest segment info snapshot version of an index. -
createRepository
-
createRepository
-
updateRepository
-
getNodeSettings
public org.opensearch.common.settings.Settings getNodeSettings() -
putRepository
-
putRepository
-
putRepository
-
putRepositoryWithNoSettingOverrides
-
putRepository
public static void putRepository(org.opensearch.transport.client.ClusterAdminClient adminClient, String repoName, String type, org.opensearch.common.settings.Settings.Builder settings, org.opensearch.core.action.ActionListener<org.opensearch.action.support.clustermanager.AcknowledgedResponse> listener) -
putRepositoryRequestBuilder
public static org.opensearch.action.admin.cluster.repositories.put.PutRepositoryRequestBuilder putRepositoryRequestBuilder(org.opensearch.transport.client.ClusterAdminClient adminClient, String repoName, String type, boolean verify, org.opensearch.common.settings.Settings.Builder settings, String timeout, boolean finalSettings) -
remoteStoreClusterSettings
-
remoteStoreClusterSettings
-
remoteStoreClusterSettings
public static org.opensearch.common.settings.Settings remoteStoreClusterSettings(String segmentRepoName, Path segmentRepoPath, String segmentRepoType, String translogRepoName, Path translogRepoPath, String translogRepoType, String routingTableRepoName, Path routingTableRepoPath, String routingTableRepoType) -
remoteStoreClusterSettings
-
remoteStoreClusterSettings
-
buildRemoteStoreNodeAttributes
-
buildRemoteStoreNodeAttributes
-
buildRemoteStateNodeAttributes
-
buildRemoteStoreNodeAttributes
protected static org.opensearch.common.settings.Settings buildRemoteStoreNodeAttributes(String segmentRepoName, Path segmentRepoPath, String segmentRepoType, String translogRepoName, Path translogRepoPath, String translogRepoType, String routingTableRepoName, Path routingTableRepoPath, String routingTableRepoType, boolean withRateLimiterAttributes) -
buildRemotePublicationNodeAttributes
-
resolvePath
-