JDK-8068060 : java/lang/invoke/LFCaching tests can produce incorrect MethodHandles
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.lang.invoke
  • Affected Version: 8u40,9
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2014-12-22
  • Updated: 2014-12-23
  • Resolved: 2014-12-23
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9Resolved
Related Reports
Duplicate :  
Description
Example failure:
Test case: 
FILTER_ARGUMENTS
               filterArgsPos => 1
        filtersArgsArrayLength => 2
                    mtTarget => (short,byte,byte,boolean,short,double,boolean,long,short,char,int,char,int,double,short,boolean,float,Object,long,boolean,double,short,int,char,long,long,boolean)char
                    mtFilter => (short,byte)short

Output:
Method type: ()Object
LambdaForm:  identity_L=Lambda(a0:L/SpeciesData<L>)=>{
    t1:L=Species_L.argL0(a0:L);t1:L}

Use java/lang/invoke/LFCaching/LFGarbageCollectedTest.java after JDK-8067344 to reproduce. It intermittently fails on identity_L LambdaForm, though requested LambdaForm is different. 
Comments
Diagnostic output is misleading. Requested transformation is equivalent to identity_* which reside in permanent cache and should be skipped during testing. Will be fixed as part of JDK-8067344.
23-12-2014