You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Stephen Baker (Jira)" <ji...@apache.org> on 2022/04/04 18:56:00 UTC

[jira] [Commented] (ARTEMIS-3743) Discrepancy in message counts / address sizes

    [ https://issues.apache.org/jira/browse/ARTEMIS-3743?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17517042#comment-17517042 ] 

Stephen Baker commented on ARTEMIS-3743:
----------------------------------------

The negative delivery count is actually easily reproducible.

 

1. Setup two artemis servers with dual mirroring (I did in docker)

2. Send message to queue on first server using JMS

3. On the mirror server, using the management console, purge the queue.

4. Observe that on the first server the delivering count is now -1.

> Discrepancy in message counts / address sizes
> ---------------------------------------------
>
>                 Key: ARTEMIS-3743
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3743
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>    Affects Versions: 2.20.0
>         Environment: Artemis 2.20.0 on Centos7 with Dual Mirror, previously Artemis 2.17.0 with a different mirror connection.
>            Reporter: Stephen Baker
>            Priority: Major
>         Attachments: Screen Shot 2022-03-24 at 8.21.23 AM.png
>
>
> I have a large number of queues in my production environment with strange or impossible statistics.
> For instance in the ExpiryQueue in the attached screenshot, the number of messages reported is 11907. We only send small messages, the address memory used by that queue is 55.67MB.
> However if you include any filter, even 1=1 the number of messages is a much smaller (in the 20s).
> The removeAllMessages operation only removes and reports the smaller number, so the rest of the 11907 messages are stuck.
> As mentioned on the mailing list, there are a number of other strange attributes on this and other queues, in all of our Artemis instances in production, such a negative delivering counts and sizes (should be 0 in this case, it's the cold side of a Dual Mirror and ExpiryQueue has never had any consumers outside of management console operations):
> {code:java}
> {
>     "request": {
>         "mbean": "org.apache.activemq.artemis:broker=\"artms1\",component=addresses,address=\"ExpiryQueue\",subcomponent=queues,routing-type=\"anycast\",queue=\"ExpiryQueue\"",
>         "type": "read"
>     },
>     "value": {
>         "ConfigurationManaged": true,
>         "Address": "ExpiryQueue",
>         "MaxConsumers": -1,
>         "Exclusive": false,
>         "DurableDeliveringSize": -2322269,
>         "PersistentSize": 11415198,
>         "GroupBuckets": -1,
>         "Name": "ExpiryQueue",
>         "MessagesKilled": 39634,
>         "DelayBeforeDispatch": -1,
>         "DurableMessageCount": 11989,
>         "PreparedTransactionMessageCount": 0,
>         "ID": 7,
>         "RetroactiveResource": false,
>         "DeadLetterAddress": "DLQ",
>         "MessagesAcknowledged": 1851,
>         "MessagesExpired": 0,
>         "DeliveringSize": -2322269,
>         "LastValue": false,
>         "LastValueKey": null,
>         "DurableScheduledSize": 0,
>         "GroupRebalance": false,
>         "GroupFirstKey": null,
>         "User": null,
>         "GroupCount": 0,
>         "PurgeOnNoConsumers": false,
>         "ScheduledCount": 0,
>         "DurableScheduledCount": 0,
>         "ConsumersBeforeDispatch": 0,
>         "ExpiryAddress": "ExpiryQueue",
>         "FirstMessageAsJSON": "ERROR: java.lang.NullPointerException (class javax.management.RuntimeMBeanException)",
>         "GroupRebalancePauseDispatch": false,
>         "Paused": false,
>         "RoutingType": "ANYCAST",
>         "DurableDeliveringCount": -1961,
>         "FirstMessageAge": "ERROR: java.lang.NullPointerException (class javax.management.RuntimeMBeanException)",
>         "DurablePersistentSize": 11415198,
>         "MessagesAdded": 53584,
>         "ConsumerCount": 0,
>         "RingSize": -1,
>         "DeliveringCount": -1961,
>         "Enabled": true,
>         "AcknowledgeAttempts": 41485,
>         "Temporary": false,
>         "FirstMessageTimestamp": "ERROR: java.lang.NullPointerException (class javax.management.RuntimeMBeanException)",
>         "Filter": null,
>         "ScheduledSize": 0,
>         "Durable": true,
>         "MessageCount": 11989
>     },
>     "timestamp": 1648125827,
>     "status": 200
> }{code}



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