Red Hat Bugzilla – Bug 1287799
bpm cluster fails to stop probably due to waiting for a TransactionLockInterceptor.execute()
Last modified: 2015-12-03 07:17:20 EST
Created attachment 1101567 [details]
Description of problem:
Having a BPM cluster with two EAP nodes in a domain, the EAP node#1 fails to stop in some cases and a corresponding process has to be killed.
After stopping the EAP, node#2 finishes, but node#1 hangs. Jstack report from such a moment shows there is a thread waiting on a lock in org.drools.persistence.jta.TransactionLockInterceptor.execute(TransactionLockInterceptor.java:81). See the full report in the attachment. Before the attempt to stop the EAP, there is no such thread.
Please note that the Business Central has been deployed together with EJB services application and processes and deployments have been triggered via remote EJBs. Node#1 has been also restarted several times to simulate a failover scenario.
Version-Release number of selected component (if applicable):
30% - 50%
Created attachment 1101568 [details]
server log node one
Created attachment 1101569 [details]
server log node two
Raising urgency of this issue as it likely shows not only after running tests when EAP should be stopped, but also during failover scenarios.
This is in fact also a serious test blocker.
Radek, have you configured TransactionLockInterceptor to be turned on s it should be turned off by default?
In general it proved to not be as efficient solution as initially thought so it's not really recommended to be used, only with very special cases
Closing the issue as a configuration change proposed by Maciej, i.e. omitting system property org.kie.tx.lock.enabled=true helped to resolve the issue.
Current documentation does not mention this property, so it will be disabled by default.