[ https://issues.apache.org/jira/browse/AMQ-6454?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15551722#comment-15551722 ]
Christopher L. Shannon commented on AMQ-6454: --------------------------------------------- [~gtully], I've been watching this thread and my first thoughts were what you discovered, that things would break if this behavior changed. I know I have written code that relies on this behavior (ie closing the consumer will cause redelivery without closing the session) To me this use case seems a bit odd as a JMS session should not be shared across threads. The spec is clear in that a session should be single threaded. So having two different threads receive a message and then try to call acknowledge should be considered invalid anyways in my opinion based on the spec. > Message is redelivered after succesfull acknowledge() > ----------------------------------------------------- > > Key: AMQ-6454 > URL: https://issues.apache.org/jira/browse/AMQ-6454 > Project: ActiveMQ > Issue Type: Bug > Affects Versions: 5.14.1 > Reporter: Yuriy > Attachments: activemq-bug.zip > > > JMS message is redelivered after successful call of acknowledge(). > The following methods are invoked: > Thread1 : Message message = consumer.receive(); > Thread2 : consumer.close(); > Thread1: message.acknowledge(); > All the methods return successfully but the message is redelivered on the > next receive() call. Note that consumer.close() is typically used to force > consumer.receive() to return. > According to JMS specification the scope of message acknowledge() call is > session (not message consumer): > https://docs.oracle.com/javaee/7/api/javax/jms/Message.html#acknowledge-- > A simple program to reproduce the bug is attached. > Observed behavior: > Message is redelivered. > Program output: > ============ > Message sent. Id=ID:comp-63860-1475602285903-1:1:1:1:1 > Message received. Id=ID:comp-63860-1475602285903-1:1:1:1:1. Text=Welcome! > Message succesfully acknowledged > Message received. Id=ID:comp-63860-1475602285903-1:1:1:1:1. Text=Welcome! > Message succesfully acknowledged > Expected behavior: > Message should be delivered only once. -- This message was sent by Atlassian JIRA (v6.3.4#6332)