command: make test CONF=fastdebug JTREG="VM_OPTIONS=-Xcomp" 
TEST=gc/TestAllocHumongousFragment.java
error info: 

Caused by: java.lang.NullPointerException: Cannot invoke 
"sun.util.locale.BaseLocale.getVariant()" because "base" is null
at java.base/java.util.Locale.forLanguageTag(Locale.java:1802)
at 
java.base/sun.util.cldr.CLDRBaseLocaleDataMetaInfo.<clinit>(CLDRBaseLocaleDataMetaInfo.java:41)
... 24 more

Note that the test runs with -XX:ShenandoahGCHeuristics=aggressive 
-XX:+ShenandoahOOMDuringEvacALot and SoftReferences are involved 
(LocaleObjectCache uses SoftReferences, used by printf method called in 
getRandomInstance(Utils.java:511)).

Maybe we have to deal with the case where the getBaseLocale() return value is 
null. the call stack is:

        at 
java.base/sun.util.locale.LocaleObjectCache.get(LocaleObjectCache.java:64)
        at java.base/sun.util.locale.BaseLocale.getInstance(BaseLocale.java:169)
        at 
java.base/sun.util.locale.InternalLocaleBuilder.getBaseLocale(InternalLocaleBuilder.java:524)
        at java.base/java.util.Locale.forLanguageTag(Locale.java:1874)

in LocaleObjectCache.java:64

         62             if (key == null || newVal == null) {                    
            
         63                 // subclass must return non-null key/value object   
            
         64                 return null; // run here
         65             }

-------------

Commit messages:
 - 8289220: [Shenandoah] TestAllocObjectArrays fails intermittently

Changes: https://git.openjdk.org/jdk/pull/14211/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=14211&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8289220
  Stats: 3 lines in 1 file changed: 3 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/14211.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/14211/head:pull/14211

PR: https://git.openjdk.org/jdk/pull/14211

Reply via email to