简体   繁体   English

ActiveMQ消息未从复合队列转发到单个DLQ

[英]ActiveMQ messages not forwarded from composite queue to individual DLQs

I am using ActiveMQ version 5.9.0. 我正在使用ActiveMQ版本5.9.0。

I am running into a situation where messages in composite destinations go to only one of the DLQ destinations instead of going to their individual DLQ destinations. 我遇到一种情况,复合目标中的消息仅到达一个DLQ目的地,而不是单个DLQ目的地。 eg 例如

<policyEntry queue=">">
   <deadLetterStrategy>         
    <individualDeadLetterStrategy queuePrefix="DLQ." useQueueForQueueMessages="true"/>
   </deadLetterStrategy>
</policyEntry>
<compositeQueue name="order.queue">
 <forwardTo>
  <queue physicalName="order.queue-1" />
  <queue physicalName="order.queue-2" />
 </forwardTo>
</compositeQueue>

In above configuration, instead of going to the individual DLQ from order.queue-1 and order.queue-2, messages from order.queue-2 goes to DLQ.order.queue-2 but messages from order.queue-1 just disappear. 在上述配置中,不是从order.queue-1和order.queue-2进入单个DLQ,而是从order.queue-2到达DLQ.order.queue-2的消息,但来自order.queue-1的消息消失了。

Has anybody run across it? 有人碰过吗? Seems like a bug in ActiveMQ. 好像是ActiveMQ中的错误。

Any suggestion would help. 任何建议都会有所帮助。

It was caused by auditing enabled by default, I had to set enableAudit="false" 这是默认情况下启用的审核引起的,我必须设置enableAudit =“ false”

<policyEntry queue=">">
 <deadLetterStrategy>         
  <individualDeadLetterStrategy queuePrefix="DLQ." useQueueForQueueMessages="true" enableAudit="false"/>
 </deadLetterStrategy>
</policyEntry>
<compositeQueue name="order.queue">
 <forwardTo>
  <queue physicalName="order.queue-1" />
  <queue physicalName="order.queue-2" />
 </forwardTo>
</compositeQueue>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM