activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "james strachan (JIRA)" <>
Subject [jira] Commented: (AMQ-674) Composite Destination persisted messages never get cleaned up, halt message producers
Date Tue, 04 Apr 2006 09:18:58 GMT
    [ ] 

james strachan commented on AMQ-674:

I'm with you now. Composite destinations should work fine for you - its a way of using multiple
queues to simulate durable topics - which is a good thing in general. (I'd like to provide
queue-topic unification at some point so you can see durable topics as being like multiple
virtual queues which multiple consumers can consume on the same queue to get load balancing
- while avoiding the multiple-persistence of the message to each queue which happens now with
composite destinations - but thats another topic).

My mention of RAM is that this error messsage...

14:45:03 WARN Queue is full, waiting for it to be dequeued.

is created when the queue dispatcher uses up its available RAM because it keeps all unconsumed
queue messages in RAM until they are consumed. So its sounding like some messages on some
queue are not getting consumed. Unfortunately in 3.x there's no easy way to look and see for
sure - if you used 4.x you could just use JConsole to see all the queues and what messages
are on each etc.

> Composite Destination persisted messages never get cleaned up, halt message producers
> -------------------------------------------------------------------------------------
>          Key: AMQ-674
>          URL:
>      Project: ActiveMQ
>         Type: Bug

>   Components: Broker, Message Store
>     Versions: 3.2.1
>     Reporter: Paul Smith
>     Priority: Blocker
>      Fix For: 4.0 RC1

> well, we've just got bit by something huge.  
> Previously we have been shipping messages from producer to consumer via a named Queue
'Index2.EntityIncrementalIndexer', where the machine index2 has a consumer called "EntityIncrementalIndexer"
using persisted messages.
> The design used Composite destinations so that the destination could be:
> "Index1.EntityIncrementalIndexer,Index2.EntityIncrementalIndexer" 
> and have the 2 hosts get sent the same message simply, and if one goes down, it'll catch
up later.  This gave us the ability to have a mirrored configuration, and go tertiary later
if we want simply by adding a new name in the composite destation.
> With a single name, this works great, been working fine for months.  Yesterday we activated
the _true_ composite destination, and both machines started getting their messages fine. 

> no problems so far, BUT, 12 hours later we have noticed that the broker has now stopped
accepting messages, and a look at the activemq_msgs table shows 33228 messages 

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message