RFR (M): 8067344: Adjust java/lang/invoke/LFCaching/LFGarbageCollectedTest.java for recent changes in java.lang.invoke
vladimir.x.ivanov at oracle.com
Tue Dec 23 12:40:36 UTC 2014
Spotted some more problems:
- need to skip identity operations (identity_* LambdaForms) in the
test, since corresponding LambdaForms reside in a permanent cache;
- need to keep original test data for diagnostic purposes, since
getTestCaseData() produces new instance.
On 12/22/14 11:53 PM, Vladimir Ivanov wrote:
> LFGarbageCollectedTest should be adjusted after JDK-8057020.
> There are a couple of problems with the test.
> (1) Existing logic to test that LambdaForm instance is collected isn't
> stable enough. Consequent System.GCs can hinder reference enqueueing.
> To speed up the test, I added -XX:SoftRefLRUPolicyMSPerMB=0 and limited
> the heap by -Xmx64m.
> (2) MethodType-based invoker caches are deliberately left strongly
> reachable. So, they should be skipped in the test.
> (3) Added additional diagnostic output to simplify failure analysis
> (test case details, method handle type and LambdaForm, heap dump
> (optional, -DHEAP_DUMP=true)).
> Testing: failing test.
> Best regards,
> Vladimir Ivanov
More information about the core-libs-dev