Robbie Gemmell created ARTEMIS-3450:
---------------------------------------

             Summary: StaticPoolTest and DiscoveryPoolTest fail sporadically in 
CI
                 Key: ARTEMIS-3450
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3450
             Project: ActiveMQ Artemis
          Issue Type: Test
          Components: Tests
            Reporter: Robbie Gemmell


The StaticPoolTest and DiscoveryPoolTest tests added in ARTEMIS-3365 fail 
sporadically in CI

Some examples:
https://github.com/apache/activemq-artemis/runs/3416448949?check_suite_focus=true#step:5:2325
https://github.com/apache/activemq-artemis/runs/3433060966?check_suite_focus=true#step:5:2223

Looking at the tests I do see a few small issues, though they may not explain 
the failures:

- The MockTargetProbe contains a HashMap used from multiple threads (test and 
pool) in a manner that isnt thread safe. It actually threw 
ConcurrentModificationException during at least one CI run (e.g 
https://github.com/apache/activemq-artemis/runs/3416448949?check_suite_focus=true#step:5:2163).
 That may or may not be the cause of the test failure seen in the same log 
(note it isnt seen in the other test log, though it failed at a different 
assertion). It should use ConcurrentHashMap or perhaps alternatively protect 
use of the map more generally.
- The PoolTestBase#testPoolQuorumWithMultipleTargets test creates and starts a 
pool but doesnt ensure it is stopped on assertion failure. The 
DiscoveryPoolTest subclass runs this test with a pool using a scheduled 
executor, so it should presumably be cleaned up in the same manner the other 
tests all use.
- One of the tests asserts there are no 'createdTargets' entries, and then 
immediately iterates those [non-existent] entries to assert on the non-existent 
values, which seems quite strange.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to