On Tue, 29 Sep 2026 22:50:26 GMT, Naoto Sato <[email protected]> wrote:
> Fixing performance regression caused by > [JDK-8381379](https://bugs.openjdk.org/browse/JDK-8381379). Instead of having > each explicit time zone as an entry in the resource bundle, the explicit DST > offsets are encoded in one entry. This avoids repeated lookups for missing > offsets and eliminates the need for a separate cache. Also `SimpleDateFormat` > now issues a new internal `ZoneInfo` method that won't clone instances on > each format call. Here is the benchmark result for the test case in the JBS > entry (on my mac): > > Before: > > New York: 303.9 B/op, 191.7 ns/op > Vancouver: 240.0 B/op, 216.8 ns/op > > After: > > New York: 32.0 B/op, 79.5 ns/op > Vancouver: 32.0 B/op, 97.5 ns/op > > These results suggest that the performance has returned to approximately its > pre-JDK- 8381379 level. > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai). This pull request has now been integrated. Changeset: a3f7f9c8 Author: Naoto Sato <[email protected]> URL: https://git.openjdk.org/jdk/commit/a3f7f9c8d961d9df796381ba8b4e943f96f20a49 Stats: 74 lines in 8 files changed: 48 ins; 2 del; 24 mod 8392996: Timezone name formatting repeatedly looks up missing CLDR dstOffset data Reviewed-by: jlu ------------- PR: https://git.openjdk.org/jdk/pull/33133
