Bug 1007005

Summary: Transaction manager UUID generation (getPid) uses synchronized causing contention
Product: [JBoss] JBoss Enterprise Application Platform 6 Reporter: Andrig T Miller <anmiller>
Component: Transaction ManagerAssignee: tom.jenkinson
Status: CLOSED CURRENTRELEASE QA Contact: Ondrej Chaloupka <ochaloup>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.2.0CC: jdoyle, myarboro
Target Milestone: ER2   
Target Release: EAP 6.2.0   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-12-15 16:13:58 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:

Description Andrig T Miller 2013-09-11 17:29:13 UTC
Description of problem:

In profiling SPECjEnterprise2010, we identified an issue in the transaction manager, where there was significant contention.

This was fixed upstream in 5.0, but needs to be backported into 4.17.10.Final.

Version-Release number of selected component (if applicable):

4.17.9

How reproducible:

Everytime.

Steps to Reproduce:
1.Use the UUID generation for transaction identification, which I believe is now the default in EAP.
2.
3.

Actual results:

Contention for the start of every transaction.

Expected results:

No contention in starting transactions, improving throughput.

Additional info:

Upstream issue:

https://issues.jboss.org/browse/JBTM-1907

Upstream commit:

https://github.com/jbosstm/narayana/commit/9e2531ab8519004dc76ba7f3a82c848c4982c10a

Comment 1 Andrig T Miller 2013-09-11 17:35:15 UTC
Set the flags for inclusion for EAP 6.2.

Comment 3 tom.jenkinson 2013-09-13 19:53:17 UTC
https://github.com/jbossas/jboss-eap/pull/406

(getting: For all JBoss bugs, it is mandatory to set the target milestone field to a non-empty value before a bug can be moved past the ASSIGNED state. i.e. to POST, MODIFIED, ON_DEV, ON_QA, VERIFIED or RELEASE_PENDING.)

Comment 6 Ondrej Chaloupka 2013-09-23 07:27:28 UTC
Checked the decopiled code for 6.2.0.ER2.