You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by Rajeshactivemq <ra...@intel.com> on 2017/07/20 05:02:15 UTC

ActiveMQ redelivery is not working with 5.13

we are using acivemq 5.13 with master slave setup with jdbc. we have enabled
scheduling but the redelivery is working fine but looks like msgs are going
to the DLQ after the maxredeliveries. 

below is the sample activemq.xml file 

  <broker advisorySupport="true" brokerName="broker"
xmlns="http://activemq.apache.org/schema/core" persistent="true"
schedulerDirectory="${activemq.data}/scheduler" schedulerSupport="true"
useJmx="true">
<destinationPolicy>
            <policyMap>
              <policyEntries>
                <policyEntry queue=">">
                          <deadLetterStrategy>

                                    <individualDeadLetterStrategy
queuePrefix="DLQ." useQueueForQueueMessages="true" />
                          </deadLetterStrategy>
                          <pendingMessageLimitStrategy>
                                    <constantPendingMessageLimitStrategy
limit="1000" />
                          </pendingMessageLimitStrategy>
                </policyEntry>
                <policyEntry topic=">">
                          <deadLetterStrategy>

                                    <individualDeadLetterStrategy
topicPrefix="DLQ." useQueueForTopicMessages="true" />
                          </deadLetterStrategy>
                          <pendingMessageLimitStrategy>
                                    <constantPendingMessageLimitStrategy
limit="1000" />
                          </pendingMessageLimitStrategy>
                </policyEntry>

              </policyEntries>
            </policyMap>
        </destinationPolicy>


   <redeliveryPlugin fallbackToDeadLetter="true"
sendToDlqIfMaxRetriesExceeded="true">
                <redeliveryPolicyMap>
                    <redeliveryPolicyMap>
                        <redeliveryPolicyEntries>
                            <redeliveryPolicy queue=">"
maximumRedeliveries="1" redeliveryDelay="10000"/>
                        </redeliveryPolicyEntries>
                        <defaultEntry>
                            
                            <redeliveryPolicy maximumRedeliveries="1"
                                              initialRedeliveryDelay="5000"
                                              redeliveryDelay="1000"/>
                        </defaultEntry>

                    </redeliveryPolicyMap>
                </redeliveryPolicyMap>
            </redeliveryPlugin>





--
View this message in context: http://activemq.2283324.n4.nabble.com/ActiveMQ-redelivery-is-not-working-with-5-13-tp4728713.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: ActiveMQ redelivery is not working with 5.13

Posted by Tim Bain <tb...@alumni.duke.edu>.
You originally said that it "looks like msgs are going to the DLQ after the
maxredeliveries." I believe based on your more recent email that that
should have been "msgs are not going to the DLQ;" is that correct? If
that's right, then I believe your comment that the dead letter strategy
isn't working means that despite the number of redelivery attempts
exceeding the maximumRedeliveries, the message is not being moved to the
DLQ.

Assuming I understood those things correctly, I'd like to start by
simplifying your broker's config to see if "basic" redelivery and DLQ
functionality works before we move back to your current config with broker
redelivery and individual DLQs. Can you please run your test without the
redeliveryPlugin and without the deadLetterStrategy elements? You should
now expect any failing message to be processed maximumRedeliveries times by
the same consumer and then moved to a queue named ActiveMQ.DLQ. If that
doesn't work, there's something very basic wrong (maybe a bug in our code,
maybe something wrong in your test drivers or your producer/consumer code)
and we'll need to figure out what. If it does work, then we can restore one
at a time the elements I asked you to remove, and see which one is the one
that breaks your test.

Also, can you please describe how you tell that maximumRedeliveries was
exceeded but the message wasn't moved to a DLQ? And what type of situation
is triggering messages to be redelivered? Are you using transactions?

Thanks,
Tim

On Thu, Jul 20, 2017 at 8:35 AM, Rajeshactivemq <ra...@intel.com>
wrote:

> Yes you are right dead letter strategy is not working even though the
> number of redeliveries are greater than max redeliveries from
> activemqconnectionfactory {consumer }
>
> Thanks and regards
> RAJESH CHINIWAR
> (iNET: 8-513-2388  | (IDD: +91-80-25132388
>
> From: Tim Bain [via ActiveMQ] [mailto:ml+s2283324n4728746h63@n4.nabble.com
> ]
> Sent: Thursday, July 20, 2017 7:13 PM
> To: Manohar, Rajesh C <ra...@intel.com>
> Subject: Re: ActiveMQ redelivery is not working with 5.13
>
> Are you saying that the individualDeadLetterStrategy isn't working? If not,
> what is your question?
>
> On Jul 20, 2017 7:05 AM, "Rajeshactivemq" <[hidden
> email]</user/SendEmail.jtp?type=node&node=4728746&i=0>>
> wrote:
>
> > we are using acivemq 5.13 with master slave setup with jdbc. we have
> > enabled
> > scheduling but the redelivery is working fine but looks like msgs are
> going
> > to the DLQ after the maxredeliveries.
> >
> > below is the sample activemq.xml file
> >
> >   <broker advisorySupport="true" brokerName="broker"
> > xmlns="http://activemq.apache.org/schema/core" persistent="true"
> > schedulerDirectory="${activemq.data}/scheduler" schedulerSupport="true"
> > useJmx="true">
> > <destinationPolicy>
> >             <policyMap>
> >               <policyEntries>
> >                 <policyEntry queue=">">
> >                           <deadLetterStrategy>
> >
> >                                     <individualDeadLetterStrategy
> > queuePrefix="DLQ." useQueueForQueueMessages="true" />
> >                           </deadLetterStrategy>
> >                           <pendingMessageLimitStrategy>
> >                                     <constantPendingMessageLimitStrategy
> > limit="1000" />
> >                           </pendingMessageLimitStrategy>
> >                 </policyEntry>
> >                 <policyEntry topic=">">
> >                           <deadLetterStrategy>
> >
> >                                     <individualDeadLetterStrategy
> > topicPrefix="DLQ." useQueueForTopicMessages="true" />
> >                           </deadLetterStrategy>
> >                           <pendingMessageLimitStrategy>
> >                                     <constantPendingMessageLimitStrategy
> > limit="1000" />
> >                           </pendingMessageLimitStrategy>
> >                 </policyEntry>
> >
> >               </policyEntries>
> >             </policyMap>
> >         </destinationPolicy>
> >
> >
> >    <redeliveryPlugin fallbackToDeadLetter="true"
> > sendToDlqIfMaxRetriesExceeded="true">
> >                 <redeliveryPolicyMap>
> >                     <redeliveryPolicyMap>
> >                         <redeliveryPolicyEntries>
> >                             <redeliveryPolicy queue=">"
> > maximumRedeliveries="1" redeliveryDelay="10000"/>
> >                         </redeliveryPolicyEntries>
> >                         <defaultEntry>
> >
> >                             <redeliveryPolicy maximumRedeliveries="1"
> >
>  initialRedeliveryDelay="5000"
> >                                               redeliveryDelay="1000"/>
> >                         </defaultEntry>
> >
> >                     </redeliveryPolicyMap>
> >                 </redeliveryPolicyMap>
> >             </redeliveryPlugin>
> >
> >
> >
> >
> >
> > --
> > View this message in context: http://activemq.2283324.n4.
> > nabble.com/ActiveMQ-redelivery-is-not-working-with-5-13-tp4728713.html
> > Sent from the ActiveMQ - User mailing list archive at Nabble.com.
> >
>
> ________________________________
> If you reply to this email, your message will be added to the discussion
> below:
> http://activemq.2283324.n4.nabble.com/ActiveMQ-redelivery-is-not-working-
> with-5-13-tp4728713p4728746.html
> To unsubscribe from ActiveMQ redelivery is not working with 5.13, click
> here<http://activemq.2283324.n4.nabble.com/template/NamlServlet.jtp?macro=
> unsubscribe_by_code&node=4728713&code=cmFqZXNoLmMubWFub2hhckBpbnRlbC
> 5jb218NDcyODcxM3wtMTE2OTI2MDQwNw==>.
> NAML<http://activemq.2283324.n4.nabble.com/template/
> NamlServlet.jtp?macro=macro_viewer&id=instant_html%
> 21nabble%3Aemail.naml&base=nabble.naml.namespaces.
> BasicNamespace-nabble.view.web.template.NabbleNamespace-
> nabble.view.web.template.NodeNamespace&breadcrumbs=
> notify_subscribers%21nabble%3Aemail.naml-instant_emails%
> 21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.
> nabble.com/ActiveMQ-redelivery-is-not-working-with-5-13-tp4728713p4728749.
> html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>

RE: ActiveMQ redelivery is not working with 5.13

Posted by Rajeshactivemq <ra...@intel.com>.
Yes you are right dead letter strategy is not working even though the number of redeliveries are greater than max redeliveries from activemqconnectionfactory {consumer }

Thanks and regards
RAJESH CHINIWAR
(iNET: 8-513-2388  | (IDD: +91-80-25132388

From: Tim Bain [via ActiveMQ] [mailto:ml+s2283324n4728746h63@n4.nabble.com]
Sent: Thursday, July 20, 2017 7:13 PM
To: Manohar, Rajesh C <ra...@intel.com>
Subject: Re: ActiveMQ redelivery is not working with 5.13

Are you saying that the individualDeadLetterStrategy isn't working? If not,
what is your question?

On Jul 20, 2017 7:05 AM, "Rajeshactivemq" <[hidden email]</user/SendEmail.jtp?type=node&node=4728746&i=0>>
wrote:

> we are using acivemq 5.13 with master slave setup with jdbc. we have
> enabled
> scheduling but the redelivery is working fine but looks like msgs are going
> to the DLQ after the maxredeliveries.
>
> below is the sample activemq.xml file
>
>   <broker advisorySupport="true" brokerName="broker"
> xmlns="http://activemq.apache.org/schema/core" persistent="true"
> schedulerDirectory="${activemq.data}/scheduler" schedulerSupport="true"
> useJmx="true">
> <destinationPolicy>
>             <policyMap>
>               <policyEntries>
>                 <policyEntry queue=">">
>                           <deadLetterStrategy>
>
>                                     <individualDeadLetterStrategy
> queuePrefix="DLQ." useQueueForQueueMessages="true" />
>                           </deadLetterStrategy>
>                           <pendingMessageLimitStrategy>
>                                     <constantPendingMessageLimitStrategy
> limit="1000" />
>                           </pendingMessageLimitStrategy>
>                 </policyEntry>
>                 <policyEntry topic=">">
>                           <deadLetterStrategy>
>
>                                     <individualDeadLetterStrategy
> topicPrefix="DLQ." useQueueForTopicMessages="true" />
>                           </deadLetterStrategy>
>                           <pendingMessageLimitStrategy>
>                                     <constantPendingMessageLimitStrategy
> limit="1000" />
>                           </pendingMessageLimitStrategy>
>                 </policyEntry>
>
>               </policyEntries>
>             </policyMap>
>         </destinationPolicy>
>
>
>    <redeliveryPlugin fallbackToDeadLetter="true"
> sendToDlqIfMaxRetriesExceeded="true">
>                 <redeliveryPolicyMap>
>                     <redeliveryPolicyMap>
>                         <redeliveryPolicyEntries>
>                             <redeliveryPolicy queue=">"
> maximumRedeliveries="1" redeliveryDelay="10000"/>
>                         </redeliveryPolicyEntries>
>                         <defaultEntry>
>
>                             <redeliveryPolicy maximumRedeliveries="1"
>                                               initialRedeliveryDelay="5000"
>                                               redeliveryDelay="1000"/>
>                         </defaultEntry>
>
>                     </redeliveryPolicyMap>
>                 </redeliveryPolicyMap>
>             </redeliveryPlugin>
>
>
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.
> nabble.com/ActiveMQ-redelivery-is-not-working-with-5-13-tp4728713.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>

________________________________
If you reply to this email, your message will be added to the discussion below:
http://activemq.2283324.n4.nabble.com/ActiveMQ-redelivery-is-not-working-with-5-13-tp4728713p4728746.html
To unsubscribe from ActiveMQ redelivery is not working with 5.13, click here<http://activemq.2283324.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=4728713&code=cmFqZXNoLmMubWFub2hhckBpbnRlbC5jb218NDcyODcxM3wtMTE2OTI2MDQwNw==>.
NAML<http://activemq.2283324.n4.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>




--
View this message in context: http://activemq.2283324.n4.nabble.com/ActiveMQ-redelivery-is-not-working-with-5-13-tp4728713p4728749.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: ActiveMQ redelivery is not working with 5.13

Posted by Tim Bain <tb...@alumni.duke.edu>.
Are you saying that the individualDeadLetterStrategy isn't working? If not,
what is your question?

On Jul 20, 2017 7:05 AM, "Rajeshactivemq" <ra...@intel.com>
wrote:

> we are using acivemq 5.13 with master slave setup with jdbc. we have
> enabled
> scheduling but the redelivery is working fine but looks like msgs are going
> to the DLQ after the maxredeliveries.
>
> below is the sample activemq.xml file
>
>   <broker advisorySupport="true" brokerName="broker"
> xmlns="http://activemq.apache.org/schema/core" persistent="true"
> schedulerDirectory="${activemq.data}/scheduler" schedulerSupport="true"
> useJmx="true">
> <destinationPolicy>
>             <policyMap>
>               <policyEntries>
>                 <policyEntry queue=">">
>                           <deadLetterStrategy>
>
>                                     <individualDeadLetterStrategy
> queuePrefix="DLQ." useQueueForQueueMessages="true" />
>                           </deadLetterStrategy>
>                           <pendingMessageLimitStrategy>
>                                     <constantPendingMessageLimitStrategy
> limit="1000" />
>                           </pendingMessageLimitStrategy>
>                 </policyEntry>
>                 <policyEntry topic=">">
>                           <deadLetterStrategy>
>
>                                     <individualDeadLetterStrategy
> topicPrefix="DLQ." useQueueForTopicMessages="true" />
>                           </deadLetterStrategy>
>                           <pendingMessageLimitStrategy>
>                                     <constantPendingMessageLimitStrategy
> limit="1000" />
>                           </pendingMessageLimitStrategy>
>                 </policyEntry>
>
>               </policyEntries>
>             </policyMap>
>         </destinationPolicy>
>
>
>    <redeliveryPlugin fallbackToDeadLetter="true"
> sendToDlqIfMaxRetriesExceeded="true">
>                 <redeliveryPolicyMap>
>                     <redeliveryPolicyMap>
>                         <redeliveryPolicyEntries>
>                             <redeliveryPolicy queue=">"
> maximumRedeliveries="1" redeliveryDelay="10000"/>
>                         </redeliveryPolicyEntries>
>                         <defaultEntry>
>
>                             <redeliveryPolicy maximumRedeliveries="1"
>                                               initialRedeliveryDelay="5000"
>                                               redeliveryDelay="1000"/>
>                         </defaultEntry>
>
>                     </redeliveryPolicyMap>
>                 </redeliveryPolicyMap>
>             </redeliveryPlugin>
>
>
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.
> nabble.com/ActiveMQ-redelivery-is-not-working-with-5-13-tp4728713.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>