Skip to content

Commit

Permalink
Keep image zone rules cache separate oracle#2637
Browse files Browse the repository at this point in the history
* Before this patch,
the image would contain zone rules cache from the JVM computing the image.
* Side effects here,
such as class or source cache lookups,
were affecting its contents and leading to error when writing image.
* With this change,
we guarantee that the zone rules cache in the image is a brand new instance,
separate from the one in the JVM computing the image.
  • Loading branch information
galderz committed Jul 7, 2020
1 parent 568a8c2 commit c91b3b0
Showing 1 changed file with 23 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package com.oracle.svm.core.jdk;

import com.oracle.svm.core.annotate.Alias;
import com.oracle.svm.core.annotate.RecomputeFieldValue;
import com.oracle.svm.core.annotate.TargetClass;

import java.time.zone.ZoneOffsetTransition;
import java.time.zone.ZoneRules;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;

@TargetClass(ZoneRules.class)
final class Target_java_time_zone_ZoneRules {

@SuppressWarnings("unused")
@Alias
@RecomputeFieldValue(kind = RecomputeFieldValue.Kind.NewInstance, declClass = ConcurrentHashMap.class)
private transient ConcurrentMap<Integer, ZoneOffsetTransition[]> lastRulesCache;

}

class TimeSubstitutions {
}

0 comments on commit c91b3b0

Please sign in to comment.