Clebert Suconic created ARTEMIS-4786:
----------------------------------------

             Summary: ConcurrentModificationException on Page.destroy
                 Key: ARTEMIS-4786
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-4786
             Project: ActiveMQ Artemis
          Issue Type: Bug
            Reporter: Clebert Suconic


I observed this while running 
org.apache.activemq.artemis.tests.integration.client.ConcurrentCreateDeleteProduceTest.testConcurrentProduceCreateAndDelete
 in loop:

java.lang.AssertionError: null is not a legitimate internal value. Concurrent 
Modification?
        at 
io.netty.util.collection.IntObjectHashMap.toExternal(IntObjectHashMap.java:103) 
~[netty-common-4.1.109.Final.jar:4.1.109.Final]
        at 
io.netty.util.collection.IntObjectHashMap.access$900(IntObjectHashMap.java:37) 
~[netty-common-4.1.109.Final.jar:4.1.109.Final]
        at 
io.netty.util.collection.IntObjectHashMap$PrimitiveIterator.value(IntObjectHashMap.java:650)
 ~[netty-common-4.1.109.Final.jar:4.1.109.Final]
        at 
io.netty.util.collection.IntObjectHashMap$2$1.next(IntObjectHashMap.java:234) 
~[netty-common-4.1.109.Final.jar:4.1.109.Final]
        at 
org.apache.activemq.artemis.core.paging.cursor.impl.PageSubscriptionImpl.destroy(PageSubscriptionImpl.java:642)
 ~[classes/:?]
        at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.destroyPaging(QueueImpl.java:2382)
 ~[classes/:?]
        at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.deleteQueue(QueueImpl.java:2441)
 ~[classes/:?]
        at 
org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.destroyQueue(ActiveMQServerImpl.java:2512)
 ~[classes/:?]
        at 
org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.destroyQueue(ActiveMQServerImpl.java:2461)
 ~[classes/:?]
        at 
org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.deleteQueue(ServerSessionImpl.java:1212)
 ~[classes/:?]
        at 
org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.deleteQueue(ServerSessionImpl.java:1196)
 ~[classes/:?]
        at 
org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler.slowPacketHandler(ServerSessionPacketHandler.java:436)
 ~[classes/:?]




On the occasion I had a fix for ARTEMIS-4165 in place, but the issue seems 
orthogonal to me.


The cleanup methods are clearing the Netty collection out of abundance of 
caution (to help out GC). The fix here is just to stop doing that.



As part of this fix I'm also adding a check-leak test to make sure such objects 
are not leaking.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
For further information, visit: https://activemq.apache.org/contact


Reply via email to