java

Enterprise Performance Pack Release Notes

Java™ SE Development Kit 8, Update 441 Enterprise Performance Pack (JDK 8u441-PERF)

Release date: January 21, 2025

The full version string for this update release is 1.8.0_441-perf-b09 (where "b" means "build"). The version number is 1.8.0_441-perf.

 

IANA TZ Data 2024b

JDK 8u441 contains IANA time zone data 2024b which contains the following changes since the previous update.

  • Improve historical data for Mexico, Mongolia, and Portugal.
  • System V names are now obsolescent.
  • The main data form now uses %z.
  • The code now conforms to RFC 8536 for early timestamps.
  • Support POSIX.1-2024, which removes asctime_r and ctime_r.

For more information, refer to Timezone Data Versions in the JRE Software.

 

Security Baselines

The security baselines for the Java Runtime at the time of the release of JDK 8u441 are specified in the following table:

Java Family Version Security Baseline (Full Version String)
81.8.0_441-perf-b09

 

Keeping the JDK up to Date

Oracle recommends that the JDK is updated with each Critical Patch Update. In order to determine if a release is the latest, the Security Baseline page can be used to determine which is the latest version for each release family.

Critical patch updates, which contain security vulnerability fixes, are announced one year in advance on Critical Patch Updates, Security Alerts and Bulletins. It is not recommended that this JDK (version 8u441) be used after the next critical patch update scheduled for April 15, 2025.

Java Management Service, available to all users, can help you find vulnerable Java versions in your systems. Java SE Subscribers and customers running in Oracle Cloud can use Java Management Service to update Java Runtimes and to do further security reviews like identifying potentially vulnerable third party libraries used by your Java programs. Existing Java Management Service user click here to log in to your dashboard. The Java Management Service Documentation provides a list of features available to everyone and those available only to customers. Learn more about using Java Management Service to monitor and secure your Java Installations.

For systems unable to reach the Oracle Servers, a secondary mechanism expires this JRE (version 8u441) on 2025-05-15. After either condition is met (new release becoming available or expiration date reached), the JRE will provide additional warnings and reminders to users to update to the newer version. For more information, see 23.1.2 JRE Expiration Date in the Java Platform, Standard Edition Deployment Guide.

 

Other Notes

core-svc/java.lang.management
 The ClassLoadingMXBean and MemoryMXBean isVerbose Methods Are Now Consistent with Their setVerbose Methods (JDK-8338139)

The ClassLoadingMXBean::setVerbose(boolean enabled) method will set class+load* logging on log output stdout to level info if enabled is true, and to level off otherwise. In contrast, the isVerbose method would check if exactly class+load logging was enabled at the info level on _any_ log output. This could result in counter-intuitive behavior when logging class+load=info to a file via the command-line, as it caused isVerbose to return true, even after a call to setVerbose(false) had been made. A similar problem existed for the MemoryMXBean::isVerbose method. Starting with this release, the behavior is as follows:

  • ClassLoadingMXBean::isVerbose will return true only if class+load* logging (note the wildcard use) has been enabled at the `info` level (or above) on the stdout log output.
  • MemoryMXBean::isVerbose will return true only if gc logging has been enabled at the info level (or above) on the stdout log output.

 

Changes in Java SE 8u441-Perf

Bug Fixes

JDK 8u441 Enterprise Performance Pack includes the following fixes from JDK 17:
# BugId Component Summary
1JDK-8337066hotspot/compilerRepeated call of StringBuffer.reverse with double byte string returns wrong result
2JDK-8335709hotspot/compilerC2: assert(!loop->is_member(get_loop(useblock))) failed: must be outside loop
3JDK-8315988hotspot/gcParallel: Make TestAggressiveHeap use createTestJvm
4JDK-8338389hotspot/jfr[JFR] Long strings should be added to the string pool
5JDK-8319818hotspot/runtimeAddress GCC 13.2.0 warnings (stringop-overflow and dangling-pointer)
6JDK-8340387hotspot/runtimeUpdate OS detection code to recognize Windows Server 2025
7JDK-8337410hotspot/testThe makefiles should set problemlist and adjust timeout basing on the given VM flags