Robbie Gemmell created ARTEMIS-3654:
---------------------------------------

             Summary: AllClassesTest can create and fail to close a 
LibaioContext instance
                 Key: ARTEMIS-3654
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3654
             Project: ActiveMQ Artemis
          Issue Type: Test
          Components: Tests
    Affects Versions: 2.20.0
            Reporter: Robbie Gemmell


AllClassesTest tries to create objects with random args as part of its check. 
It never closes these.

A cascading test failure was noticed due to the static TotalMaxIO check done 
before/after ActiveMQTestBase based tests to check for AIO context leaks. As 
AllClassesTest was the only test to run in the JVM before this happened, it 
essentially had to be the cause.

The behaviour would fit with it generally failing to create the LibaioContext 
instance due to its internal checks, but succeeding this one time, then not 
closing it.

{noformat}
 [INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running org.apache.activemq.artemis.tests.unit.AllClassesTest
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further 
details.
Warning:  Tests run: 1362, Failures: 0, Errors: 0, Skipped: 280, Time elapsed: 
3.551 s - in org.apache.activemq.artemis.tests.unit.AllClassesTest
[INFO] Running 
org.apache.activemq.artemis.tests.unit.core.asyncio.MultiThreadAsynchronousFileTest
[main] 11:27:22,623 ERROR 
[org.apache.activemq.artemis.tests.util.ActiveMQTestBase] LibaioContext 
TotalMaxIO > 0 before beginning test class. Issue presumably arose in a 
preceding class (not possible to be sure of which here). TotalMaxIO = 39416
[main] 11:27:52,682 ERROR 
[org.apache.activemq.artemis.tests.util.ActiveMQTestBase] LibaioContext 
TotalMaxIO > 0 leak detected after class not-yet-set(), TotalMaxIO=39416(). 
Check output to determine if occurred before/during.
Error:  Tests run: 2, Failures: 1, Errors: 1, Skipped: 0, Time elapsed: 30.022 
s <<< FAILURE! - in 
org.apache.activemq.artemis.tests.unit.core.asyncio.MultiThreadAsynchronousFileTest
Error:  
org.apache.activemq.artemis.tests.unit.core.asyncio.MultiThreadAsynchronousFileTest
  Time elapsed: 30.022 s  <<< ERROR!
org.junit.TestCouldNotBeSkippedException: Test could not be skipped due to 
other failures
        at 
org.apache.activemq.artemis.tests.unit.core.asyncio.MultiThreadAsynchronousFileTest.hasAIO(MultiThreadAsynchronousFileTest.java:52)

Error:  
org.apache.activemq.artemis.tests.unit.core.asyncio.MultiThreadAsynchronousFileTest
  Time elapsed: 30.022 s  <<< FAILURE!
java.lang.AssertionError: LibaioContext TotalMaxIO > 0 leak detected after 
class not-yet-set(), TotalMaxIO=39416(). Check output to determine if occurred 
before/during.

[INFO] Running 
org.apache.activemq.artemis.tests.unit.core.client.impl.LargeMessageBufferTest
Error:  Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.011 s 
<<< FAILURE! - in 
org.apache.activemq.artemis.tests.unit.core.client.impl.LargeMessageBufferTest
Error:  
org.apache.activemq.artemis.tests.unit.core.client.impl.LargeMessageBufferTest  
Time elapsed: 0.011 s  <<< FAILURE!
java.lang.AssertionError: Aborting, LibaioContext TotalMaxIO > 0 issue 
previously detected by test class not-yet-set(), see its output.
{noformat}



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to