Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] SegmentReplicationIT.testScrollCreatedOnReplica is flaky #10769

Closed
mch2 opened this issue Oct 20, 2023 · 1 comment · Fixed by #10770 or #12077
Closed

[BUG] SegmentReplicationIT.testScrollCreatedOnReplica is flaky #10769

mch2 opened this issue Oct 20, 2023 · 1 comment · Fixed by #10770 or #12077
Assignees
Labels
bug Something isn't working flaky-test Random test failure that succeeds on second run Indexing:Replication Issues and PRs related to core replication framework eg segrep

Comments

@mch2
Copy link
Member

mch2 commented Oct 20, 2023

I caught this by running all SegRep ITs on repeat - its possible the scroll/pit requests aren't immediately clearing unreferenced files, this can be fixed by wrapping in an assertBusy.

REPRODUCE WITH: ./gradlew 'null' --tests "org.opensearch.remotestore.SegmentReplicationUsingRemoteStoreIT.testScrollCreatedOnReplica" -Dtests.seed=B6DEF7E40AB8FEBD -Dtests.locale=pl -Dtests.timezone=America/Louisville -Druntime.java=19

java.lang.AssertionError: Files should be cleaned up post scroll clear request

	at __randomizedtesting.SeedInfo.seed([B6DEF7E40AB8FEBD:AB0D24631C17B1C8]:0)
	at org.junit.Assert.fail(Assert.java:89)
	at org.junit.Assert.assertTrue(Assert.java:42)
	at org.junit.Assert.assertFalse(Assert.java:65)
	at org.opensearch.indices.replication.SegmentReplicationIT.testScrollCreatedOnReplica(SegmentReplicationIT.java:1076)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
	at java.base/java.lang.reflect.Method.invoke(Method.java:578)
	at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1750)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:938)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$9.evaluate(RandomizedRunner.java:974)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:988)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at org.junit.rules.RunRules.evaluate(RunRules.java:20
@mch2 mch2 added bug Something isn't working untriaged labels Oct 20, 2023
@mch2 mch2 self-assigned this Oct 20, 2023
@reta reta reopened this Nov 30, 2023
@reta
Copy link
Collaborator

reta commented Nov 30, 2023

Reopening it, this issue is not fixed:

java.lang.AssertionError: Files should be cleaned up post scroll clear request
	at __randomizedtesting.SeedInfo.seed([A16D8358F150F61C:BCBE50DFE7FFB969]:0)
	at org.junit.Assert.fail(Assert.java:89)
	at org.junit.Assert.assertTrue(Assert.java:42)
	at org.junit.Assert.assertFalse(Assert.java:65)
	at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
	at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1089)
	at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1062)
	at org.opensearch.indices.replication.SegmentReplicationIT.testScrollCreatedOnReplica(SegmentReplicationIT.java:1073)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1750)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:938)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$9.evaluate(RandomizedRunner.java:974)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:988)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
	at org.apache.lucene.tests.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:48)
	at org.apache.lucene.tests.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)
	at org.apache.lucene.tests.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:45)
	at org.apache.lucene.tests.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:60)
	at org.apache.lucene.tests.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:44)
	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:368)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:817)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:468)
	at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:947)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:832)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:883)
	at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:894)
	at org.apache.lucene.tests.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at org.apache.lucene.tests.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
	at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
	at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at org.apache.lucene.tests.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:53)
	at org.apache.lucene.tests.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)
	at org.apache.lucene.tests.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:44)
	at org.apache.lucene.tests.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:60)
	at org.apache.lucene.tests.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:47)
	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
	at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
	at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:368)
	at java.base/java.lang.Thread.run(Thread.java:1583)
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more
	Suppressed: java.lang.AssertionError: Files should be cleaned up post scroll clear request
		at org.junit.Assert.fail(Assert.java:89)
		at org.junit.Assert.assertTrue(Assert.java:42)
		at org.junit.Assert.assertFalse(Assert.java:65)
		at org.opensearch.indices.replication.SegmentReplicationIT.lambda$testScrollCreatedOnReplica$11(SegmentReplicationIT.java:1074)
		at org.opensearch.test.OpenSearchTestCase.assertBusy(OpenSearchTestCase.java:1077)
		... 40 more

https://build.ci.opensearch.org/job/gradle-check/30636/testReport/junit/org.opensearch.remotestore/SegmentReplicationUsingRemoteStoreIT/testScrollCreatedOnReplica/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working flaky-test Random test failure that succeeds on second run Indexing:Replication Issues and PRs related to core replication framework eg segrep
Projects
None yet
4 participants