openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Romain Manni-Bucau (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OPENJPA-2492) TestConcurrentMap error with Java 8
Date Tue, 22 Apr 2014 05:34:15 GMT

    [ https://issues.apache.org/jira/browse/OPENJPA-2492?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13976409#comment-13976409
] 

Romain Manni-Bucau commented on OPENJPA-2492:
---------------------------------------------

if you look j8 CHM implementation, containsKey does a get != null. So calling it from our
proxy inproxied get method (beforeGet) creates an infinite loop -> keySet is a workaround.
Using delegation would have made it cleaner but needs more refactoring.

> TestConcurrentMap error with Java 8
> -----------------------------------
>
>                 Key: OPENJPA-2492
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-2492
>             Project: OpenJPA
>          Issue Type: Sub-task
>          Components: build / infrastructure, Enhance, jpa
>    Affects Versions: 2.4.0
>         Environment: Java 8
> java version "1.8.0"
> Java(TM) SE Runtime Environment (build 1.8.0-b132)
> Java HotSpot(TM) Client VM (build 25.0-b70, mixed mode)
>            Reporter: Kevin Sutter
>            Assignee: Kevin Sutter
>         Attachments: OPENJPA-2492.patch
>
>
> One more test failure while running with Java 8.  Since Java 8 introduced some new methods
on the Map interface, this is probably related.  We are getting a VerifyError related to the
keySet signature:
> Tests in error:
> testConcurrentMap001(org.apache.openjpa.persistence.relations.TestConcurrentMap)
>     <error message="(class: org/apache/openjpa/util/java$util$concurrent$ConcurrentHashMap$4$proxy,
method: keySet signature: ()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;) Wrong return
type in function" type="java.lang.VerifyError">java.lang.VerifyError: (class: org/apache/openjpa/util/java$util$concurrent$ConcurrentHashMap$4$proxy,
method: keySet signature: ()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;) Wrong return
type in function
>         at java.lang.Class.forName0(Native Method)
>         at java.lang.Class.forName(Class.java:340)
>         at org.apache.openjpa.util.GeneratedClasses.loadBCClass(GeneratedClasses.java:68)



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message