+++ This bug was initially created as a clone of Bug #1258797 +++ Description of problem: In BZ1161574, TransactionLockInterceptor is enabled by for SingletonRuntimeManager. But actually, with proper use of taskService (= take SynchronizedTaskService from Singleton RuntimeEngine), the "disconnected" issue will not happen. So "disabled" is the right default behaviour. Steps to Reproduce: 1. Set DEBUG level log for org.drools.persistence.jta.TransactionLockInterceptor <logger category="org.drools.persistence.jta.TransactionLockInterceptor"> <level name="DEBUG"/> </logger> 2. Build&Deploy a project with a process which has a UserTask in business-central 3. Start a process. Complete a Task. 4. Look at server.log Actual results: You find TransactionLockInterceptor activities at DEBUG level. 19:02:12,404 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (pool-19-thread-1) About to register lock release handler by pool-19-thread-1 19:02:12,404 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (pool-19-thread-1) Error happened releasing directly by pool-19-thread-1 due to No transaction is running 19:02:12,404 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (pool-19-thread-1) Releasing on transaction completion by pool-19-thread-1 19:02:12,404 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (pool-19-thread-1) Successfully released lock by pool-19-thread-1 19:02:12,404 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (pool-19-thread-1) About to get a lock on command service by pool-19-thread-1 19:02:12,404 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (pool-19-thread-1) Lock taken by pool-19-thread-1 19:02:12,405 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (pool-19-thread-1) About to register lock release handler by pool-19-thread-1 19:02:12,405 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (pool-19-thread-1) Error happened releasing directly by pool-19-thread-1 due to No transaction is running 19:02:12,405 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (pool-19-thread-1) Releasing on transaction completion by pool-19-thread-1 19:02:12,405 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (pool-19-thread-1) Successfully released lock by pool-19-thread-1 Expected results: You only see "Transaction lock interceptor enabled false" logs. 19:01:30,614 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (http-localhost.localdomain/127.0.0.1:8080-11) Transaction lock interceptor enabled false 19:01:30,615 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (http-localhost.localdomain/127.0.0.1:8080-11) Transaction lock interceptor enabled false 19:01:30,623 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (http-localhost.localdomain/127.0.0.1:8080-11) Transaction lock interceptor enabled false 19:01:30,634 DEBUG [org.drools.persistence.jta.TransactionLockInterceptor] (http-localhost.localdomain/127.0.0.1:8080-11) Transaction lock interceptor enabled false --- Additional comment from Toshiya Kobayashi on 2015-09-01 06:23:45 EDT --- It was enabled by commits in the comment https://bugzilla.redhat.com/show_bug.cgi?id=1161574#c5
I added this to Update Release BZ because TransactionLockInterceptor may have a negative impact to performance and unnecessary lock issue risk (like BZ1252327).
Cherry-picked to 6.2.x: https://github.com/droolsjbpm/jbpm/commit/cbaf0fcb
Verified on 6.1.4.