Yang Chen created HBASE-26217: --------------------------------- Summary: Clean shared state pollution to avoid flaky tests. Key: HBASE-26217 URL: https://issues.apache.org/jira/browse/HBASE-26217 Project: HBase Issue Type: Bug Components: test Reporter: Yang Chen
h4. PR Link:[https://github.com/apache/hbase/pull/3615] h2. What is the purpose of this change * This PR cleans the state polluted by {{org.apache.hadoop.hbase.monitoring.TestTaskMonitor.testDoNotPurgeRPCTask}}. * It may be better to clean state pollutions so that some other tests won't fail in the future due to the shared state pollution. h2. Reproduce the test failure * Run the test twice in the same JVM. h2. Expected result: * The tests should run successfully when multiple tests that use this state are run in the same JVM. h2. Actual result: * We get the failure: {{[ERROR] Failures: [ERROR] testDoNotPurgeRPCTask:144 RPC Tasks have been purged! expected:<10> but was:<20>}} h2. Why the test fails * Each time this test runs,10 RPCtasks are created and added to the ArrayList {{rpcTasks}}, but {{rpcTasks}} is not completely purged when the test ends. So next time the test starts, the remaining RPC tasks lead to an assertion failure. h2. Fix * Clean all tasks when the test ends. * Another solution is to create a new {{TaskMonitor}} each time to avoid pollution similar to the other tests (e.g., {{testTaskMonitorBasics}}, {{testTasksGetAbortedOnLeak}}) in {{TestTaskMonitor}}. [Create a new TaskMonitor each time to avoid flaky tests. LALAYANG/hbase#1|https://github.com/LALAYANG/hbase/pull/1] -- This message was sent by Atlassian Jira (v8.3.4#803005)