activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tim Bain <tb...@alumni.duke.edu>
Subject Re: How do I configure a automatic expiration for DLQ
Date Mon, 20 Oct 2014 15:42:26 GMT
OK, I wasn't sure that the queue policy for that covered the DLQ, though it
makes sense that the DLQ is treated like any other queue rather than
handled separately.  Thanks for clarifying.

On Mon, Oct 20, 2014 at 4:41 AM, Gary Tully <gary.tully@gmail.com> wrote:

> yes. periodic expiry processing. controlled by destination
> policy expireMessagesPeriod > 0
>
> On 17 October 2014 22:12, Tim Bain <tbain@alumni.duke.edu> wrote:
>
> > Those plugin modifications will get the message into the DLQ with an
> > expiration date, but is there anything that will cause messages in the
> DLQ
> > to be deleted when they expire?  Or will Gopal also need to implement
> > something to do that?
> >
> > On Fri, Oct 17, 2014 at 2:28 PM, Gary Tully <gary.tully@gmail.com>
> wrote:
> >
> > > the main meat is in:
> > >
> > >
> >
> https://github.com/apache/activemq/blob/d54e0d6ab590b6a6148a5e2629c45b95d3f40eb8/activemq-broker/src/main/java/org/apache/activemq/plugin/DiscardingDLQBroker.java#L47
> > >
> > > maybe an option in there will give you a quick win, do what
> regionBroker
> > > does but set an expiration.
> > >
> > > On 17 October 2014 21:25, Gary Tully <gary.tully@gmail.com> wrote:
> > >
> > > > you really need an enhancement of your own plugin that will implement
> > > > sendToDeadLetterQueue b/c the current impl will clear the expiration
> of
> > > the
> > > > message, so it is in theory not possible for a message sent to the
> DLQ,
> > > to
> > > > expire.
> > > >
> > > >
> > > >
> > >
> >
> https://github.com/apache/activemq/blob/d54e0d6ab590b6a6148a5e2629c45b95d3f40eb8/activemq-broker/src/main/java/org/apache/activemq/broker/region/RegionBroker.java#L744
> > > >
> > > > A little plugin may be the answer - a variant of the
> > > discardingDLQBrokerPlugin
> > > > should be easy to hack up, maybe add a configurable expiry to that
> > plugin
> > > > and submit a patch.
> > > >
> > > >
> > > >
> > >
> >
> https://github.com/apache/activemq/blob/d54e0d6ab590b6a6148a5e2629c45b95d3f40eb8/activemq-broker/src/main/java/org/apache/activemq/plugin/DiscardingDLQBrokerPlugin.java
> > > >
> > > >
> > > > On 17 October 2014 18:17, gchakra <gopal.chakravarthy@fox.com>
> wrote:
> > > >
> > > >> 1.For the dead letter queue ActiveMQ.DLQ, I would like to configure
> a
> > > >> policy
> > > >> whereby messages in DLQ get deleted after they have resided in DLQ
> > for 5
> > > >> days.
> > > >> I couldnt see how to do it in the documentation.
> > > >> My current activemq.xml configuration file is below...how do I
> modify
> > it
> > > >> for
> > > >> autoexpiring my DLQ messages after 5 days...
> > > >>
> > > >>
> > > >> <beans xmlns="http://www.springframework.org/schema/beans"
> > > >> xmlns:amq="http://activemq.apache.org/schema/core"
> > > >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> > > >> xsi:schemaLocation="http://www.springframework.org/schema/beans
> > > >> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
> > > >> http://activemq.apache.org/schema/core
> > > >> http://activemq.apache.org/schema/core/activemq-core.xsd">
> > > >>         <bean
> > > >>
> > > >>
> > >
> >
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
> > > >>                 <property name="locations">
> > > >>
> > > >> <value>file:${activemq.base}/conf/credentials.properties</value>
> > > >>                 </property>
> > > >>         </bean>
> > > >>         <broker xmlns="http://activemq.apache.org/schema/core"
> > > >> brokerName="localhost" dataDirectory="${activemq.base}/data"
> > > >> destroyApplicationContextOnStop="true">
> > > >>                 <destinationPolicy>
> > > >>                         <policyMap>
> > > >>                                 <policyEntries>
> > > >>                                         <policyEntry topic=">"
> > > >> producerFlowControl="false" memoryLimit="1mb"
> > > >> useCache="false">
> > > >>
> > >  <pendingSubscriberPolicy>
> > > >>                                                         <vmCursor
/>
> > > >>
> > >  </pendingSubscriberPolicy>
> > > >>                                         </policyEntry>
> > > >>                                         <policyEntry queue=">"
> > > >> producerFlowControl="false" memoryLimit="1mb"
> > > >> useCache="false">
> > > >>                                                 <dispatchPolicy>
> > > >>
> > > >> <roundRobinDispatchPolicy />
> > > >>                                                 </dispatchPolicy>
> > > >>                                         </policyEntry>
> > > >>                                 </policyEntries>
> > > >>                         </policyMap>
> > > >>                 </destinationPolicy>
> > > >>                 <managementContext>
> > > >>                         <managementContext createConnector="false"/>
> > > >>                 </managementContext>
> > > >>                 <persistenceAdapter>
> > > >>                         <kahaDB
> > directory="${activemq.base}/data/kahadb"
> > > >> ignoreMissingJournalfiles="true" checkForCorruptJournalFiles="true"
> > > >> checksumJournalFiles="true" journalMaxFileLength="64mb" />
> > > >>                 </persistenceAdapter>
> > > >>                 <transportConnectors>
> > > >>                         <transportConnector name="openwire"
> > uri="tcp://
> > > >> 0.0.0.0:61616"/>
> > > >>                 </transportConnectors>
> > > >>         </broker>
> > > >>         <import resource="jetty.xml"/>
> > > >> </beans>
> > > >>
> > > >>
> > > >> 2. What is the impact of adding the following plugin to the broker
> in
> > > >> activemq.xml configuration XML
> > > >> <broker xmlns="http://activemq.apache.org/schema/core"
> > > >> brokerName="localhost" dataDirectory="$
> > > >> {activemq.base}/data" destroyApplicationContextOnStop="true">
> > > >> <plugins>
> > > >> <discardingDLQBrokerPlugin dropAll="true" dropTemporaryTopics="true"
> > > >> dropTemporaryQueues="true" />
> > > >> </plugins>
> > > >> </broker>
> > > >>
> > > >>
> > > >>
> > > >>
> > > >>
> > > >> --
> > > >> View this message in context:
> > > >>
> > >
> >
> http://activemq.2283324.n4.nabble.com/How-do-I-configure-a-automatic-expiration-for-DLQ-tp4686510.html
> > > >> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
> > > >>
> > > >
> > > >
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message