[jbossts-issues] [JBoss JIRA] (JBTM-2180) Determine whether or not we should use a specific collections framework

Michael Musgrove (JIRA) issues at jboss.org
Thu Jul 17 11:44:29 EDT 2014


    [ https://issues.jboss.org/browse/JBTM-2180?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12985986#comment-12985986 ] 

Michael Musgrove commented on JBTM-2180:
----------------------------------------

As a start on this task I have enabled the Oracle® JRockit Flight Recorder for a subset of the performance tests in the perf CI job (http://172.17.131.2/job/narayana-performance/). Flight data is stored in the maven build directory (target/test-classes/*.jfr) and can be read using the jmc tool available in the standard JDK (edition 7u40 and above).

What is the best way to evaluate other options given that there are many alternatives (and trying out each one involves engineering work):

* JDK Collections (much of our code hasn't been updated to take advantage of newer releases (Jesper has been looking into this); 
* Goldman Sachs Collections;
* Google Collections (Guava);
* javolution;
* Highly Scalable Java;
* ...

Tests with flight data currently include:

Core:
com.hp.mwtests.ts.arjuna.performance.Performance1
com.hp.mwtests.ts.arjuna.performance.Performance2
com.hp.mwtests.ts.arjuna.performance.Performance3
com.hp.mwtests.ts.arjuna.performance.Performance4

JTA:
com.arjuna.ats.jta.xa.performance.OnePhase2PCPerformanceDefaultUnitTest
com.arjuna.ats.jta.xa.performance.OnePhase2PCPerformanceVolatileUnitTest
com.arjuna.ats.jta.xa.performance.OnePhasePerformanceDefaultUnitTest
com.arjuna.ats.jta.xa.performance.OnePhasePerformanceVolatileUnitTest

JTS
com.hp.mwtests.ts.jts.local.synchronizations.Performance
com.hp.mwtests.ts.jts.orbspecific.local.performance.Performance1
com.hp.mwtests.ts.jts.orbspecific.local.performance.Performance2
com.hp.mwtests.ts.jts.orbspecific.local.performance.Performance3


> Determine whether or not we should use a specific collections framework
> -----------------------------------------------------------------------
>
>                 Key: JBTM-2180
>                 URL: https://issues.jboss.org/browse/JBTM-2180
>             Project: JBoss Transaction Manager
>          Issue Type: Task
>      Security Level: Public(Everyone can see) 
>          Components: JTA, JTS, Performance Testing, REST, Transaction Core
>    Affects Versions: 5.0.1
>            Reporter: Mark Little
>            Assignee: Michael Musgrove
>
> We use many of the inbuilt collections implementations (such as Hashtable) which are well known to be suboptimal in certain cases. Should we use a separate collections framework, e.g., https://github.com/goldmansachs/gs-collections
> There are pros and cons of doing this. But first we need to determine whether it really makes sense from a performance perspective.



--
This message was sent by Atlassian JIRA
(v6.2.6#6264)



More information about the jbossts-issues mailing list