-
Bug
-
Resolution: Done
-
Major
-
1.1.23.Final, 2.1.2.Final, 2.2.1.Final
-
None
Having a simple bean
@Model public class Controller { @Inject Conversation conversation; public void begin() { conversation.begin(); } public void end() { conversation.end(); }
invoked from a JSF view,
trying to end the same conversation from two parallel request results in
org.jboss.weld.context.BusyConversationException: WELD-000322 Conversation lock timed out: 1
it seems that the lock was not released, thus the second thread keeps waiting for the conversation timeout.
The expected result (unless the conversation ending really took so long) would be for the second thread to end in org.jboss.weld.context.NonexistentConversationException: WELD-000321: No conversation found to restore for id 1
Other notes:
increasing the CONCURRENT_ACCESS_TIMEOUT makes the issue more apparent.