[ https://issues.apache.org/jira/browse/AMQ-6496?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Timothy Bish closed AMQ-6496. ----------------------------- Resolution: Won't Fix LevelDB support has been deprecated and is not longer being developed by the project. Recommended to switch to KahaDB which is stable and still supported. > levelDB log files fill up disk on 5.14.0 & 5.14.1 releases > ---------------------------------------------------------- > > Key: AMQ-6496 > URL: https://issues.apache.org/jira/browse/AMQ-6496 > Project: ActiveMQ > Issue Type: Bug > Components: activemq-leveldb-store > Affects Versions: 5.14.0, 5.14.1 > Reporter: Patrick Peng > > My project is currently running on activemq 5.13.3 with replicated levelDB. > After upgraded to either 5.14.0 or 5.14.1, the message delivery works fine > but the levelDB log files didn't get deleted properly and eventually fill up > the disk space in data directory. The issue doesn't occur on activemq 5.13.4. > The test environment has 1 producer, 1 consumer (with autoAct) and messages > subscribed/published thru VirtualTopic. > here is the activemq.xml > <?xml version="1.0" encoding="UTF-8"?><!-- > Licensed to the Apache Software Foundation (ASF) under one or more > contributor license agreements. See the NOTICE file distributed with > this work for additional information regarding copyright ownership. > The ASF licenses this file to You under the Apache License, Version 2.0 > (the "License"); you may not use this file except in compliance with > the License. You may obtain a copy of the License at > http://www.apache.org/licenses/LICENSE-2.0 > Unless required by applicable law or agreed to in writing, software > distributed under the License is distributed on an "AS IS" BASIS, > WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. > See the License for the specific language governing permissions and > limitations under the License. > --><!-- START SNIPPET: example --><beans > xmlns="http://www.springframework.org/schema/beans" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://www.springframework.org/schema/beans > http://www.springframework.org/schema/beans/spring-beans.xsd > http://activemq.apache.org/schema/core > http://activemq.apache.org/schema/core/activemq-core.xsd"> > <bean > class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig" > id="environmentVariablesConfiguration"> > <property name="algorithm" value="PBEWithMD5AndDES"/> > <property name="passwordEnvName" value="ENCRYPTION_KEY"/> > </bean> > <bean class="org.jasypt.encryption.pbe.StandardPBEStringEncryptor" > id="configurationEncryptor"> > <property name="config" > ref="environmentVariablesConfiguration"/> > </bean> > <bean > class="org.jasypt.spring31.properties.EncryptablePropertyPlaceholderConfigurer" > id="propertyConfigurer"> > <constructor-arg ref="configurationEncryptor"/> > <property name="location" > value="file:${activemq.base}/conf/credentials.properties"/> > </bean> > <!-- Allows accessing the server log --> > <bean class="io.fabric8.insight.log.log4j.Log4jLogQuery" > destroy-method="stop" id="logQuery" init-method="start" lazy-init="false" > scope="singleton"> > </bean> > <!-- > The <broker> element is used to configure the ActiveMQ broker. > --> > <broker brokerName="ha" dataDirectory="${activemq.data}" > xmlns="http://activemq.apache.org/schema/core"> > <destinationPolicy> > <policyMap> > <policyEntries> > <policyEntry topic=">"> > <!-- The constantPendingMessageLimitStrategy is used to > prevent > slow topic consumers to block producers and affect > other consumers > by limiting the number of messages that are retained > For more information, see: > > http://activemq.apache.org/slow-consumer-handling.html > --> > <pendingMessageLimitStrategy> > <constantPendingMessageLimitStrategy limit="1000"/> > </pendingMessageLimitStrategy> > </policyEntry> > </policyEntries> > </policyMap> > </destinationPolicy> > <!-- > The managementContext is used to configure how ActiveMQ is > exposed in > JMX. By default, ActiveMQ uses the MBean server that is started by > the JVM. For more information, see: > http://activemq.apache.org/jmx.html > --> > <managementContext> > <managementContext createConnector="false"/> > </managementContext> > <!-- > Configure message persistence for the broker. The default > persistence > mechanism is the KahaDB store (identified by the kahaDB tag). > For more information, see: > http://activemq.apache.org/persistence.html > --> > <persistenceAdapter><replicatedLevelDB > bind="tcp://10.129.176.145:61619" > directory="/var/avaya/data/activemq/leveldb" hostname="10.129.176.145" > replicas="3" sync="local_disk" > zkAddress="10.129.176.145:2181,10.129.176.147:2181,10.129.176.149:2181" > zkPassword="password" zkPath="/var/avaya/data/activemq/leveldb-stores" > zkSessionTimeout="5s"/></persistenceAdapter> > <!-- > The systemUsage controls the maximum amount of space the broker > will > use before disabling caching and/or slowing down producers. For > more information, see: > http://activemq.apache.org/producer-flow-control.html > --> > <systemUsage> > <systemUsage> > <memoryUsage> > <memoryUsage percentOfJvmHeap="70"/> > </memoryUsage> > <storeUsage> > <storeUsage limit="5 gb"/> > </storeUsage> > <tempUsage> > <tempUsage limit="2 gb"/> > </tempUsage> > </systemUsage> > </systemUsage> > <destinationInterceptors> > <virtualDestinationInterceptor> > <virtualDestinations> > <virtualTopic name=">" prefix="VTConsumer.*.*."/> > </virtualDestinations> > </virtualDestinationInterceptor> > </destinationInterceptors> > <!-- > The transport connectors expose ActiveMQ over a given protocol to > clients and other brokers. For more information, see: > http://activemq.apache.org/configuring-transports.html > --> > <transportConnectors> > <!-- DOS protection, limit concurrent connections to 1000 and > frame size to 100MB --> > <!-- comment out un-needed ports > <transportConnector name="amqp" > uri="amqp://0.0.0.0:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> > <transportConnector name="stomp" > uri="stomp://0.0.0.0:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> > <transportConnector name="mqtt" > uri="mqtt://0.0.0.0:1883?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> > <transportConnector name="ws" > uri="ws://0.0.0.0:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> > --> > <transportConnector name="openwire" > uri="ssl://10.129.176.146:61617?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600&amp;needClientAuth=true&amp;transport.enabledProtocols=TLSv1"/></transportConnectors> > <sslContext> > <sslContext > keyStore="/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/config/cells/vf-zr21Node01Cell/nodes/vf-zr21Node01/key.jks" > keyStorePassword="${cert.passwd}" > trustStore="/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/config/cells/vf-zr21Node01Cell/nodes/vf-zr21Node01/trust.jks" > trustStorePassword="${cert.passwd}"/> > </sslContext> > <!-- destroy the spring context on shutdown to stop jetty --> > <shutdownHooks> > <bean class="org.apache.activemq.hooks.SpringContextHook" > xmlns="http://www.springframework.org/schema/beans"/> > </shutdownHooks> > </broker> > <!-- > Enable web consoles, REST and Ajax APIs and demos > The web consoles requires by default login, you can disable this in > the jetty.xml file > Take a look at ${ACTIVEMQ_HOME}/conf/jetty.xml for more details > <import resource="jetty.xml"/> > --> > </beans><!-- END SNIPPET: example --> -- This message was sent by Atlassian JIRA (v6.3.4#6332)