This is an automated email from the ASF dual-hosted git repository. jbertram pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git
The following commit(s) were added to refs/heads/main by this push: new 5e99516a27 NO-JIRA Fix PagingStoreImplTest#testBlockUnblock random failure 5e99516a27 is described below commit 5e99516a27f2fff55355006641c1059ffba350cd Author: Howard Gao <howard....@gmail.com> AuthorDate: Mon Jan 22 21:57:32 2024 +0800 NO-JIRA Fix PagingStoreImplTest#testBlockUnblock random failure PagingStroeImpl.checkReleasedMemory() will kick off executor.execute(this::memoryReleased) to pull from the queue onMemoryFreedRunnables asynchronously. If the executor fires the task too late, it can pick up one of the late trackMemoryChecks runnable and increase its calls, making assertion fail. need to flush the executors to make sure it doesn't happen. --- .../artemis/tests/unit/core/paging/impl/PagingStoreImplTest.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/unit-tests/src/test/java/org/apache/activemq/artemis/tests/unit/core/paging/impl/PagingStoreImplTest.java b/tests/unit-tests/src/test/java/org/apache/activemq/artemis/tests/unit/core/paging/impl/PagingStoreImplTest.java index 3c0835fa3c..f75fb75940 100644 --- a/tests/unit-tests/src/test/java/org/apache/activemq/artemis/tests/unit/core/paging/impl/PagingStoreImplTest.java +++ b/tests/unit-tests/src/test/java/org/apache/activemq/artemis/tests/unit/core/paging/impl/PagingStoreImplTest.java @@ -1252,6 +1252,7 @@ public class PagingStoreImplTest extends ActiveMQTestBase { }; store.applySetting(new AddressSettings().setMaxSizeBytes(1000).setAddressFullMessagePolicy(AddressFullMessagePolicy.BLOCK)); store.addSize(100); + store.flushExecutors(); store.checkMemory(trackMemoryChecks, null); assertEquals(1, calls.get()); @@ -1270,6 +1271,7 @@ public class PagingStoreImplTest extends ActiveMQTestBase { store.addSize(900); assertEquals(100, store.getAddressLimitPercent()); + store.flushExecutors(); // address full blocks store.checkMemory(trackMemoryChecks, null); @@ -1285,6 +1287,7 @@ public class PagingStoreImplTest extends ActiveMQTestBase { assertEquals(2, calls.get()); store.unblock(); + store.flushExecutors(); // now released assertTrue(Wait.waitFor(new Wait.Condition() {