You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Lars Hvile (JIRA)" <ji...@apache.org> on 2011/07/09 15:09:16 UTC

[jira] [Commented] (AMQ-2584) Massege store is not cleaned when durable topic subscribers are refusing messages

    [ https://issues.apache.org/jira/browse/AMQ-2584?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13062371#comment-13062371 ] 

Lars Hvile commented on AMQ-2584:
---------------------------------

I'm having a problem where messages fails to enter the DLQ. My scenario is:

1. some message fails during processing and ends up on the DLQ
2. it's moved back to its original queue, but fails again
3. message not sent back to the DLQ

After some googling I found this issue, and I suspect you may have introduced a bug in AbstractDeadLetterStrategy by adding the duplication-checks. (http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/region/policy/AbstractDeadLetterStrategy.java?r1=1030013&r2=1030012&pathrev=1030013).

I'm seeing the debug log-entry when messages are lost..
2011-07-09 14:59:07,177 | DEBUG | rollback: TX:ID:ubuntu-48335-1310214645889-0:1:18 syncCount: 2 | org.apache.activemq.transaction.LocalTransaction | ActiveMQ Transport: tcp:///127.0.0.1:59188
2011-07-09 14:59:07,178 | DEBUG | Not adding duplicate to DLQ: ID:ubuntu-58129-1310214649907-0:1:9:1:5, dest: queue://xxxx | org.apache.activemq.broker.region.policy.AbstractDeadLetterStrategy | ActiveMQ Transport: tcp:///127.0.0.1:59188


> Massege store is not cleaned when durable topic subscribers are refusing messages 
> ----------------------------------------------------------------------------------
>
>                 Key: AMQ-2584
>                 URL: https://issues.apache.org/jira/browse/AMQ-2584
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Message Store
>    Affects Versions: 5.3.0, 5.3.1, 5.4.0
>         Environment: WinXP,
> java version "1.6.0_05"
> Java(TM) SE Runtime Environment (build 1.6.0_05-b13)
> Java HotSpot(TM) Client VM (build 10.0-b19, mixed mode, sharing)
>            Reporter: Juraj Kuruc
>            Assignee: Gary Tully
>             Fix For: 5.4.2
>
>         Attachments: 2584_test.zip, AMQ2584Test.java, AMQ2584Test.java, UpdatedTestCase.patch
>
>
> Hi,
> i am using activemq 5.3 (resp. 5.4 snapshot , 5.3.1 snapshot) with kahadb in following use-case:
> - 3 durable topic subscriber, each refuses message using session.recover(), 1 delivery attempts
> - ActiveMQ.DLQ consumer
> - persistent message topic producer
> In such case deadletter consumer should consume every message sent, as soon as number of delivery attempts is reached and mmessage is sent to ActiveMQ.DLQ. Result is ok but kahadb data directory at the end contains all log files with names db-<number>.log ever created. They aren't deleted even after some time.
> I can also see following massege in console:
> WARN | Duplicate message add attempt rejected. Message id: ID:sk1d069c-3826-1264006781626
> -0:0:1:1:13425
> If use-case is altered to use queue instead of topic log files are periodically deleted without WARN messages in console.
> Same behaviour (data files not cleaned) if amqPersistenceAdapter is used except of WARN messages.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira