[ 
https://issues.apache.org/jira/browse/ARTEMIS-5164?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Justin Bertram updated ARTEMIS-5164:
------------------------------------
    Description: 
Testing by sending a lot of messages by brokers, about 200,000. We have noticed 
that the count of messages in the queue is broken. When we finished consuming 
messages the website showed us that we had 22 messages. We checked if they were 
scheduled and using the Jolokia API. It told us that we had no scheduled 
messages.

Checking the log we see that there are 22 instances of {{NullPointerException}} 
with:
{noformat}
WARN  [org.apache.activemq.artemis.core.server] AMQ222225: Sending unexpected 
exception to the client
java.lang.NullPointerException: Cannot invoke 
"org.apache.activemq.artemis.core.server.MessageReference.getSequence()" 
because "o1" is null
    at 
org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl$MessageReferenceComparatorSequence.compare(MessageReferenceImpl.java:50)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl$MessageReferenceComparatorSequence.compare(MessageReferenceImpl.java:42)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.collections.LinkedListImpl.scanLeft(LinkedListImpl.java:286)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.collections.LinkedListImpl.addSorted(LinkedListImpl.java:248)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.collections.PriorityLinkedListImpl.addSorted(PriorityLinkedListImpl.java:93)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.internalAddSorted(QueueImpl.java:3069)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.addSorted(QueueImpl.java:1180)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.addSorted(QueueImpl.java:1215)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.postRollback(QueueImpl.java:4247)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.RefsOperation.afterRollback(RefsOperation.java:131)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.transaction.impl.TransactionImpl.afterRollback(TransactionImpl.java:600)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.transaction.impl.TransactionImpl$4.done(TransactionImpl.java:436)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.persistence.impl.journal.OperationContextImpl.executeOnCompletion(OperationContextImpl.java:226)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.persistence.impl.journal.OperationContextImpl.executeOnCompletion(OperationContextImpl.java:168)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.persistence.impl.journal.AbstractJournalStorageManager.afterCompleteOperations(AbstractJournalStorageManager.java:352)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.transaction.impl.TransactionImpl.internalRollback(TransactionImpl.java:427)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.transaction.impl.TransactionImpl.rollback(TransactionImpl.java:400)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.close(ServerConsumerImpl.java:594)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.closeConsumer(ServerSessionImpl.java:1765)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler.slowPacketHandler(ServerSessionPacketHandler.java:627)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler.onMessagePacket(ServerSessionPacketHandler.java:319)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at org.apache.activemq.artemis.utils.actors.Actor.doTask(Actor.java:32) 
~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
 [?:?]
    at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
 [?:?]
    at 
org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
 [artemis-commons-2.35.0.jar:2.35.0]{noformat}

We understand that this is related and we haven't found out why it happens. Any 
ideas?

 

  was:
Testing by sending a lot of messages by brokers, about 200,000. We have noticed 
that the count of messages in the queue is broken. When we finished consuming 
messages, the website showed us that we had 22 messages. We checked if they 
were scheduled and using the jolokia api it told us that we had no scheduled 
messages.

Checking the log we see that there are 22 null pointer exception with:

WARN  [org.apache.activemq.artemis.core.server] AMQ222225: Sending unexpected 
exception to the client
java.lang.NullPointerException: Cannot invoke 
"org.apache.activemq.artemis.core.server.MessageReference.getSequence()" 
because "o1" is null
    at 
org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl$MessageReferenceComparatorSequence.compare(MessageReferenceImpl.java:50)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl$MessageReferenceComparatorSequence.compare(MessageReferenceImpl.java:42)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.collections.LinkedListImpl.scanLeft(LinkedListImpl.java:286)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.collections.LinkedListImpl.addSorted(LinkedListImpl.java:248)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.collections.PriorityLinkedListImpl.addSorted(PriorityLinkedListImpl.java:93)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.internalAddSorted(QueueImpl.java:3069)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.addSorted(QueueImpl.java:1180)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.addSorted(QueueImpl.java:1215)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.QueueImpl.postRollback(QueueImpl.java:4247)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.RefsOperation.afterRollback(RefsOperation.java:131)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.transaction.impl.TransactionImpl.afterRollback(TransactionImpl.java:600)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.transaction.impl.TransactionImpl$4.done(TransactionImpl.java:436)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.persistence.impl.journal.OperationContextImpl.executeOnCompletion(OperationContextImpl.java:226)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.persistence.impl.journal.OperationContextImpl.executeOnCompletion(OperationContextImpl.java:168)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.persistence.impl.journal.AbstractJournalStorageManager.afterCompleteOperations(AbstractJournalStorageManager.java:352)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.transaction.impl.TransactionImpl.internalRollback(TransactionImpl.java:427)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.transaction.impl.TransactionImpl.rollback(TransactionImpl.java:400)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.close(ServerConsumerImpl.java:594)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.closeConsumer(ServerSessionImpl.java:1765)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler.slowPacketHandler(ServerSessionPacketHandler.java:627)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler.onMessagePacket(ServerSessionPacketHandler.java:319)
 ~[artemis-server-2.35.0.jar:2.35.0]
    at org.apache.activemq.artemis.utils.actors.Actor.doTask(Actor.java:32) 
~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
 ~[artemis-commons-2.35.0.jar:2.35.0]
    at 
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
 [?:?]
    at 
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
 [?:?]
    at 
org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
 [artemis-commons-2.35.0.jar:2.35.0]

We understand that this is related and we haven't found out why it happens. Any 
ideas?

 


> AMQ222225: Sending unexpected exception to the client.Message count failure
> ---------------------------------------------------------------------------
>
>                 Key: ARTEMIS-5164
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-5164
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>    Affects Versions: 2.35.0
>         Environment: <cluster-connections>
>          <cluster-connection name="mccon">
>         <connection-ttl>60000</connection-ttl>
>             <call-timeout>5000</call-timeout>
>             <retry-interval>500</retry-interval>
>             <retry-interval-multiplier>1.0</retry-interval-multiplier>
>             <max-retry-interval>5000</max-retry-interval>
>             <initial-connect-attempts>-1</initial-connect-attempts>
>             <reconnect-attempts>-1</reconnect-attempts>
>     <forward-when-no-consumers>false</forward-when-no-consumers>    
>             <connector-ref>artemis</connector-ref>
>             <message-load-balancing>ON_DEMAND</message-load-balancing>
>             <max-hops>1</max-hops>
>             <static-connectors>
>                <connector-ref>node0</connector-ref>
>                <connector-ref>node1</connector-ref>
>                <connector-ref>node2</connector-ref>
>  
>             </static-connectors>
>          </cluster-connection>
>       </cluster-connections>
>            Reporter: jjmarin
>            Priority: Major
>         Attachments: broker.xml
>
>
> Testing by sending a lot of messages by brokers, about 200,000. We have 
> noticed that the count of messages in the queue is broken. When we finished 
> consuming messages the website showed us that we had 22 messages. We checked 
> if they were scheduled and using the Jolokia API. It told us that we had no 
> scheduled messages.
> Checking the log we see that there are 22 instances of 
> {{NullPointerException}} with:
> {noformat}
> WARN  [org.apache.activemq.artemis.core.server] AMQ222225: Sending unexpected 
> exception to the client
> java.lang.NullPointerException: Cannot invoke 
> "org.apache.activemq.artemis.core.server.MessageReference.getSequence()" 
> because "o1" is null
>     at 
> org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl$MessageReferenceComparatorSequence.compare(MessageReferenceImpl.java:50)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.server.impl.MessageReferenceImpl$MessageReferenceComparatorSequence.compare(MessageReferenceImpl.java:42)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.utils.collections.LinkedListImpl.scanLeft(LinkedListImpl.java:286)
>  ~[artemis-commons-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.utils.collections.LinkedListImpl.addSorted(LinkedListImpl.java:248)
>  ~[artemis-commons-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.utils.collections.PriorityLinkedListImpl.addSorted(PriorityLinkedListImpl.java:93)
>  ~[artemis-commons-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.server.impl.QueueImpl.internalAddSorted(QueueImpl.java:3069)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.server.impl.QueueImpl.addSorted(QueueImpl.java:1180)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.server.impl.QueueImpl.addSorted(QueueImpl.java:1215)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.server.impl.QueueImpl.postRollback(QueueImpl.java:4247)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.server.impl.RefsOperation.afterRollback(RefsOperation.java:131)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.transaction.impl.TransactionImpl.afterRollback(TransactionImpl.java:600)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.transaction.impl.TransactionImpl$4.done(TransactionImpl.java:436)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.persistence.impl.journal.OperationContextImpl.executeOnCompletion(OperationContextImpl.java:226)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.persistence.impl.journal.OperationContextImpl.executeOnCompletion(OperationContextImpl.java:168)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.persistence.impl.journal.AbstractJournalStorageManager.afterCompleteOperations(AbstractJournalStorageManager.java:352)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.transaction.impl.TransactionImpl.internalRollback(TransactionImpl.java:427)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.transaction.impl.TransactionImpl.rollback(TransactionImpl.java:400)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.close(ServerConsumerImpl.java:594)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.server.impl.ServerSessionImpl.closeConsumer(ServerSessionImpl.java:1765)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler.slowPacketHandler(ServerSessionPacketHandler.java:627)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.core.protocol.core.ServerSessionPacketHandler.onMessagePacket(ServerSessionPacketHandler.java:319)
>  ~[artemis-server-2.35.0.jar:2.35.0]
>     at org.apache.activemq.artemis.utils.actors.Actor.doTask(Actor.java:32) 
> ~[artemis-commons-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
>  ~[artemis-commons-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:57)
>  ~[artemis-commons-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:32)
>  ~[artemis-commons-2.35.0.jar:2.35.0]
>     at 
> org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:68)
>  ~[artemis-commons-2.35.0.jar:2.35.0]
>     at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
>  [?:?]
>     at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
>  [?:?]
>     at 
> org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118)
>  [artemis-commons-2.35.0.jar:2.35.0]{noformat}
> We understand that this is related and we haven't found out why it happens. 
> Any ideas?
>  



--
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