Skip to content

Commit c498f46

Browse files
committed
Remove test usages of getDefaultBackingIndexName in DS and LogsDB tests (#127384)
We replace usages of time sensitive `DataStream#getDefaultBackingIndexName` with the retrieval of the name via an API call. The problem with using the time sensitive method is that we can have test failures around midnight. Relates #123376
1 parent 996bc0e commit c498f46

File tree

5 files changed

+20
-25
lines changed

5 files changed

+20
-25
lines changed

modules/data-streams/src/internalClusterTest/java/org/elasticsearch/datastreams/DataStreamIT.java

+9-12
Original file line numberDiff line numberDiff line change
@@ -202,8 +202,8 @@ public void testBasicScenario() throws Exception {
202202
int numDocsFoo = randomIntBetween(2, 16);
203203
indexDocs("metrics-foo", numDocsFoo);
204204

205-
verifyDocs("metrics-bar", numDocsBar, 1, 1);
206-
verifyDocs("metrics-foo", numDocsFoo, 1, 1);
205+
verifyDocs("metrics-bar", numDocsBar);
206+
verifyDocs("metrics-foo", numDocsFoo);
207207

208208
RolloverResponse fooRolloverResponse = indicesAdmin().rolloverIndex(new RolloverRequest("metrics-foo", null)).get();
209209
assertThat(fooRolloverResponse.getNewIndex(), backingIndexEqualTo("metrics-foo", 2));
@@ -234,8 +234,8 @@ public void testBasicScenario() throws Exception {
234234
int numDocsFoo2 = randomIntBetween(2, 16);
235235
indexDocs("metrics-foo", numDocsFoo2);
236236

237-
verifyDocs("metrics-bar", numDocsBar + numDocsBar2, 1, 2);
238-
verifyDocs("metrics-foo", numDocsFoo + numDocsFoo2, 1, 2);
237+
verifyDocs("metrics-bar", numDocsBar + numDocsBar2);
238+
verifyDocs("metrics-foo", numDocsFoo + numDocsFoo2);
239239

240240
DeleteDataStreamAction.Request deleteDataStreamRequest = new DeleteDataStreamAction.Request(TEST_REQUEST_TIMEOUT, "metrics-*");
241241
client().execute(DeleteDataStreamAction.INSTANCE, deleteDataStreamRequest).actionGet();
@@ -469,7 +469,7 @@ public void testComposableTemplateOnlyMatchingWithDataStreamName() throws Except
469469

470470
int numDocs = randomIntBetween(2, 16);
471471
indexDocs(dataStreamName, numDocs);
472-
verifyDocs(dataStreamName, numDocs, 1, 1);
472+
verifyDocs(dataStreamName, numDocs);
473473

474474
GetDataStreamAction.Request getDataStreamRequest = new GetDataStreamAction.Request(TEST_REQUEST_TIMEOUT, new String[] { "*" });
475475
GetDataStreamAction.Response getDataStreamResponse = client().execute(GetDataStreamAction.INSTANCE, getDataStreamRequest)
@@ -504,7 +504,7 @@ public void testComposableTemplateOnlyMatchingWithDataStreamName() throws Except
504504

505505
int numDocs2 = randomIntBetween(2, 16);
506506
indexDocs(dataStreamName, numDocs2);
507-
verifyDocs(dataStreamName, numDocs + numDocs2, 1, 2);
507+
verifyDocs(dataStreamName, numDocs + numDocs2);
508508

509509
getDataStreamRequest = new GetDataStreamAction.Request(TEST_REQUEST_TIMEOUT, new String[] { "*" });
510510
getDataStreamResponse = client().execute(GetDataStreamAction.INSTANCE, getDataStreamRequest).actionGet();
@@ -953,7 +953,7 @@ public void testAliasActionsFailOnDataStreamBackingIndices() throws Exception {
953953
);
954954
client().execute(CreateDataStreamAction.INSTANCE, createDataStreamRequest).get();
955955

956-
String backingIndex = DataStream.getDefaultBackingIndexName(dataStreamName, 1);
956+
String backingIndex = getDataStreamBackingIndexNames(dataStreamName).getFirst();
957957
AliasActions addAction = new AliasActions(AliasActions.Type.ADD).index(backingIndex).aliases("first_gen");
958958
IndicesAliasesRequest aliasesAddRequest = new IndicesAliasesRequest();
959959
aliasesAddRequest.addAliasAction(addAction);
@@ -2042,11 +2042,8 @@ static void verifyDocs(String dataStream, long expectedNumHits, List<String> exp
20422042
});
20432043
}
20442044

2045-
static void verifyDocs(String dataStream, long expectedNumHits, long minGeneration, long maxGeneration) {
2046-
List<String> expectedIndices = new ArrayList<>();
2047-
for (long k = minGeneration; k <= maxGeneration; k++) {
2048-
expectedIndices.add(DataStream.getDefaultBackingIndexName(dataStream, k));
2049-
}
2045+
static void verifyDocs(String dataStream, long expectedNumHits) {
2046+
List<String> expectedIndices = getDataStreamBackingIndexNames(dataStream);
20502047
verifyDocs(dataStream, expectedNumHits, expectedIndices);
20512048
}
20522049

modules/data-streams/src/internalClusterTest/java/org/elasticsearch/datastreams/DataStreamsSnapshotsIT.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,8 @@
3535
import org.elasticsearch.action.support.IndicesOptions;
3636
import org.elasticsearch.action.support.master.AcknowledgedResponse;
3737
import org.elasticsearch.client.internal.Client;
38-
import org.elasticsearch.cluster.metadata.DataStream;
3938
import org.elasticsearch.cluster.metadata.DataStreamAlias;
39+
import org.elasticsearch.cluster.metadata.DataStreamTestHelper;
4040
import org.elasticsearch.common.settings.Settings;
4141
import org.elasticsearch.common.unit.ByteSizeUnit;
4242
import org.elasticsearch.index.Index;
@@ -301,8 +301,8 @@ public void testSnapshotAndRestoreInPlace() {
301301
RolloverRequest rolloverRequest = new RolloverRequest("ds", null);
302302
RolloverResponse rolloverResponse = client.admin().indices().rolloverIndex(rolloverRequest).actionGet();
303303
assertThat(rolloverResponse.isRolledOver(), is(true));
304-
String backingIndexAfterSnapshot = DataStream.getDefaultBackingIndexName("ds", 2);
305-
assertThat(rolloverResponse.getNewIndex(), equalTo(backingIndexAfterSnapshot));
304+
String backingIndexAfterSnapshot = getDataStreamBackingIndexNames("ds").getFirst();
305+
assertThat(rolloverResponse.getNewIndex(), DataStreamTestHelper.backingIndexEqualTo("ds", 2));
306306

307307
// Close all backing indices of ds data stream:
308308
CloseIndexRequest closeIndexRequest = new CloseIndexRequest(".ds-ds-*");
@@ -337,7 +337,7 @@ public void testSnapshotAndRestoreInPlace() {
337337
rolloverRequest = new RolloverRequest("ds", null);
338338
rolloverResponse = client.admin().indices().rolloverIndex(rolloverRequest).actionGet();
339339
assertThat(rolloverResponse.isRolledOver(), is(true));
340-
assertThat(rolloverResponse.getNewIndex(), equalTo(DataStream.getDefaultBackingIndexName("ds", 3)));
340+
assertThat(rolloverResponse.getNewIndex(), DataStreamTestHelper.backingIndexEqualTo("ds", 3));
341341
}
342342

343343
public void testFailureStoreSnapshotAndRestore() {
@@ -915,7 +915,7 @@ public void testDataStreamAndBackingIndicesAreRenamedUsingRegex() {
915915
List<GetDataStreamAction.Response.DataStreamInfo> dataStreamInfos = getDataStreamInfo("test-ds");
916916
assertThat(
917917
dataStreamInfos.get(0).getDataStream().getIndices().get(0).getName(),
918-
is(DataStream.getDefaultBackingIndexName("test-ds", 1L))
918+
DataStreamTestHelper.backingIndexEqualTo("test-ds", 1)
919919
);
920920

921921
// data stream "ds" should still exist in the system

test/framework/src/main/java/org/elasticsearch/test/ESIntegTestCase.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -855,7 +855,7 @@ public List<String> getDataStreamBackingIndexNames(String dataStreamName) {
855855
GetDataStreamAction.Response response = safeGet(
856856
client().execute(
857857
GetDataStreamAction.INSTANCE,
858-
new GetDataStreamAction.Request(TEST_REQUEST_TIMEOUT, new String[] { dataStreamName })
858+
new GetDataStreamAction.Request(SAFE_AWAIT_TIMEOUT, new String[] { dataStreamName })
859859
)
860860
);
861861
assertThat(response.getDataStreams().size(), equalTo(1));

x-pack/plugin/logsdb/qa/with-basic/src/javaRestTest/java/org/elasticsearch/xpack/logsdb/LogsdbWithBasicRestIT.java

+2-3
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
package org.elasticsearch.xpack.logsdb;
99

1010
import org.elasticsearch.client.Request;
11-
import org.elasticsearch.cluster.metadata.DataStream;
1211
import org.elasticsearch.cluster.metadata.IndexMetadata;
1312
import org.elasticsearch.common.settings.Settings;
1413
import org.elasticsearch.index.IndexSettings;
@@ -178,7 +177,7 @@ public void testLogsdbOverrideDefaultModeForLogsIndex() throws IOException {
178177
""");
179178
assertOK(client().performRequest(request));
180179

181-
String index = DataStream.getDefaultBackingIndexName("logs-test-foo", 1);
180+
String index = getDataStreamBackingIndexNames("logs-test-foo").getFirst();
182181
var settings = (Map<?, ?>) ((Map<?, ?>) getIndexSettings(index).get(index)).get("settings");
183182
assertEquals("logsdb", settings.get("index.mode"));
184183
assertEquals(SourceFieldMapper.Mode.STORED.toString(), settings.get("index.mapping.source.mode"));
@@ -231,7 +230,7 @@ public void testLogsdbRouteOnSortFields() throws IOException {
231230
""");
232231
assertOK(client().performRequest(request));
233232

234-
String index = DataStream.getDefaultBackingIndexName("my-log-foo", 1);
233+
String index = getDataStreamBackingIndexNames("my-log-foo").getFirst();
235234
var settings = (Map<?, ?>) ((Map<?, ?>) getIndexSettings(index).get(index)).get("settings");
236235
assertEquals("logsdb", settings.get("index.mode"));
237236
assertEquals(SourceFieldMapper.Mode.STORED.toString(), settings.get("index.mapping.source.mode"));

x-pack/plugin/logsdb/src/javaRestTest/java/org/elasticsearch/xpack/logsdb/LogsdbRestIT.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
package org.elasticsearch.xpack.logsdb;
99

1010
import org.elasticsearch.client.Request;
11-
import org.elasticsearch.cluster.metadata.DataStream;
1211
import org.elasticsearch.cluster.metadata.IndexMetadata;
1312
import org.elasticsearch.common.settings.Settings;
1413
import org.elasticsearch.common.time.DateFormatter;
@@ -114,7 +113,7 @@ public void testLogsdbSourceModeForLogsIndex() throws IOException {
114113
""");
115114
assertOK(client().performRequest(request));
116115

117-
String index = DataStream.getDefaultBackingIndexName("logs-test-foo", 1);
116+
String index = getDataStreamBackingIndexNames("logs-test-foo").getFirst();
118117
var settings = (Map<?, ?>) ((Map<?, ?>) getIndexSettings(index).get(index)).get("settings");
119118
assertEquals("logsdb", settings.get("index.mode"));
120119
assertNull(settings.get("index.mapping.source.mode"));
@@ -281,7 +280,7 @@ public void testLogsdbRouteOnSortFields() throws IOException {
281280
""");
282281
assertOK(client().performRequest(request));
283282

284-
String index = DataStream.getDefaultBackingIndexName("my-log-foo", 1);
283+
String index = getDataStreamBackingIndexNames("my-log-foo").getFirst();
285284
var settings = (Map<?, ?>) ((Map<?, ?>) getIndexSettings(index).get(index)).get("settings");
286285
assertEquals("logsdb", settings.get("index.mode"));
287286
assertNull(settings.get("index.mapping.source.mode"));
@@ -335,7 +334,7 @@ public void testLogsdbDefaultWithRecoveryUseSyntheticSource() throws IOException
335334
""");
336335
assertOK(client().performRequest(request));
337336

338-
String index = DataStream.getDefaultBackingIndexName("my-log-foo", 1);
337+
String index = getDataStreamBackingIndexNames("my-log-foo").getFirst();
339338
var settings = (Map<?, ?>) ((Map<?, ?>) getIndexSettings(index).get(index)).get("settings");
340339
assertEquals("logsdb", settings.get("index.mode"));
341340
assertNull(settings.get("index.mapping.source.mode"));

0 commit comments

Comments
 (0)