You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openjpa.apache.org by "Dalia Abo Sheasha (JIRA)" <ji...@apache.org> on 2014/02/18 16:04:21 UTC

[jira] [Updated] (OPENJPA-2441) TestNullSafeConcurrentHashMap fails when running on Oracle Java 8

     [ https://issues.apache.org/jira/browse/OPENJPA-2441?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dalia Abo Sheasha updated OPENJPA-2441:
---------------------------------------

    Attachment: 2441.patch

I have attached a patch where NullSafeConcurrentHashMap is deprecated as well as SizedConcurrentHashMap since it extends NullSafeConcurrentHashMap. Naturally, the tests corresponding to both classes were removed. Any usage of the SizedConcurrentHashMap data structure was replaced by a ConcurrentReferenceHashMap which supports setting a maximum size for the map. Usage of NullSafeConcurrentHashMap was replaced by ConcurrentHashMap. Since this change required replacing some operations, I added some tests to make sure the logic for the method using NullSafeConcurrentHashMap is still working as intended. 

> TestNullSafeConcurrentHashMap fails when running on Oracle Java 8 
> ------------------------------------------------------------------
>
>                 Key: OPENJPA-2441
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-2441
>             Project: OpenJPA
>          Issue Type: Bug
>          Components: lib
>    Affects Versions: 2.4.0
>         Environment: >java -version
> java version "1.8.0-ea"
> Java(TM) SE Runtime Environment (build 1.8.0-ea-b109)
> Java HotSpot(TM) 64-Bit Server VM (build 25.0-b51, mixed mode)
>            Reporter: Rick Curtis
>         Attachments: 2441.patch
>
>
> While testing with Java 8 I found that org.apache.openjpa.lib.util.concurrent.NullSafeConcurrentHashMap doesn't work on Oracle Java 8 as java.util.ConcurrentHashMap was completely rewritten and it doesn't like playing with our extension. 
> I'm not sure what the correct solution for this JIRA will be, but I wanted to get it documented. I did a small amount of searching and it appears that NullSafeConcurrentHashMap isn't used very much in our code base so it might be easiest to remove those references and deprecate the data structure. That being said, we'll still need to fix this data structure as it is possible that a user of OpenJPA pulled this structure into app code.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)