Как восстановить ActiveMQ из полного хранилища постоянных данных KahaDb?

При использовании AMQ 5.9 у меня была проблема с сетью, из-за которой сообщения в моей очереди создавали резервные копии. Я начал получать сообщения журнала

"Usage (default:store:queue://myqueue:store) percentUsage=101% usage=6254005794, limit=6144430090, ...Stopping producer...to prevent flooding queue..)

Я не смог восстановить и начать потреблять сообщения снова.

Я попытался зайти в activemq.xml, чтобы увеличить максимальное использование магазина:

 <systemUsage>
    <systemUsage>
         <storeUsage>
             <storeUsage limit="15 gb" />
         </storeUsage>
    </systemUsage>
  </systemUsage>

Я также пытался отключить управление потоком с

  <policyEntry queue=">" producerFlowControl="false"/>

Но я все еще получаю то же сообщение об ошибке.

У меня есть место на диске. В командной строке нет переопределенных настроек. Как я могу восстановить и обработать мои сообщения?

1 ответ

Решение

Я закончил тем, что нашел уродливый (но эффективный) способ обойти это. Если вы подключаетесь к activemq через JMX (jconsole), вы можете перейти к mbean org.apache.activemq.Broker и найти атрибут StoreLimit. Вы можете вручную увеличить это значение в JConsole, после чего activemq вскоре возобновит обработку сообщений.

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