ActiveMQ:一个待处理的消息但队列为空 - ActiveMQ 5.12.0

时间:2016-07-18 11:30:44

标签: java activemq hawtio

我遇到与此处描述的问题相同的问题: ActiveMQ: One Pending Message but Queue is empty

Active MQ显示队列的待处理消息,但是当我单击它时它是空的。 Queue with pending message empty queue

  • 其他客户:
    • 与hawtio - 相同的行为
    • 我的java消费者
      • 不消耗任何东西
      • 重启后
      • 继续消费

我们将消息保留在默认的kaha db中,而不是Oracle DB中。我可以在表ACTIVEMQ_MSGS中看到数据库中的待处理消息。

重启activeMQ后,所有客户端都按预期工作。在管理控制台中,我可以看到消息和java消费者使用消息。

通过更新ActiveMQ 5.7.0解决了上述现有问题。 我检查了activeMQ日志,但我没有发现错误或警告。消息的制作者也没有改变。

我知道为什么会遇到这些问题吗?

1 个答案:

答案 0 :(得分:0)

问题现在解决了。 我还在活跃的mq邮件列表中询问: http://activemq.2283324.n4.nabble.com/One-Pending-Message-but-Queue-is-empty-ActiveMQ-5-12-0-td4715720.html

  • 首先,我们在客户端添加了此方法调用:

    org.apache.camel.ConsumerTemplate.doneUoW(Exchange exchange)
    

    但它最终没有解决问题

  • 此外,我们在活动的mq中出现了负载问题,这些问题并不可见(healthStatus是"良好" jvm值看起来也很好)。
    • 我们在activeMQ中有太多队列用于记录旧邮件。
    • 删除后,一切正常。