You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Hariharan (Created) (JIRA)" <ji...@apache.org> on 2011/11/29 07:05:39 UTC

[jira] [Created] (AMQ-3610) sharedDeadLetterStrategy is not discarding the DLQ messages.

sharedDeadLetterStrategy is not discarding the DLQ messages.
------------------------------------------------------------

                 Key: AMQ-3610
                 URL: https://issues.apache.org/jira/browse/AMQ-3610
             Project: ActiveMQ
          Issue Type: Bug
          Components: Broker
    Affects Versions: 5.5.0
            Reporter: Hariharan


Hi,
Am using AMQ 5.5. I would like to disable the option of sending dead letters to ActiveMQ.DLQ destination and completely discard (automatically) the messages that would be sent there otherwise. To do this I had configured the broker as below:

{code:xml}
        <amq:destinationPolicy>
            <amq:policyMap>
              <amq:policyEntries>
                <amq:policyEntry topic=">" producerFlowControl="false" >
                    <amq:deadLetterStrategy>
                          <amq:sharedDeadLetterStrategy processExpired="false" />
                    </amq:deadLetterStrategy>
                </amq:policyEntry>
                <amq:policyEntry queue=">" producerFlowControl="false">
                    <amq:deadLetterStrategy>
                          <amq:sharedDeadLetterStrategy processExpired="false" />
                    </amq:deadLetterStrategy>
                </amq:policyEntry>

              </amq:policyEntries>
            </amq:policyMap>
        </amq:destinationPolicy>
{code}

However, I still see that the messages are getting stored in DLQ. Can you please let me know what could be causing this?
Do I need to fix anything in the config?

Thanks
Hari

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Closed] (AMQ-3610) sharedDeadLetterStrategy is not discarding the DLQ messages.

Posted by "Hariharan (Closed) (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AMQ-3610?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Hariharan closed AMQ-3610.
--------------------------

    Resolution: Not A Problem
    
> sharedDeadLetterStrategy is not discarding the DLQ messages.
> ------------------------------------------------------------
>
>                 Key: AMQ-3610
>                 URL: https://issues.apache.org/jira/browse/AMQ-3610
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>            Reporter: Hariharan
>              Labels: activemq, broker
>
> Hi,
> Am using AMQ 5.5. I would like to disable the option of sending dead letters to ActiveMQ.DLQ destination and completely discard (automatically) the messages that would be sent there otherwise. To do this I had configured the broker as below:
> {code:xml}
>         <amq:destinationPolicy>
>             <amq:policyMap>
>               <amq:policyEntries>
>                 <amq:policyEntry topic=">" producerFlowControl="false" >
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>                 <amq:policyEntry queue=">" producerFlowControl="false">
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>               </amq:policyEntries>
>             </amq:policyMap>
>         </amq:destinationPolicy>
> {code}
> However, I still see that the messages are getting stored in DLQ. Can you please let me know what could be causing this?
> Do I need to fix anything in the config?
> Thanks
> Hari

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (AMQ-3610) sharedDeadLetterStrategy is not discarding the DLQ messages.

Posted by "SuoNayi (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AMQ-3610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13164192#comment-13164192 ] 

SuoNayi commented on AMQ-3610:
------------------------------

Property dropTemporaryQueue being set to 'true' means the message should be discarded if the destination of the message is a temporary queue.Similarly Property dropTemporaryTopic means if the destination of the message is a temporary topic the message should be discarded.
Maybe you want to discard other messages such as persistents messages which reside in common queues or topics.
So for more handily,enabling dropAll will discard all DLQ messages.
AFAIK,it's safe to apply this plugin in your production broker and you can take off the old deadLetterStrategy as well.


                
> sharedDeadLetterStrategy is not discarding the DLQ messages.
> ------------------------------------------------------------
>
>                 Key: AMQ-3610
>                 URL: https://issues.apache.org/jira/browse/AMQ-3610
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>            Reporter: Hariharan
>              Labels: activemq, broker
>
> Hi,
> Am using AMQ 5.5. I would like to disable the option of sending dead letters to ActiveMQ.DLQ destination and completely discard (automatically) the messages that would be sent there otherwise. To do this I had configured the broker as below:
> {code:xml}
>         <amq:destinationPolicy>
>             <amq:policyMap>
>               <amq:policyEntries>
>                 <amq:policyEntry topic=">" producerFlowControl="false" >
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>                 <amq:policyEntry queue=">" producerFlowControl="false">
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>               </amq:policyEntries>
>             </amq:policyMap>
>         </amq:destinationPolicy>
> {code}
> However, I still see that the messages are getting stored in DLQ. Can you please let me know what could be causing this?
> Do I need to fix anything in the config?
> Thanks
> Hari

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (AMQ-3610) sharedDeadLetterStrategy is not discarding the DLQ messages.

Posted by "Hariharan (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AMQ-3610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13164211#comment-13164211 ] 

Hariharan commented on AMQ-3610:
--------------------------------

Thank you. I'll use this plugin as suggested.

Regards
Hari
                
> sharedDeadLetterStrategy is not discarding the DLQ messages.
> ------------------------------------------------------------
>
>                 Key: AMQ-3610
>                 URL: https://issues.apache.org/jira/browse/AMQ-3610
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>            Reporter: Hariharan
>              Labels: activemq, broker
>
> Hi,
> Am using AMQ 5.5. I would like to disable the option of sending dead letters to ActiveMQ.DLQ destination and completely discard (automatically) the messages that would be sent there otherwise. To do this I had configured the broker as below:
> {code:xml}
>         <amq:destinationPolicy>
>             <amq:policyMap>
>               <amq:policyEntries>
>                 <amq:policyEntry topic=">" producerFlowControl="false" >
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>                 <amq:policyEntry queue=">" producerFlowControl="false">
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>               </amq:policyEntries>
>             </amq:policyMap>
>         </amq:destinationPolicy>
> {code}
> However, I still see that the messages are getting stored in DLQ. Can you please let me know what could be causing this?
> Do I need to fix anything in the config?
> Thanks
> Hari

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (AMQ-3610) sharedDeadLetterStrategy is not discarding the DLQ messages.

Posted by "SuoNayi (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AMQ-3610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13164147#comment-13164147 ] 

SuoNayi commented on AMQ-3610:
------------------------------

There has been a broker plugin available which does what you want.
Just add the plugin into plugins of broker like this:
    	<amq:plugins>
    		<amq:discardingDLQBrokerPlugin dropAll="true"/>
    	</amq:plugins>
                
> sharedDeadLetterStrategy is not discarding the DLQ messages.
> ------------------------------------------------------------
>
>                 Key: AMQ-3610
>                 URL: https://issues.apache.org/jira/browse/AMQ-3610
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>            Reporter: Hariharan
>              Labels: activemq, broker
>
> Hi,
> Am using AMQ 5.5. I would like to disable the option of sending dead letters to ActiveMQ.DLQ destination and completely discard (automatically) the messages that would be sent there otherwise. To do this I had configured the broker as below:
> {code:xml}
>         <amq:destinationPolicy>
>             <amq:policyMap>
>               <amq:policyEntries>
>                 <amq:policyEntry topic=">" producerFlowControl="false" >
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>                 <amq:policyEntry queue=">" producerFlowControl="false">
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>               </amq:policyEntries>
>             </amq:policyMap>
>         </amq:destinationPolicy>
> {code}
> However, I still see that the messages are getting stored in DLQ. Can you please let me know what could be causing this?
> Do I need to fix anything in the config?
> Thanks
> Hari

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (AMQ-3610) sharedDeadLetterStrategy is not discarding the DLQ messages.

Posted by "Hariharan (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AMQ-3610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13164159#comment-13164159 ] 

Hariharan commented on AMQ-3610:
--------------------------------

I tried taking a look at discardingDLQBrokerPlugin.java and found a couple of properties like dropTemporaryQueue and dropTemporaryTopic being set to 'true' by default. Since we use temp queues I would like to know what these properties actually mean and do. Unfortunately there wasn't much doc related to this. Would you know what they do?

Since I will be making this fix in our production broker, I would really like to make sure this plugin would not break anything else which is using temp queues and topics. Sincerely appreciate your help.
                
> sharedDeadLetterStrategy is not discarding the DLQ messages.
> ------------------------------------------------------------
>
>                 Key: AMQ-3610
>                 URL: https://issues.apache.org/jira/browse/AMQ-3610
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>            Reporter: Hariharan
>              Labels: activemq, broker
>
> Hi,
> Am using AMQ 5.5. I would like to disable the option of sending dead letters to ActiveMQ.DLQ destination and completely discard (automatically) the messages that would be sent there otherwise. To do this I had configured the broker as below:
> {code:xml}
>         <amq:destinationPolicy>
>             <amq:policyMap>
>               <amq:policyEntries>
>                 <amq:policyEntry topic=">" producerFlowControl="false" >
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>                 <amq:policyEntry queue=">" producerFlowControl="false">
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>               </amq:policyEntries>
>             </amq:policyMap>
>         </amq:destinationPolicy>
> {code}
> However, I still see that the messages are getting stored in DLQ. Can you please let me know what could be causing this?
> Do I need to fix anything in the config?
> Thanks
> Hari

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply:[jira] [Commented] (AMQ-3610) sharedDeadLetterStrategy is not discarding the DLQ messages.

Posted by SuoNayi <su...@163.com>.
There has been a broker plugin which does what you want .
You can add the plugin to plugins section like this:
        <amq:plugins>
            <amq:discardingDLQBrokerPlugin dropAll="true"/>
        </amq:plugins>




At 2011-12-07 12:31:40,"Hariharan (Commented) (JIRA)" <ji...@apache.org> wrote:
>
>    [ https://issues.apache.org/jira/browse/AMQ-3610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13164131#comment-13164131 ] 
>
>Hariharan commented on AMQ-3610:
>--------------------------------
>
>Can somebody please help me with this?
>                
>> sharedDeadLetterStrategy is not discarding the DLQ messages.
>> ------------------------------------------------------------
>>
>>                 Key: AMQ-3610
>>                 URL: https://issues.apache.org/jira/browse/AMQ-3610
>>             Project: ActiveMQ
>>          Issue Type: Bug
>>          Components: Broker
>>    Affects Versions: 5.5.0
>>            Reporter: Hariharan
>>              Labels: activemq, broker
>>
>> Hi,
>> Am using AMQ 5.5. I would like to disable the option of sending dead letters to ActiveMQ.DLQ destination and completely discard (automatically) the messages that would be sent there otherwise. To do this I had configured the broker as below:
>> {code:xml}
>>         <amq:destinationPolicy>
>>             <amq:policyMap>
>>               <amq:policyEntries>
>>                 <amq:policyEntry topic=">" producerFlowControl="false" >
>>                     <amq:deadLetterStrategy>
>>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>>                     </amq:deadLetterStrategy>
>>                 </amq:policyEntry>
>>                 <amq:policyEntry queue=">" producerFlowControl="false">
>>                     <amq:deadLetterStrategy>
>>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>>                     </amq:deadLetterStrategy>
>>                 </amq:policyEntry>
>>               </amq:policyEntries>
>>             </amq:policyMap>
>>         </amq:destinationPolicy>
>> {code}
>> However, I still see that the messages are getting stored in DLQ. Can you please let me know what could be causing this?
>> Do I need to fix anything in the config?
>> Thanks
>> Hari
>
>--
>This message is automatically generated by JIRA.
>If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
>For more information on JIRA, see: http://www.atlassian.com/software/jira
>
>        

[jira] [Commented] (AMQ-3610) sharedDeadLetterStrategy is not discarding the DLQ messages.

Posted by "Hariharan (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AMQ-3610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13164131#comment-13164131 ] 

Hariharan commented on AMQ-3610:
--------------------------------

Can somebody please help me with this?
                
> sharedDeadLetterStrategy is not discarding the DLQ messages.
> ------------------------------------------------------------
>
>                 Key: AMQ-3610
>                 URL: https://issues.apache.org/jira/browse/AMQ-3610
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>            Reporter: Hariharan
>              Labels: activemq, broker
>
> Hi,
> Am using AMQ 5.5. I would like to disable the option of sending dead letters to ActiveMQ.DLQ destination and completely discard (automatically) the messages that would be sent there otherwise. To do this I had configured the broker as below:
> {code:xml}
>         <amq:destinationPolicy>
>             <amq:policyMap>
>               <amq:policyEntries>
>                 <amq:policyEntry topic=">" producerFlowControl="false" >
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>                 <amq:policyEntry queue=">" producerFlowControl="false">
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>               </amq:policyEntries>
>             </amq:policyMap>
>         </amq:destinationPolicy>
> {code}
> However, I still see that the messages are getting stored in DLQ. Can you please let me know what could be causing this?
> Do I need to fix anything in the config?
> Thanks
> Hari

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (AMQ-3610) sharedDeadLetterStrategy is not discarding the DLQ messages.

Posted by "SuoNayi (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AMQ-3610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13164157#comment-13164157 ] 

SuoNayi commented on AMQ-3610:
------------------------------

With your configuration nonpersistent or expired messages will be discared while persistent messages will be saved.
The plugin will do what you want, it will discard all messages with dropAll being true.


                
> sharedDeadLetterStrategy is not discarding the DLQ messages.
> ------------------------------------------------------------
>
>                 Key: AMQ-3610
>                 URL: https://issues.apache.org/jira/browse/AMQ-3610
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>            Reporter: Hariharan
>              Labels: activemq, broker
>
> Hi,
> Am using AMQ 5.5. I would like to disable the option of sending dead letters to ActiveMQ.DLQ destination and completely discard (automatically) the messages that would be sent there otherwise. To do this I had configured the broker as below:
> {code:xml}
>         <amq:destinationPolicy>
>             <amq:policyMap>
>               <amq:policyEntries>
>                 <amq:policyEntry topic=">" producerFlowControl="false" >
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>                 <amq:policyEntry queue=">" producerFlowControl="false">
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>               </amq:policyEntries>
>             </amq:policyMap>
>         </amq:destinationPolicy>
> {code}
> However, I still see that the messages are getting stored in DLQ. Can you please let me know what could be causing this?
> Do I need to fix anything in the config?
> Thanks
> Hari

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (AMQ-3610) sharedDeadLetterStrategy is not discarding the DLQ messages.

Posted by "Hariharan (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AMQ-3610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13164150#comment-13164150 ] 

Hariharan commented on AMQ-3610:
--------------------------------

@SuoNayi, thanks for the suggestion. 
Just out of curiosity, do you know why the configuration which I was using wasn't working?
                
> sharedDeadLetterStrategy is not discarding the DLQ messages.
> ------------------------------------------------------------
>
>                 Key: AMQ-3610
>                 URL: https://issues.apache.org/jira/browse/AMQ-3610
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.5.0
>            Reporter: Hariharan
>              Labels: activemq, broker
>
> Hi,
> Am using AMQ 5.5. I would like to disable the option of sending dead letters to ActiveMQ.DLQ destination and completely discard (automatically) the messages that would be sent there otherwise. To do this I had configured the broker as below:
> {code:xml}
>         <amq:destinationPolicy>
>             <amq:policyMap>
>               <amq:policyEntries>
>                 <amq:policyEntry topic=">" producerFlowControl="false" >
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>                 <amq:policyEntry queue=">" producerFlowControl="false">
>                     <amq:deadLetterStrategy>
>                           <amq:sharedDeadLetterStrategy processExpired="false" />
>                     </amq:deadLetterStrategy>
>                 </amq:policyEntry>
>               </amq:policyEntries>
>             </amq:policyMap>
>         </amq:destinationPolicy>
> {code}
> However, I still see that the messages are getting stored in DLQ. Can you please let me know what could be causing this?
> Do I need to fix anything in the config?
> Thanks
> Hari

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira