You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Filip Hanik - Dev Lists <de...@hanik.com> on 2008/05/12 20:28:39 UTC

memory usage dead lock?

I am publishing to a temporary topic, producing fast, consuming slow
after a while the memory usage kicks in on the server.

if I disconnect the consumer/producer (ie, kill the client) the server 
remains stuck in this state, and nothing gets cleaned up, and the server 
is unusable.

Is this a known issue? should I open a JIRA?

ActiveMQ 5.0.0

Filip

"ActiveMQ Transport: tcp:///127.0.0.1:2247" daemon prio=4 tid=0x02ebc538 
nid=0x1d08 in Object.wait() [0x040af000..0x040a
fc68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x230d49a0> (a java.lang.Object)
        at 
org.apache.activemq.usage.MemoryUsage.waitForSpace(MemoryUsage.java:85)
        - locked <0x230d49a0> (a java.lang.Object)
        at 
org.apache.activemq.usage.MemoryUsage.waitForSpace(MemoryUsage.java:79)
        at org.apache.activemq.broker.region.Topic.send(Topic.java:354)
        at 
org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:328)
        at 
org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:402)
        at 
org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:224)
        at 
org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:125)
        at 
org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:95)
        at 
org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:125)
        at 
org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135)
        at 
org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:434)
        at 
org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:623)
        at 
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:281)
        at 
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:178)
        at 
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
        at 
org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:134)
        at 
org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:138)
        - locked <0x231a3878> (a 
org.apache.activemq.transport.InactivityMonitor$1)
        at 
org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83) 


Re: memory usage dead lock?

Posted by Rob Davies <ra...@gmail.com>.
On 13 May 2008, at 16:08, Filip Hanik - Dev Lists wrote:

> Rob Davies wrote:
>>
>> On 12 May 2008, at 19:28, Filip Hanik - Dev Lists wrote:
>>
>>> I am publishing to a temporary topic, producing fast, consuming slow
>>> after a while the memory usage kicks in on the server.
>>>
>>> if I disconnect the consumer/producer (ie, kill the client) the  
>>> server remains stuck in this state, and nothing gets cleaned up,  
>>> and the server is unusable.
>>>
>>> Is this a known issue? should I open a JIRA?
>>>
>>> ActiveMQ 5.0.0
>>>
>>> Filip
>>>
>>> "ActiveMQ Transport: tcp:///127.0.0.1:2247" daemon prio=4  
>>> tid=0x02ebc538 nid=0x1d08 in Object.wait() [0x040af000..0x040a
>>> fc68]
>>>      at java.lang.Object.wait(Native Method)
>>>      - waiting on <0x230d49a0> (a java.lang.Object)
>>>      at  
>>> org 
>>> .apache.activemq.usage.MemoryUsage.waitForSpace(MemoryUsage.java:85)
>>>      - locked <0x230d49a0> (a java.lang.Object)
>>>      at  
>>> org 
>>> .apache.activemq.usage.MemoryUsage.waitForSpace(MemoryUsage.java:79)
>>>      at org.apache.activemq.broker.region.Topic.send(Topic.java:354)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq.broker.region.AbstractRegion.send(AbstractRegion.java:328)
>>>      at  
>>> org 
>>> .apache.activemq.broker.region.RegionBroker.send(RegionBroker.java: 
>>> 402)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq.broker.TransactionBroker.send(TransactionBroker.java:224)
>>>      at  
>>> org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:125)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq 
>>> .broker 
>>> .CompositeDestinationBroker.send(CompositeDestinationBroker.java:95)
>>>      at  
>>> org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:125)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java: 
>>> 135)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq 
>>> .broker 
>>> .TransportConnection.processMessage(TransportConnection.java:434)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:623)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq 
>>> .broker.TransportConnection.service(TransportConnection.java:281)
>>>      at org.apache.activemq.broker.TransportConnection 
>>> $1.onCommand(TransportConnection.java:178)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq.transport.TransportFilter.onCommand(TransportFilter.java: 
>>> 67)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq 
>>> .transport 
>>> .WireFormatNegotiator.onCommand(WireFormatNegotiator.java:134)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq 
>>> .transport.InactivityMonitor.onCommand(InactivityMonitor.java:138)
>>>      - locked <0x231a3878> (a  
>>> org.apache.activemq.transport.InactivityMonitor$1)
>>>      at  
>>> org 
>>> .apache 
>>> .activemq 
>>> .transport.TransportSupport.doConsume(TransportSupport.java:83)
>>
>>
>> This is a known issue in 5.0 - why aren't you using 5.1?
> it's simply not feasible to upgrade a production environment  
> everytime a new "stable" release comes out, and one can not  
> guarantee that no other issues are present in 5.1. one would have to  
> do a complete regression suite,
> this issue we can work around for now
>
> Filip
>
>>
>>
>>
>>
>> cheers,
>>
>> Rob
>>
>> http://open.iona.com/ -Enterprise Open Integration
>> http://rajdavies.blogspot.com/
>>
>>
>>
>>
>>
>
You could always use the FUSE versions - see here: http://open.iona.com/products/enterprise-activemq/






cheers,

Rob

http://open.iona.com/ -Enterprise Open Integration
http://rajdavies.blogspot.com/




Re: memory usage dead lock?

Posted by Filip Hanik - Dev Lists <de...@hanik.com>.
Rob Davies wrote:
>
> On 12 May 2008, at 19:28, Filip Hanik - Dev Lists wrote:
>
>> I am publishing to a temporary topic, producing fast, consuming slow
>> after a while the memory usage kicks in on the server.
>>
>> if I disconnect the consumer/producer (ie, kill the client) the 
>> server remains stuck in this state, and nothing gets cleaned up, and 
>> the server is unusable.
>>
>> Is this a known issue? should I open a JIRA?
>>
>> ActiveMQ 5.0.0
>>
>> Filip
>>
>> "ActiveMQ Transport: tcp:///127.0.0.1:2247" daemon prio=4 
>> tid=0x02ebc538 nid=0x1d08 in Object.wait() [0x040af000..0x040a
>> fc68]
>>       at java.lang.Object.wait(Native Method)
>>       - waiting on <0x230d49a0> (a java.lang.Object)
>>       at 
>> org.apache.activemq.usage.MemoryUsage.waitForSpace(MemoryUsage.java:85)
>>       - locked <0x230d49a0> (a java.lang.Object)
>>       at 
>> org.apache.activemq.usage.MemoryUsage.waitForSpace(MemoryUsage.java:79)
>>       at org.apache.activemq.broker.region.Topic.send(Topic.java:354)
>>       at 
>> org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:328) 
>>
>>       at 
>> org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:402) 
>>
>>       at 
>> org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:224) 
>>
>>       at 
>> org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:125)
>>       at 
>> org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:95) 
>>
>>       at 
>> org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:125)
>>       at 
>> org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:135) 
>>
>>       at 
>> org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:434) 
>>
>>       at 
>> org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:623) 
>>
>>       at 
>> org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:281) 
>>
>>       at 
>> org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:178) 
>>
>>       at 
>> org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:67) 
>>
>>       at 
>> org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:134) 
>>
>>       at 
>> org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:138) 
>>
>>       - locked <0x231a3878> (a 
>> org.apache.activemq.transport.InactivityMonitor$1)
>>       at 
>> org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83) 
>>
>
>
> This is a known issue in 5.0 - why aren't you using 5.1?
it's simply not feasible to upgrade a production environment everytime a 
new "stable" release comes out, and one can not guarantee that no other 
issues are present in 5.1. one would have to do a complete regression 
suite,
this issue we can work around for now

Filip

>
>
>
>
> cheers,
>
> Rob
>
> http://open.iona.com/ -Enterprise Open Integration
> http://rajdavies.blogspot.com/
>
>
>
>
>


Re: memory usage dead lock?

Posted by Rob Davies <ra...@gmail.com>.
On 12 May 2008, at 19:28, Filip Hanik - Dev Lists wrote:

> I am publishing to a temporary topic, producing fast, consuming slow
> after a while the memory usage kicks in on the server.
>
> if I disconnect the consumer/producer (ie, kill the client) the  
> server remains stuck in this state, and nothing gets cleaned up, and  
> the server is unusable.
>
> Is this a known issue? should I open a JIRA?
>
> ActiveMQ 5.0.0
>
> Filip
>
> "ActiveMQ Transport: tcp:///127.0.0.1:2247" daemon prio=4  
> tid=0x02ebc538 nid=0x1d08 in Object.wait() [0x040af000..0x040a
> fc68]
>       at java.lang.Object.wait(Native Method)
>       - waiting on <0x230d49a0> (a java.lang.Object)
>       at  
> org.apache.activemq.usage.MemoryUsage.waitForSpace(MemoryUsage.java: 
> 85)
>       - locked <0x230d49a0> (a java.lang.Object)
>       at  
> org.apache.activemq.usage.MemoryUsage.waitForSpace(MemoryUsage.java: 
> 79)
>       at org.apache.activemq.broker.region.Topic.send(Topic.java:354)
>       at  
> org 
> .apache 
> .activemq.broker.region.AbstractRegion.send(AbstractRegion.java:328)
>       at  
> org 
> .apache.activemq.broker.region.RegionBroker.send(RegionBroker.java: 
> 402)
>       at  
> org 
> .apache 
> .activemq.broker.TransactionBroker.send(TransactionBroker.java:224)
>       at  
> org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:125)
>       at  
> org 
> .apache 
> .activemq 
> .broker 
> .CompositeDestinationBroker.send(CompositeDestinationBroker.java:95)
>       at  
> org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:125)
>       at  
> org 
> .apache 
> .activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java: 
> 135)
>       at  
> org 
> .apache 
> .activemq 
> .broker.TransportConnection.processMessage(TransportConnection.java: 
> 434)
>       at  
> org 
> .apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java: 
> 623)
>       at  
> org 
> .apache 
> .activemq 
> .broker.TransportConnection.service(TransportConnection.java:281)
>       at org.apache.activemq.broker.TransportConnection 
> $1.onCommand(TransportConnection.java:178)
>       at  
> org 
> .apache 
> .activemq.transport.TransportFilter.onCommand(TransportFilter.java:67)
>       at  
> org 
> .apache 
> .activemq 
> .transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java: 
> 134)
>       at  
> org 
> .apache 
> .activemq 
> .transport.InactivityMonitor.onCommand(InactivityMonitor.java:138)
>       - locked <0x231a3878> (a  
> org.apache.activemq.transport.InactivityMonitor$1)
>       at  
> org 
> .apache 
> .activemq.transport.TransportSupport.doConsume(TransportSupport.java: 
> 83)


This is a known issue in 5.0 - why aren't you using 5.1?




cheers,

Rob

http://open.iona.com/ -Enterprise Open Integration
http://rajdavies.blogspot.com/