Release notes for the Microsoft Build of OpenJDK
This article lists the fixes contained in the releases of Microsoft Build of OpenJDK packages and the Microsoft-specific enhancements pending to be merged upstream.
OpenJDK 21
OpenJDK 21.0.4
Enhancements
- Enables Hotspot to use processors across all Windows processor groups on Windows 11/Windows Server 2022 and later.
OpenJDK 21.0.3
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flags:
-XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges
Includes a new JFR event to track Compiler Queue Utilization (a backport of JDK-8317562).
OpenJDK 21.0.2
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flags:
-XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges
Includes a new JFR event to track Compiler Queue Utilization (a backport of JDK-8317562).
OpenJDK 21.0.1
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flags:
-XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges
Known issues
- AArch64 binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 21.0.0
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flags:
-XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges
Known issues
- AArch64 binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 17
OpenJDK 17.0.12
Enhancements
- Enables Hotspot to use processors across all Windows processor groups on Windows 11/Windows Server 2022 and later.
- Disable G1 preventive collections by default.
OpenJDK 17.0.11
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flags:
-XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges
Added support for SST files as KeyStores on Windows (see JDK-8306688), which can be enabled by using the following property:
-Dsun.security.mscapi.enableSST=true
OpenJDK 17.0.10
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flags:
-XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges
Added support for SST files as KeyStores on Windows (see JDK-8306688), which can be enabled by using the following property:
-Dsun.security.mscapi.enableSST=true
OpenJDK 17.0.9
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flags:
-XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges
Added support for SST files as KeyStores on Windows (see JDK-8306688), which can be enabled by using the following property:
-Dsun.security.mscapi.enableSST=true
Backport of JDK-8303607 SunMSCAPI provider leaks memory and keys
Known issues
- AArch64 binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 17.0.8
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is now enabled by default. To disable it, developers must use the following JVM flag:
-XX:-ReduceAllocationMerges
Known issues
- AArch64 binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 17.0.7
Enhancements
Includes an experimental feature to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. To enable this feature, developers must use the following JVM flags:
-XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges
Known issues
- AArch64 binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 17.0.6
Enhancements
Includes an experimental feature to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. To enable this feature, developers must use the following JVM flags:
-XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 17.0.5
Enhancements
Added an experimental feature to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. To enable this feature, developers must use the following JVM flags:
-XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 17.0.4.1
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 17.0.4
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 17.0.3
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 17.0.2
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation. - RPM package may not update automatically. Run
yum install msopenjdk-17-17.0.2+8_LTS-1
to force update to latest release.
OpenJDK 17.0.1
Known issues
- Binaries for AArch64 do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation. - RPM package may not update automatically. Run
yum install msopenjdk-17-17.0.1+12_LTS-1
to force update to latest release.
OpenJDK 17.0.0
OpenJDK 11
OpenJDK 11.0.24
Enhancements
- Enables Hotspot to use processors across all Windows processor groups on Windows 11/Windows Server 2022 and later.
OpenJDK 11.0.23
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flags:
-XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges
Added support for SST files as KeyStores on Windows (see JDK-8306688), which can be enabled by using the following property:
-Dsun.security.mscapi.enableSST=true
Backports of the following enhancements and bug fixes:
- JDK-8250902 Implement MD5 Intrinsics on x86 - Java Bug System
- JDK Flight Recorder
- JDK-8226897 Provide object age with JFR OldObjectSample event
- JDK-8232594 Make the output of the JFR command duration more user friendly
- JDK-8216041 Event Request Deoptimization
- JDK-8216995 Clean up JFR Command Line
- JDK-8217089 Lazy install os interface components for improved startup
Known issues
- Binaries for macOS/AArch64 do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.22
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flags:
-XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges
Added support for SST files as KeyStores on Windows (see JDK-8306688), which can be enabled by using the following property:
-Dsun.security.mscapi.enableSST=true
Backports of the following enhancements and bug fixes:
- JDK-8250902 Implement MD5 Intrinsics on x86 - Java Bug System
- JDK Flight Recorder
- JDK-8226897 Provide object age with JFR OldObjectSample event
- JDK-8232594 Make the output of the JFR command duration more user friendly
- JDK-8216041 Event Request Deoptimization
- JDK-8216995 Clean up JFR Command Line
- JDK-8217089 Lazy install os interface components for improved startup
Known issues
- Binaries for macOS/AArch64 do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.21
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flags:
-XX:+UnlockDiagnosticVMOptions -XX:-ReduceAllocationMerges
Added support for SST files as KeyStores on Windows (see JDK-8306688), which can be enabled by using the following property:
-Dsun.security.mscapi.enableSST=true
Backports of the following enhancements and bug fixes:
- JDK-8250902 Implement MD5 Intrinsics on x86 - Java Bug System
- JDK Flight Recorder
- JDK-8226897 Provide object age with JFR OldObjectSample event
- JDK-8232594 Make the output of the JFR command duration more user friendly
- JDK-8216041 Event Request Deoptimization
- JDK-8216995 Clean up JFR Command Line
- JDK-8217089 Lazy install os interface components for improved startup
- JDK-8303607 SunMSCAPI provider leaks memory and keys
Known issues
- Binaries for AArch64 do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.20.1
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is enabled by default. To disable it, developers must use the following JVM flag:
-XX:-ReduceAllocationMerges
Backports of the following enhancements and bug fixes:
- JDK-8250902 Implement MD5 Intrinsics on x86 - Java Bug System
- JDK Flight Recorder
- JDK-8226897 Provide object age with JFR OldObjectSample event
- JDK-8232594 Make the output of the JFR command duration more user friendly
- JDK-8216041 Event Request Deoptimization
- JDK-8216995 Clean up JFR Command Line
- JDK-8217089 Lazy install os interface components for improved startup
Known issues
- Binaries for AArch64 do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.20
Enhancements
Includes a new feature (see JDK-8287061 and JDK-8289943) to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. This feature is now enabled by default. To disable it, developers must use the following JVM flag:
-XX:-ReduceAllocationMerges
Backports of the following enhancements and bug fixes:
- JDK-8250902 Implement MD5 Intrinsics on x86 - Java Bug System
- JDK Flight Recorder
- JDK-8226897 Provide object age with JFR OldObjectSample event
- JDK-8232594 Make the output of the JFR command duration more user friendly
- JDK-8216041 Event Request Deoptimization
- JDK-8216995 Clean up JFR Command Line
- JDK-8217089 Lazy install os interface components for improved startup
Known issues
- Binaries for AArch64 do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.19
Enhancements
Includes an experimental feature to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. To enable this feature, developers must use the following JVM flags:
-XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges
Backports of the following enhancements and bug fixes:
- JDK-8250902 Implement MD5 Intrinsics on x86 - Java Bug System
- JFR
- JDK-8226897 Provide object age with JFR OldObjectSample event - Java Bug System
- JDK-8232594 Make the output of the JFR command duration more user friendly - Java Bug System
- JDK-8216041 [Event Request] - Deoptimization - Java Bug System
Known issues
- Binaries for AArch64 do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.18
Enhancements
Includes an experimental feature to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. To enable this feature, developers must use the following JVM flags:
-XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges
Backports of the following enhancements and bug fixes:
- JDK-8250902 Implement MD5 Intrinsics on x86 - Java Bug System
- JFR
- JDK-8226897 Provide object age with JFR OldObjectSample event - Java Bug System
- JDK-8232594 Make the output of the JFR command duration more user friendly - Java Bug System
- JDK-8216041 [Event Request] - Deoptimization - Java Bug System
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.17
Enhancements
Added an experimental feature to improve the performance of Escape Analysis by increasing the number of opportunities for Scalar Replacement. To enable this feature, developers must use the following JVM flags:
-XX:+UnlockExperimentalVMOptions -XX:+ReduceAllocationMerges
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.16.1
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.16
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.15
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.14.1
Microsoft-specific enhancements
- Backport of JEP 391 macOS/AArch64 Port
- Backport of JEP 386 Alpine Linux Port
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.14
Microsoft-specific enhancements
- Backport of JEP 391 macOS/AArch64 Port
- Backport of JEP 386 Alpine Linux Port
Known issues
- Binaries do not have Default CDS (JEP 341) archives. Run
java -Xshare:dump
to produce them after installation.
OpenJDK 11.0.13
OpenJDK 11.0.12
Microsoft-specific enhancements
- JDK-8250902 Implement MD5 Intrinsics on x86 - Java Bug System
- Backports of the following enhancements and bug fixes:
- https://openjdk.java.net/jeps/388
- https://github.com/openjdk/jdk/pull/212
- Backport of AArch64: initialize memory allocated for locals according to Windows AArch64 stack page growth requirement in template interpreter: JDK-8269391
- Backport of AArch64: Fix MacroAssembler::get_thread convention: JDK-8271002
- Backport of C4530 was reported from VS 2019 at access bridge: JDK-8271095
- Backport of JVMCI: Enable it for Windows+AArch64: JDK-8264184
OpenJDK 11.0.11
List of security fixes and other fixes in OpenJDK 11.0.11
Microsoft-specific enhancements
- JDK-8250902 Implement MD5 Intrinsics on x86 - Java Bug System
Provide feedback on the Microsoft Build of OpenJDK
Send us your comments, thoughts, and ideas to help us improve the Microsoft Build of OpenJDK. Visit our OpenJDK discussions page on GitHub to send us your feedback.
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Other releases
OpenJDK 16.0.2
Microsoft-specific enhancements
- JDK-8269392: Backport of AArch64: initialize memory allocated for locals according to Windows AArch64 stack page growth requirement in template interpreter
- Backports of JEP 391: macOS/AArch64 Port, PR: 8253795: Implementation of JEP 391: macOS/AArch64 Port with these additional bug fixes:
- JDK-8271576: Backport of Arch64: Fix MacroAssembler::get_thread convention
- JDK-8271577: Backport of [macos_aarch64] Crash in jni_fast_GetLongField
- JNF removal and dependency fixups: Backports of Bad JNI lookup getFocusOwner in accessibility code on Mac OS X, [macOS] Bad JNI lookup error : Accessible actions do not work on macOS, Remove JNF dependency from libsaproc/MacosxDebuggerLocal.m and [macOS] Incorrect JNI parameters in number conversion in A11Y code
- SIGBUS fix and a few others: Backports of [macos_aarch64] SIGBUS in Assembler::ld_st2, Missed JNFInstanceOf -> IsInstanceOf conversion, AArch64: Refactor interpreter native wrappers, Use MAP_JIT when allocating pages for code cache on macOS, Create stubRoutines.inline.hpp with SafeFetch implementation