[
https://jira.jboss.org/browse/JBAS-7950?page=com.atlassian.jira.plugin.sy...
]
Tim Fox commented on JBAS-7950:
-------------------------------
This is actually a bit more complex... In this case a JTA transaction is being used, and
the JMS spec says nothing about what the redelivery semantics when a XAsession is rolled
back.
So, it's all a bit vague about what we *should* do here.
I suggest the best thing we can do is assume the redelivery semantics that are specified
for the local tx case in JMS also for the JTA case.
The current HornetQ implementation does not consider a message consumed by a message
listener to be "delivered" until the onMessage method has finished executing. In
the MDB case it doesn't reach that point since the AS implementation wraps the call to
the MDB *after* the HornetQ onMessage is executed (see the stack trace), and calls
rollback *before* the HornetQ onMessage has finished executing, hence the message is not
considered "delivered" in the eyes of HQ, and as such the delivery count is not
updated.
I can look at changing the behaviour so it acts like the local transacted case for JTA
too, which should fix this issue.
HornetQ keeps re-delivering the message infinitely on a failure to
deliver to MDB
----------------------------------------------------------------------------------
Key: JBAS-7950
URL:
https://jira.jboss.org/browse/JBAS-7950
Project: JBoss Application Server
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: JMS (HornetQ)
Environment: AS trunk (hornetq 2.1.0 Beta2)
Reporter: jaikiran pai
Assignee: Tim Fox
Fix For: TBD
Attachments: JBAS-7950-source.tar.gz, jbas7950.ear
As discussed in the referenced forum thread, when HornetQ first fails to deliver a
message to a MDB, it continues to redeliver the message infinitely. Also note that the JMS
Message.getJMSRedelivered() is also broken - it keeps returning false even on a
redelivered message.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira