У нас странная проблема.
Есть две эквивалентные темы: topicA
и topicB
.Темы создаются динамически.Потребители подписываются на VirtualTopic.topicA
и VirtualTopic.topicB
соответственно.
Потребители получают сообщения.В каждой виртуальной теме мы видим одинаковое количество поступивших и снятых сообщений.
Однако topicA
говорит, что у него есть активные подписчики, а topicB
- нет.Все сообщения в topicA
исключены.topicB
показывает то же количество сообщений, которое содержится в VirtualTopic.topicB
, но ни одно из сообщений не удаляется из очереди в topicB
.
Похоже, ActiveMQ просто копирует сообщения из обычной в виртуальную тему без вывода сообщений.Но не ясно, почему он делает это только для одной из тем.
Код, который подписывает потребителей, является тем же самым.Код, который создает сообщения, одинаков.Конфигурация отличается только названием тем.
Может кто-нибудь дать подсказку, что может определить эту разницу в поведении?