JDK-8003188 : java/lang/ClassFormatError: Duplicate field name&signature in class file java/lang/invoke/MemberName
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: hs24
  • Priority: P1
  • Status: Closed
  • Resolution: Cannot Reproduce
  • OS: generic
  • CPU: generic
  • Submitted: 2012-11-08
  • Updated: 2015-02-23
  • Resolved: 2013-01-24
Related Reports
Relates :  
Description
Several tests (jck-compiler and regression) fail with Java HotSpot(TM) Server VM 24.0 b24 (24.0-b24) and 1.7.0_12 b1 (1.7.0_12-ea-langtools-nightly-h357-20121107-b01-b00) on all platforms.
Last time worked with 1.7.0_12 b1 (1.7.0_12-ea-langtools-nightly-h355-20121105-b01-b00)  and Java HotSpot(TM) Server VM 23.6 b3 (23.6-b03) 
Link:
====
http://vmsqe-app.russia.sun.com/surl/OT

Tests:
====
javac/jsr292/CallSite 
javac/jsr292/MethodHandle/mh01 
javac/jsr292/MethodType 
javac/jsr292/regression/6999067 
javac/regression/oldbugs/4283246/MethodReferenceQualification_1 
javac/regression/oldbugs/4076729/VarDeclarationWithAssignment 
tools/javac/ArrayCloneCodeGen.java
tools/javac/VarDeclarationWithAssignment.java	
tools/javac/boxing/T6348760.java	
tools/javac/generics/inference/6240565/T6240565.java
tools/javac/inheritedAccess/MethodReferenceQualification_1.java
tools/javac/scope/6225935/T6225935.java 	

Output:
======
java  -verify VarDeclarationWithAssignment
[2012-11-08T11:44:23.19] Error occurred during initialization of VM
[2012-11-08T11:44:23.19] java/lang/ClassFormatError: Duplicate field name&signature in class file java/lang/invoke/MemberName
[2012-11-08T11:44:23.19] Exit Code is not Zero.
[2012-11-08T11:44:23.19] Test FAILED.

Link:
====
http://vmsqe-app.russia.sun.com/surl/OS

Comments
This is not a real bug, it's a flag day issue.
24-01-2013

Is this still an issue? It looks like a flag day per Christian.
14-01-2013

Although the build says 1.7.0_12 I'm pretty sure it's a flag day issue. Can I still access the bundle somewhere?
20-11-2012

This appears to be for jsr292, so handing this to the compiler team - you can determine if this is a flag day issue or a new bug. Perhaps in future we can find a way to avoid flag days.
20-11-2012

And I just fcloned jdk7u-dev and built it from scratch and ran one of the failing langtools/test tests and got the same error. jdk7u-dev itself appears to be broken.
13-11-2012

As explained by David Holmes in the previous comment this was due to the VM/JDK mistmatch. The tests were run using JDK7u10/hs24, but JDK7u12/hs24 is required. The tests ran fine the following day when the appropriate JDK/VM combination was used. I'm closing this issue as "can not reproduce"
13-11-2012

I suspect this is the VM/JDK mismatch that was flagged to the jdk7u-dev mailing list yesterday http://mail.openjdk.java.net/pipermail/jdk7u-dev/2012-November/004925.html Subject: flag day Sender: Alejandro E Murillo alejandro.murillo at oracle.com Date: Wed Nov 7 15:53:05 PST 2012 Many apologies for the delay sending this info This afternoon I integrated hs24-b24 into jdk7u12 [1]. That integration includes the changes for JSR292 (invoke dynamic) that were integrated into jdk8 back in August. These changes require the hotspot and jdk repos to be in sync. (hotspot and jdk repos must match - i.e., either both must have the JSR292 changes or both must not have them) A JDK with mismatched repos may build but will not be able to handle invoke dynamics appropriately, and will fail with a message similar to this: $ java -showversion -Xbootclasspath/p:$PWD/classes -XX:+UnlockDiagnosticVMOptions -XX:+EnableInvokeDynamic Invalid layout of java.lang.invoke.MemberName at vmindex In particular, users of JPRT who have pulled the changes must build *both* hotspot and jdk until the JSR292 changes are in a promoted jdk7u12 build (expected tomorrow, Thu, November 8, 2012). The simplest coping strategy is to avoid pulling from the jdk7u master repo until the next jdk7u12 build is promoted. If you do pull, make sure to pull both hotspot and jdk, and to build both. [1] http://hg.openjdk.java.net/jdk7u/jdk7u Thanks -- Alejandro E Murillo, Java Performance Phone: (303) 955-2584. Timezone: US/Mountain (UTC-0700)
09-11-2012