Ошибка KahaDB "На диске не осталось места". Как это решить?
Я использую activemq. KahaDB является хранилищем сообщений по умолчанию в activemq. Но он продолжает увеличиваться в размерах и в конечном итоге заканчивается дискового пространства. Даже если все сообщения подтверждены, они все еще увеличиваются в размере и постоянно создают новые файлы журналов в своем хранилище данных.
Я не установил никаких свойств, связанных с KahaDB, он использует свойства по умолчанию.
broker = new BrokerService();
TransportConnector connector = new TransportConnector();
connector.setUri(new URI("tcp://localhost:61616"));
broker.addConnector(connector);
broker.start();
Это единственные свойства, которые я установил для брокера. Может кто-нибудь сказать мне свойства, которые я могу использовать на KahaDB, чтобы не было этой ошибки?
1 ответ
Журналы и индексные файлы KahaDB остаются рядом по ряду причин, некоторые из которых не всегда очевидны, поэтому вам нужно выполнить некоторую отладку и посмотреть, что хранит файлы журналов, это может быть так же просто, как одно неподтвержденное сообщение, содержащее весь файл журнала, а в некоторых случаях будущие файлы журнала, которые отслеживают подтверждения для других сообщений в этом журнале.
На сайте ActiveMQ есть хорошая статья о том, как разобраться в этом, чтобы вы могли видеть, что в вашем случае поддерживает все в журналах. Также рекомендуется использовать последнюю версию, потому что все исправлено, чтобы журналы не торчали, когда это не нужно.