activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rob Davies <rajdav...@gmail.com>
Subject Re: Duplicate message delivered to consumers on queue with AMQ persistence
Date Tue, 09 Oct 2007 10:43:25 GMT
Hi David,

are you trying this with the persistentIndex option?

thanks,

Rob
On Oct 9, 2007, at 6:28 AM, David Sitsky wrote:

> Hi Rob,
>
> Looks like the original issue I reported with duplicate messages  
> being dispatched has resurfaced again.  I don't see it happening in  
> the original situation where I saw it with kaha persistence, but  
> now with different data loaded in my application.
>
> This time the issue occurs with AMQ persistence.  I have tried to  
> add as much detail as possible here: https://issues.apache.org/ 
> activemq/browse/AMQ-1452.
>
> Unfortunately, I have had no luck with reproducing this issue in a  
> unit test... but I hope the message logs attached to the issue  
> might provide you with some clues.
>
> Cheers,
> David
>
> David Sitsky wrote:
>> Hi Rob,
>> Yes - I haven't seen the issue in my application since updating.   
>> Many thanks again.
>> Cheers,
>> David
>> Rob Davies wrote:
>>> Hi David,
>>>
>>> I had a test case that periodically could reproduce this - it now  
>>> can't after ensuring references are always freshed in the Kaha  
>>> reference store part of AMQ Store. Is your application now fixed?
>>>
>>> thanks,
>>>
>>> Rob
>>> On Oct 8, 2007, at 2:48 AM, David Sitsky wrote:
>>>
>>>> Hi Rob,
>>>>
>>>> Looks like you have fixed this issue - many thanks.
>>>>
>>>> Cheers,
>>>> David
>>>>
>>>> Rob Davies wrote:
>>>>> Hi David,
>>>>> I've had a look through the log you've attached to AMQ-1445 -  
>>>>> but I think i'll need some more information to successfully  
>>>>> resolve whats going on. Obviously there's an attempt to  
>>>>> retrieve a message that's already been deleted -  I just need  
>>>>> to find out why ;)
>>>>> Could I trouble you to try and devise a junit test case to  
>>>>> reproduce?
>>>>> thanks,
>>>>> Rob
>>>>> On Oct 5, 2007, at 7:37 AM, David Sitsky wrote:
>>>>>> Hi Rob,
>>>>>>
>>>>>> I think I spoke too soon.  While using AMQ store fixed the  
>>>>>> initial issue I was dealing with, it seems to have other  
>>>>>> issues in my application, where I see the following message  
>>>>>> before everything hangs:
>>>>>>
>>>>>> RecoveryListenerAdapter - Message id ID... could not be  
>>>>>> recovered from the data store!
>>>>>>
>>>>>> I created a JIRA record which contains the detailed debug  
>>>>>> message logs:
>>>>>>
>>>>>> https://issues.apache.org/activemq/browse/AMQ-1445
>>>>>>
>>>>>> FWIW, JDBC persistence works fine.  Any ideas what might be  
>>>>>> wrong?
>>>>>>
>>>>>> Cheers,
>>>>>> David
>>>>>>
>>>>>> David Sitsky wrote:
>>>>>>> Hi Rob,
>>>>>>> Looks like the AMQ store works correctly - thanks for the  
>>>>>>> advice.
>>>>>>> Cheers,
>>>>>>> David
>>>>>>> Rob Davies wrote:
>>>>>>>> Do you get the same using AMQ store (the default in 5.0)
-  
>>>>>>>> its the prefered store over kaha in ActiveMQ 5.0
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> cheers,
>>>>>>>>
>>>>>>>> Rob
>>>>>>>>
>>>>>>>> http://rajdavies.blogspot.com/
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Oct 3, 2007, at 8:50 AM, David Sitsky wrote:
>>>>>>>>
>>>>>>>>> I have discovered an issue with the latest activemq 5.0
 
>>>>>>>>> (revision 581510) which seems to have been present for
some  
>>>>>>>>> time, at least for the last month.
>>>>>>>>>
>>>>>>>>> I have an application using transactions, and kaha  
>>>>>>>>> persistence, and two consumers feeding off a queue.
>>>>>>>>>
>>>>>>>>> I sometimes see the same message being sent to two  
>>>>>>>>> consumers.  All transactions were committed (no rollbacks),
 
>>>>>>>>> and as you can see by the debug dump, the message has
the  
>>>>>>>>> same message-ID, but was delivered to two separate  
>>>>>>>>> consumers, running on separate threads, using sync receives
 
>>>>>>>>> with a prefetch of 0, with separate sessions of course.
>>>>>>>>>
>>>>>>>>> Is this a known problem?  It doesn't always happen -
seems  
>>>>>>>>> to be a race condition.  If I turn off persistence, I
don't  
>>>>>>>>> seem to see it.
>>>>>>>>>
>>>>>>>>> Here is the message being delivered to consumer 1:
>>>>>>>>>
>>>>>>>>> 2007-10-03 17:21:37,310 [Worker  
>>>>>>>>> 060bacd87f4a40a4867113e2e3e553dd] 85475 DEBUG  
>>>>>>>>> org.apache.activemq.ActiveMQMessageConsumer -  
>>>>>>>>> ID:tamarama-62436-1191396093006-2:2:3:2 received message:
 
>>>>>>>>> MessageDispatch {commandId = 0, responseRequired = false,
 
>>>>>>>>> consumerId = ID:tamarama-62436-1191396093006-2:2:3:2,
 
>>>>>>>>> destination = queue://worker-items, message =  
>>>>>>>>> ActiveMQObjectMessage {commandId = 50, responseRequired
=  
>>>>>>>>> false, messageId =  
>>>>>>>>> ID:tamarama-62436-1191396093006-2:2:1:3:1,  
>>>>>>>>> originalDestination = null, originalTransactionId = null,
 
>>>>>>>>> producerId = ID:tamarama-62436-1191396093006-2:2:1:3,
 
>>>>>>>>> destination = queue://worker-items, transactionId = 

>>>>>>>>> TX:ID:tamarama-62436-1191396093006-2:2:5, expiration
= 0,  
>>>>>>>>> timestamp = 1191396097286, arrival = 0, brokerInTime
=  
>>>>>>>>> 1191396097290, brokerOutTime = 1191396097303, correlationId
 
>>>>>>>>> = null, replyTo = null, persistent = true, type = null,
 
>>>>>>>>> priority = 4, groupID = null, groupSequence = 0,  
>>>>>>>>> targetConsumerId = null, compressed = false, userID =
null,  
>>>>>>>>> content = org.apache.activemq.util.ByteSequence@fa8cbc,
 
>>>>>>>>> marshalledProperties = null, dataStructure = null,  
>>>>>>>>> redeliveryCounter = 0, size = 0, properties = null, 

>>>>>>>>> readOnlyProperties = true, readOnlyBody = true, droppable
=  
>>>>>>>>> false}, redeliveryCounter = 0}
>>>>>>>>>
>>>>>>>>> Here is the same message (check the message ID) being
 
>>>>>>>>> delivered to consumer 2:
>>>>>>>>>
>>>>>>>>> 2007-10-03 17:21:37,422 [Worker  
>>>>>>>>> 2c3169d1726b4781a423a239f65c7bd1] 85587 DEBUG  
>>>>>>>>> org.apache.activemq.ActiveMQMessageConsumer -  
>>>>>>>>> ID:tamarama-62436-1191396093006-2:2:1:2 received message:
 
>>>>>>>>> MessageDispatch {commandId = 0, responseRequired = false,
 
>>>>>>>>> consumerId = ID:tamarama-62436-1191396093006-2:2:1:2,
 
>>>>>>>>> destination = queue://worker-items, message =  
>>>>>>>>> ActiveMQObjectMessage {commandId = 50, responseRequired
=  
>>>>>>>>> false, messageId =  
>>>>>>>>> ID:tamarama-62436-1191396093006-2:2:1:3:1,  
>>>>>>>>> originalDestination = null, originalTransactionId = null,
 
>>>>>>>>> producerId = ID:tamarama-62436-1191396093006-2:2:1:3,
 
>>>>>>>>> destination = queue://worker-items, transactionId = 

>>>>>>>>> TX:ID:tamarama-62436-1191396093006-2:2:5, expiration
= 0,  
>>>>>>>>> timestamp = 1191396097286, arrival = 0, brokerInTime
=  
>>>>>>>>> 1191396097290, brokerOutTime = 1191396097417, correlationId
 
>>>>>>>>> = null, replyTo = null, persistent = true, type = null,
 
>>>>>>>>> priority = 4, groupID = null, groupSequence = 0,  
>>>>>>>>> targetConsumerId = null, compressed = false, userID =
null,  
>>>>>>>>> content = org.apache.activemq.util.ByteSequence@1a881cc,
 
>>>>>>>>> marshalledProperties = null, dataStructure = null,  
>>>>>>>>> redeliveryCounter = 0, size = 0, properties = null, 

>>>>>>>>> readOnlyProperties = true, readOnlyBody = true, droppable
=  
>>>>>>>>> false}, redeliveryCounter = 0}
>>>>>>>>>
>>>>>>>>> I'll need to do more investigations tomorrow, but if
 
>>>>>>>>> anybody has any ideas, I'd appreciate some insights.
>>>>>>>>>
>>>>>>>>> -- 
>>>>>>>>> Cheers,
>>>>>>>>> David
>>>>>>>>>
>>>>>>>>> Nuix Pty Ltd
>>>>>>>>> Suite 79, 89 Jones St, Ultimo NSW 2007, Australia   
Ph:  
>>>>>>>>> +61 2 9280 0699
>>>>>>>>> Web: http://www.nuix.com                            Fax:
 
>>>>>>>>> +61 2 9212 6902
>>>>>>
>>>>>>
>>>>>> -- 
>>>>>> Cheers,
>>>>>> David
>>>>>>
>>>>>> Nuix Pty Ltd
>>>>>> Suite 79, 89 Jones St, Ultimo NSW 2007, Australia    Ph: +61 2  
>>>>>> 9280 0699
>>>>>> Web: http://www.nuix.com                            Fax: +61 2  
>>>>>> 9212 6902
>>>>
>>>>
>>>> -- 
>>>> Cheers,
>>>> David
>>>>
>>>> Nuix Pty Ltd
>>>> Suite 79, 89 Jones St, Ultimo NSW 2007, Australia    Ph: +61 2  
>>>> 9280 0699
>>>> Web: http://www.nuix.com                            Fax: +61 2  
>>>> 9212 6902
>
>
> -- 
> Cheers,
> David
>
> Nuix Pty Ltd
> Suite 79, 89 Jones St, Ultimo NSW 2007, Australia    Ph: +61 2 9280  
> 0699
> Web: http://www.nuix.com                            Fax: +61 2 9212  
> 6902


Mime
View raw message