Bug 1258804

Summary: [GSS] (6.1.z) Revert back the TransactionLockInterceptor default to "false" for SingletonRuntimeManager
Product: [Retired] JBoss BPMS Platform 6 Reporter: Toshiya Kobayashi <tkobayas>
Component: jBPM CoreAssignee: Alessandro Lazarotti <alazarot>
Status: CLOSED EOL QA Contact: Karel Suta <ksuta>
Severity: high Docs Contact:
Priority: medium    
Version: 6.1.0CC: ksuta, kverlaen, lpetrovi, rsynek, smcgowan
Target Milestone: CR2   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1258797 Environment:
Last Closed: 2020-03-27 20:00:13 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1258797    
Bug Blocks: 1259382    

Description Toshiya Kobayashi 2015-09-01 10:27:20 UTC
+++ 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

Comment 1 Toshiya Kobayashi 2015-09-01 10:29:54 UTC
I added this to Update Release BZ because TransactionLockInterceptor may have a negative impact to performance and unnecessary lock issue risk (like BZ1252327).

Comment 3 Marco Rietveld 2015-09-23 14:49:51 UTC
Cherry-picked to 6.2.x: 

https://github.com/droolsjbpm/jbpm/commit/cbaf0fcb

Comment 4 Karel Suta 2015-10-12 12:09:03 UTC
Verified on 6.1.4.