Repository: activemq-artemis Updated Branches: refs/heads/master 5f1509c4f -> 38e25caf1
Fix JMSDurableTopicRedeliverTest.testRedeliverNewSession test failure Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/c4339d80 Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/c4339d80 Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/c4339d80 Branch: refs/heads/master Commit: c4339d809bc199cd7d90eaa7589ea3c76f304929 Parents: 5f1509c Author: Howard Gao <[email protected]> Authored: Mon Dec 5 22:06:25 2016 +0800 Committer: Howard Gao <[email protected]> Committed: Tue Dec 6 11:02:27 2016 +0800 ---------------------------------------------------------------------- .../artemis/core/protocol/openwire/amq/AMQConsumer.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/c4339d80/artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/amq/AMQConsumer.java ---------------------------------------------------------------------- diff --git a/artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/amq/AMQConsumer.java b/artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/amq/AMQConsumer.java index 8b80bde..7f4f2d1 100644 --- a/artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/amq/AMQConsumer.java +++ b/artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/amq/AMQConsumer.java @@ -48,7 +48,6 @@ import org.apache.activemq.command.RemoveInfo; import org.apache.activemq.wireformat.WireFormat; public class AMQConsumer { - private AMQSession session; private org.apache.activemq.command.ActiveMQDestination openwireDestination; private ConsumerInfo info; @@ -319,6 +318,13 @@ public class AMQConsumer { long seqId = ref.getMessage().getMessageID(); long lastDelSeqId = info.getLastDeliveredSequenceId(); + //in activemq5, closing a durable subscription won't close the consumer + //at broker. Messages will be treated as if being redelivered to + //the same consumer. + if (this.info.isDurable() && this.getOpenwireDestination().isTopic()) { + return true; + } + //because delivering count is always one greater than redelivery count //we adjust it down before further calculating. ref.decrementDeliveryCount();
