You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by gt...@apache.org on 2013/07/19 22:20:09 UTC
svn commit: r1505000 - in /activemq/trunk:
activemq-client/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java
activemq-unit-tests/src/test/java/org/apache/activemq/MessageListenerRedeliveryTest.java
Author: gtully
Date: Fri Jul 19 20:20:08 2013
New Revision: 1505000
URL: http://svn.apache.org/r1505000
Log:
https://issues.apache.org/jira/browse/AMQ-4637 - track cause and policy
Modified:
activemq/trunk/activemq-client/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java
activemq/trunk/activemq-unit-tests/src/test/java/org/apache/activemq/MessageListenerRedeliveryTest.java
Modified: activemq/trunk/activemq-client/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-client/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java?rev=1505000&r1=1504999&r2=1505000&view=diff
==============================================================================
--- activemq/trunk/activemq-client/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java (original)
+++ activemq/trunk/activemq-client/src/main/java/org/apache/activemq/ActiveMQMessageConsumer.java Fri Jul 19 20:20:08 2013
@@ -1207,7 +1207,8 @@ public class ActiveMQMessageConsumer imp
MessageAck ack = new MessageAck(lastMd, MessageAck.POSION_ACK_TYPE, deliveredMessages.size());
ack.setFirstMessageId(firstMsgId);
- ack.setPoisonCause(new Throwable("Exceeded redelivery policy limit:" + redeliveryPolicy));
+ ack.setPoisonCause(new Throwable("Exceeded redelivery policy limit:" + redeliveryPolicy
+ + ", cause:" + lastMd.getRollbackCause(), lastMd.getRollbackCause()));
session.sendAck(ack,true);
// Adjust the window size.
additionalWindowSize = Math.max(0, additionalWindowSize - deliveredMessages.size());
Modified: activemq/trunk/activemq-unit-tests/src/test/java/org/apache/activemq/MessageListenerRedeliveryTest.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-unit-tests/src/test/java/org/apache/activemq/MessageListenerRedeliveryTest.java?rev=1505000&r1=1504999&r2=1505000&view=diff
==============================================================================
--- activemq/trunk/activemq-unit-tests/src/test/java/org/apache/activemq/MessageListenerRedeliveryTest.java (original)
+++ activemq/trunk/activemq-unit-tests/src/test/java/org/apache/activemq/MessageListenerRedeliveryTest.java Fri Jul 19 20:20:08 2013
@@ -327,8 +327,13 @@ public class MessageListenerRedeliveryTe
message = dlqMessage[0];
assertNotNull("dlq message captured", message);
String cause = message.getStringProperty(ActiveMQMessage.DLQ_DELIVERY_FAILURE_CAUSE_PROPERTY);
+
LOG.info("DLQ'd message cause reported as: {}", cause);
+
+ assertTrue("cause 'cause' exception is remembered", cause.contains("RuntimeException"));
+ assertTrue("is correct exception", cause.contains(getName()));
assertTrue("cause exception is remembered", cause.contains("Throwable"));
+ assertTrue("cause policy is remembered", cause.contains("RedeliveryPolicy"));
session.close();
}