]
Clebert Suconic reassigned JBMESSAGING-1294:
--------------------------------------------
Assignee: Clebert Suconic (was: Tim Fox)
Problem in jms message listener redelivery
------------------------------------------
Key: JBMESSAGING-1294
URL:
https://jira.jboss.org/jira/browse/JBMESSAGING-1294
Project: JBoss Messaging
Issue Type: Task
Reporter: Tim Fox
Assignee: Clebert Suconic
Fix For: 2.0.0 Beta
Currently core sessions have a batch size and can be set to auto commit acks. These is
fairly complex and makes it hard to apply
JMS message listener redelivery semantics.
With a JMS message listener auto_ack or dups_ok, if a runtimeexception is thrown from
onMessage the last message should be redelivered.
An auto_ack session is marked as auto commit acks, so if we immediately rollback when
receiving the exception, the last message is acked so is not redelivered.
Solution here is never to auto commit acks. Sessions are always transacted (sends can be
auto_acked or have concurrency problems when concurrently receiving and sending messages
in a dups_ok session), and acks must be explicitly acked anc committed by the JMS layer.
This should simplify the code too.
Uncomment MessageConsumerTest::testExceptionMessageListener1 and 2 when this is complete
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: