Details
-
Type:
Bug
-
Status:
Resolved
-
Priority:
Critical
-
Resolution: Not A Bug
-
Affects Version/s: 2.0.0
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
-
Environment:WinXP, ActiveMQ 5.3.2, Spring 2.5.6
-
Testcase included:yes
-
Number of attachments :
Description
I have been able to reproduce this issue quite easily so hope it will be useful to you.
The use case is pretty simple: a message listener receives an incoming message within a transaction handled by bitronix. This message handler creates a REQUIRES_NEW transaction to do some processing (which may fail). Upon the failure, the listener decides to rollback or commit the main transaction. When it decides to rollback, DLQ management is not working anymore (I get an infinite loop).
The project attached reproduces the issue. It also has another message listener that does NOT start a requires new transaction, demonstrating the rollback + DLQ management works as expected in this case.
Sample application which reproduces the problem