I'm running ActiveMQ 5.10 in production on a Windows Server.

The system has been running fine for a few years now except for a connection
issue where we have orphaned connections to
ActiveMQ.Advisory.TempQueue,ActiveMQ.Advisory.TempTopic.

Over time it will use up all available memory and the system will stop
accepting messages.
I reset activemq and it works fine for about 60 days then run's out of
memory.

I can not id the client as it comes from a Mirth connect system with a large
number of channels that connect to ActiveMQ. 

We are getting ready to move to a Network of Brokers model in the cloud so
disabling the TempQueues is not an option.


Any ideas how to id the source or correct the issue.

Thanks for the help.

Mike

*My ActiveMQ.xml*



<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://camel.apache.org/schema/spring
http://camel.apache.org/schema/spring/camel-spring.xsd
  http://activemq.apache.org/schema/core
http://activemq.apache.org/schema/core/activemq-core.xsd";>

        
        <bean
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
                <property name="locations">
                        
<value>file:${activemq.conf}/credentials.properties</value>
                </property>
        </bean>

        
        <bean id="logQuery" 
class="org.fusesource.insight.log.log4j.Log4jLogQuery"
          lazy-init="false" scope="singleton"
          init-method="start" destroy-method="stop">
        </bean>

        
        <bean id="activemq"
class="org.apache.activemq.camel.component.ActiveMQComponent" >
                <property name="connectionFactory">
                        <bean 
class="org.apache.activemq.ActiveMQConnectionFactory">
                                <property name="brokerURL"
value="vm://localhost?create=false&amp;waitForStart=10000" />
                                <property name="userName" 
value="${activemq.username}"/>
                                <property name="password" 
value="${activemq.password}"/>
                        </bean>
                </property>
        </bean>


        
        
        <broker xmlns="http://activemq.apache.org/schema/core"; 
populateJMSXUserID="true" useJmx="true" start="false" brokerName="localhost"
dataDirectory="${activemq.data}" offlineDurableSubscriberTimeout="259200000"
offlineDurableSubscriberTaskSchedule="3600000">
                <plugins>
                        <runtimeConfigurationPlugin checkPeriod="1000" />
                        
                        <jaasAuthenticationPlugin 
configuration="activemq-domain" />

                        
                        <authorizationPlugin>
                                <map>
                                        <authorizationMap>
                                                <authorizationEntries>
                                                        <authorizationEntry 
queue=">" read="users,admins"
write="users,admins" admin="admins" />
                                                        <authorizationEntry 
queue="USERS.>" read="users" write="users"
admin="users" />
                                                        <authorizationEntry 
queue="esb.>" read="users, admins" write="users,
admins" admin="admins" />
                                                        <authorizationEntry 
queue="GUEST.>" read="guests"
write="guests,users" admin="guests,users" />

                                                        <authorizationEntry 
topic=">" read="users,admins"
write="users,admins" admin="admins" />
                                                        <authorizationEntry 
topic="USERS.>" read="users" write="users"
admin="users" />                                                        
                                                        <authorizationEntry 
topic="GUEST.>" read="guests"
write="guests,users" admin="guests,users" />

                                                        <authorizationEntry 
topic="ActiveMQ.Advisory.>" read="guests,users"
write="guests,users" admin="guests,users"/>
                                                </authorizationEntries>

                                                
                                                
<tempDestinationAuthorizationEntry>  
                                                        
<tempDestinationAuthorizationEntry read="tempDestinationAdmins"
write="tempDestinationAdmins" admin="tempDestinationAdmins"/>
                                                
</tempDestinationAuthorizationEntry>               
                                        </authorizationMap>
                                </map>
                        </authorizationPlugin>
                </plugins>

                <destinationPolicy>
                        <policyMap>
                                <policyEntries>
                                        <policyEntry queue=">" 
gcInactiveDestinations="true"
inactiveTimoutBeforeGC="300000"/>
                                        <policyEntry topic=">" >
                                                
                                                <pendingMessageLimitStrategy>
                                                        
<constantPendingMessageLimitStrategy limit="1000"/>
                                                </pendingMessageLimitStrategy>
                                        </policyEntry>
                                </policyEntries>
                        </policyMap>
                </destinationPolicy>


                
                <managementContext>
                        <managementContext createConnector="true"/>
                </managementContext>

                
                <persistenceAdapter>
                        <kahaDB directory="${activemq.base}/data/kahadb"/>      
                </persistenceAdapter>

                
                <systemUsage>
                        <systemUsage sendFailIfNoSpaceAfterTimeout="5000">
                                <memoryUsage>
                                        <memoryUsage percentOfJvmHeap="70" />
                                </memoryUsage>
                                <storeUsage>
                                        <storeUsage limit="40 gb"/>
                                </storeUsage>
                                <tempUsage>
                                        <tempUsage limit="6 gb"/>
                                </tempUsage>
                        </systemUsage>
                </systemUsage>

                
                <transportConnectors>
                        
                        <transportConnector name="openwire"
uri="tcp://0.0.0.0:61616?maximumConnections=5000&amp;wireFormat.maxFrameSize=104857600"/>
                        <transportConnector name="amqp"
uri="amqp://0.0.0.0:5672?maximumConnections=5000&amp;wireFormat.maxFrameSize=104857600"/>
                        <transportConnector name="stomp"
uri="stomp://0.0.0.0:61613?maximumConnections=5000&amp;wireFormat.maxFrameSize=104857600"/>
                        <transportConnector name="mqtt"
uri="mqtt://0.0.0.0:1883?maximumConnections=5000&amp;wireFormat.maxFrameSize=104857600"/>
                        <transportConnector name="ws"
uri="ws://0.0.0.0:61614?maximumConnections=5000&amp;wireFormat.maxFrameSize=104857600"/>
                </transportConnectors>

                
                <shutdownHooks>
                        <bean 
xmlns="http://www.springframework.org/schema/beans";
class="org.apache.activemq.hooks.SpringContextHook" />
                </shutdownHooks>

        </broker>

        
        <import resource="ESBRoute1.xml"/>

        
        <import resource="jetty.xml"/>

</beans>




--
View this message in context: 
http://activemq.2283324.n4.nabble.com/Orphaned-connections-to-TempTopic-tp4716676.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to