Skip to content

Commit 69cc2a1

Browse files
authored
Fix for flaky test IndexServiceTests.testAsyncTranslogTrimTaskOnClosedIndex (opensearch-project#11337)
Signed-off-by: Ankit Kala <ankikala@amazon.com>
1 parent 77a4daf commit 69cc2a1

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

server/src/test/java/org/opensearch/index/IndexServiceTests.java

+7-6
Original file line numberDiff line numberDiff line change
@@ -452,12 +452,7 @@ public void testAsyncTranslogTrimTaskOnClosedIndex() throws Exception {
452452
assertTrue(indexService.getTrimTranslogTask().mustReschedule());
453453

454454
final Engine readOnlyEngine = getEngine(indexService.getShard(0));
455-
assertBusy(
456-
() -> assertThat(
457-
readOnlyEngine.translogManager().getTranslogStats().getTranslogSizeInBytes(),
458-
equalTo((long) Translog.DEFAULT_HEADER_SIZE_IN_BYTES)
459-
)
460-
);
455+
assertBusy(() -> assertTrue(isTranslogEmpty(readOnlyEngine)));
461456

462457
assertAcked(client().admin().indices().prepareOpen("test").setWaitForActiveShards(ActiveShardCount.DEFAULT));
463458

@@ -467,6 +462,12 @@ public void testAsyncTranslogTrimTaskOnClosedIndex() throws Exception {
467462
assertThat(translog.stats().estimatedNumberOfOperations(), equalTo(0));
468463
}
469464

465+
boolean isTranslogEmpty(Engine engine) {
466+
long tlogSize = engine.translogManager().getTranslogStats().getTranslogSizeInBytes();
467+
// translog contains 1(or 2 in some corner cases) empty readers.
468+
return tlogSize == Translog.DEFAULT_HEADER_SIZE_IN_BYTES || tlogSize == 2 * Translog.DEFAULT_HEADER_SIZE_IN_BYTES;
469+
}
470+
470471
public void testIllegalFsyncInterval() {
471472
Settings settings = Settings.builder()
472473
.put(IndexSettings.INDEX_TRANSLOG_SYNC_INTERVAL_SETTING.getKey(), "0ms") // disable

0 commit comments

Comments
 (0)