Race condition present in servicemix-bpe module
-----------------------------------------------
Key: SM-546
URL: https://issues.apache.org/activemq/browse/SM-546
Project: ServiceMix
Issue Type: Bug
Environment: Ubuntu Linux 5.10, Windows XP SP2, ServiceMix HEAD
Reporter: Grant McDonald
Assigned To: Grant McDonald
When external messages are routed to a waiting BPEL (BPE) process instance a
ThreadLocal is initialised with a reference to the BPEEndpoint that is being
routed to. Once the BPE event director returns at the completion of the
business process this ThreadLocal is set to null. Normally this doesn't pose a
problem, but in the case where the last statement before the reply (if the
process doesn't have a reply the problem does not appear) is an InOnly MEP the
business process returns immediately and by the time the InOnly invoke has
filtered out to the integration layer the ThreadLocal variable has been set to
null creating a race condition.
The workaround is not to have an InOnly as the last statement in the business
process that declares a receive/reply pair. This is not optimal but may be the
best we can do until the new jbi deployment/integration using the new merged
ODE is fully stable. I will start testing the merged trunk over the next week
or so to gauge what the best direction to proceed with is.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira