Re: How do I configure a automatic expiration for DLQ
yes. but currently there is no loop detection, so you could get your self in a know, expiring form dlq to dlq. On 20 October 2014 16:42, Tim Bain tb...@alumni.duke.edu wrote: 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.tu...@gmail.com wrote: yes. periodic expiry processing. controlled by destination policy expireMessagesPeriod 0 On 17 October 2014 22:12, Tim Bain tb...@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.tu...@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.tu...@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.chakravar...@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 valuefile:${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
Re: How do I configure a automatic expiration for DLQ
s/know/knot On 21 October 2014 11:54, Gary Tully gary.tu...@gmail.com wrote: yes. but currently there is no loop detection, so you could get your self in a know, expiring form dlq to dlq. On 20 October 2014 16:42, Tim Bain tb...@alumni.duke.edu wrote: 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.tu...@gmail.com wrote: yes. periodic expiry processing. controlled by destination policy expireMessagesPeriod 0 On 17 October 2014 22:12, Tim Bain tb...@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.tu...@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.tu...@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.chakravar...@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 valuefile:${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
Re: How do I configure a automatic expiration for DLQ
yes. periodic expiry processing. controlled by destination policy expireMessagesPeriod 0 On 17 October 2014 22:12, Tim Bain tb...@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.tu...@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.tu...@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.chakravar...@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 valuefile:${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:
Re: How do I configure a automatic expiration for DLQ
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.tu...@gmail.com wrote: yes. periodic expiry processing. controlled by destination policy expireMessagesPeriod 0 On 17 October 2014 22:12, Tim Bain tb...@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.tu...@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.tu...@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.chakravar...@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 valuefile:${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
Re: How do I configure a automatic expiration for DLQ
2. That plugin will cause messages to be discarded immediately instead of going to the DLQ. There's 5-day timeout like you're looking for, they just go straight into the bit bucket. On Fri, Oct 17, 2014 at 11:17 AM, gchakra gopal.chakravar...@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 valuefile:${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.
Re: How do I configure a automatic expiration for DLQ
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.chakravar...@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 valuefile:${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.
Re: How do I configure a automatic expiration for DLQ
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.tu...@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.chakravar...@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 valuefile:${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.
Re: How do I configure a automatic expiration for DLQ
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.tu...@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.tu...@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.chakravar...@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 valuefile:${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.