Since you're connecting to an embedded broker, there is no need to use the
'failover' transport. 

Are you reusing Connection objects?


zouzounos wrote:
> 
> Hi,
> I'm using activemq4.1.1 under tomcat 6. I am using the next entry in the
> Context.xml:
>  <Resource name="jms/ConnectionFactory" auth="Container"
> type="org.apache.activemq.ActiveMQConnectionFactory" description="JMS
> Connection Factory"
> factory="org.apache.activemq.jndi.JNDIReferenceFactory" 
> brokerURL="failover:vm://localhost?broker.persistent=false" 
> brokerName="LocalActiveMQBroker"/>
> 
> As the d=ocumentation says, the broker is created upon creation of a
> connection
> The problem that i face is that after releasing the connection using
> Connection.close() (and if no other connection is still active) the
> broker, together with all its queues, go down. So when another connection
> (say a Consumer connection) is established, the broker goes live again but
> there is nothing inside the queues for the consumer to receive, since it
> seems that the queues are recreated from scratch.
> 
> If the producer does not close the connection, then the broker is always
> active, but the connection objects + all other backport objects created by
> the connection are never garbage collected. This eventually, leads to Heap
> Memory Error.
> 
> When the broker runs  in tcp mode tcp://localhost:port as a separate
> process, everything works fine in all cases.
> 
> Does anyone has an idea why is this happening with the embedded broker?
> 
> Thanks
>                
> 

-- 
View this message in context: 
http://www.nabble.com/VM-Transport-problem-when-closing-connections-tf4508319s2354.html#a12859302
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to