Почему потребители ActiveMQ восстанавливаются в режиме извлечения вместо предварительной выборки

Недавно я обновил до NMS ActiveMQ 1.5.2, и когда я перезагружаю посредника, соединение и потребители восстанавливаются, но они возвращаются в режим "тянуть", что означает, что посредник не будет отправлять им сообщения автоматически. Это не так, как вела себя предыдущая версия. Мне нужно, чтобы он восстановился до прежнего состояния, а это была предварительная выборка 1000. Я думаю, что мне не хватает параметра URL-адреса аварийного переключения или чего-то в этом роде.

Кто-нибудь здесь знает, что я могу попробовать?

Мой стек:

AMQ Broker 5.4.2
Spring.NET 1.3.2
Apache.NMS 1.5.0
Apache.NMS.ActiveMQ 1.5.2
(all the latest releases)

Вот записи журнала потребителя, которые я вижу, когда перезапускаю брокера:

restore consumer: ID:csi-dul-516m-6334-634583598187658753-1:0:-1:1 in pull mode pending recovery, overriding prefetch: 1000
restore consumer: ID:csi-dul-516m-6334-634583598187658753-1:0:-1:1
restore consumer: ID:csi-dul-516m-6334-634583598187658753-1:0:1:1 in pull mode pending    
recovery, overriding prefetch: 1000
restore consumer: ID:csi-dul-516m-6334-634583598187658753-1:0:1:1
restore consumer: ID:csi-dul-516m-6334-634583598187658753-1:0:2:1 in pull mode pending    
recovery, overriding prefetch: 1000
restore consumer: ID:csi-dul-516m-6334-634583598187658753-1:0:2:1
Sending queued commands...
Transport has resumed normal operation.
Connection established
Successfully reconnected to: tcp://localhost:61616/

1 ответ

Решение

Я обновил до Apache.NMS 1.5.3, и это исправило поведение. Таким образом, 1.5.2 несет дефект и, вероятно, не должен использоваться.

Другие вопросы по тегам