RELEASE NOTES FOR: 27.0.2 ==================================================================================================== Notes generated: Sun Aug 30 06:39:09 CEST 2026 Hint: Prefix bug IDs with https://bugs.openjdk.org/browse/ to reach the relevant JIRA entry. JAVA ENHANCEMENT PROPOSALS (JEP): None. RELEASE NOTES: hotspot/runtime: JDK-8384557: Allow configuration of the JVM's temporary directory on Linux An advanced serviceability option has been added to the JVM to allow configuration of an alternate temporary directory on Linux. -XX:AltTempDir=/path On Linux, the usual directory to use for temporary files is /tmp. In some secure container environments however, /tmp is made read-only and so is unusable by the VM for its temporary files. To accommodate this uncommon circumstance the -XX:AltTempDir flag can be used to tell the VM to use a different temporary directory. See the java man page under `ADVANCED SERVICEABILITY OPTIONS FOR JAVA` for more details. ALL FIXED ISSUES, BY COMPONENT AND PRIORITY: client-libs/2d: (P3) JDK-8386576: Calculating Area using a complex polygon creates spurious horizontal line segments (P3) JDK-8387593: Using XOR mode to clear the content leaves some traces in metal client-libs/java.awt: (P4) JDK-8389648: [TEST_BUG] java/awt/TextField/CaretPositionTest/CaretPositionTest.java fails in OL-9 (P4) JDK-8389509: SetPrinterDevice check GlobalAlloc return value core-libs/java.net: (P4) JDK-8388538: com/sun/net/httpserver/simpleserver/jwebserver/MaxRequestTimeTest.java does not test the maximum request time core-libs/java.time: (P3) JDK-8388214: (tz) Update Timezone Data to 2026c core-libs/java.util:i18n: (P3) JDK-8390380: Cherry-pick metazone changes from CLDR to support tzdata2026c for JDK update releases hotspot/compiler: (P4) JDK-8386474: Aarch64: Correct static_assert((N & (N - 1)) == 0 (P4) JDK-8382135: AArch64: HotCodeCollectorMoveFunction.java fails intermittently (P4) JDK-8387721: C2: Print Node barrier data (P4) JDK-8384606: HotCodeHeap tests require C2 (P4) JDK-8387414: Insufficient feature gate in vm_version_x86 for UseKyberIntrinsics (P4) JDK-8389966: Remove dangling bootstrap compile reason name (P4) JDK-8390521: RISC-V: Clean up vector register dispatch in MachSpillCopyNode::implementation (P4) JDK-8390441: RISC-V: Fix C2 stack-to-stack spill copies with large offsets (P4) JDK-8391041: RISC-V: Fix out-of-bounds read in string_indexof_char intrinsic (P4) JDK-8386580: Typing corrections and style improvements in x86 ML DSA/KEM/SHA3 stub code hotspot/gc: (P2) JDK-8389846: GenShen: ShenandoahScanRemembered::process_clusters may miss dirty cards when use write table (P2) JDK-8389905: Shenandoah: SBSA::card_table uses own temp registers that clobber obj (P3) JDK-8390452: RISC-V: gc/shenandoah/TestSieveObjects.java fails with "assert(UseZba) failed: must be" (P3) JDK-8382627: Shenandoah: assert(old_reserve_result + young_reserve_result <= old_available + young_available) failed (P3) JDK-8390122: Shenandoah: SBS::oop_load drops memory ordering decorators (P4) JDK-8386288: GenShen: assert(region->get_top_before_promote() == nullptr) failed: Cannot add region scheduled for in-place-promotion to the collection set (P4) JDK-8386202: Genshen: Regulator thread reporting hiccup times proportional to safepoint times (P4) JDK-8387391: hotspot_gc_shenandoah should include gtests (P4) JDK-8387293: Shenandoah: Improve gc+stats logging for generational mode (P4) JDK-8387907: Shenandoah: Marking loop prefetch (P4) JDK-8388173: Shenandoah: Overly strict assertion failure in CAS barrier (P4) JDK-8386992: Shenandoah: Pad hot atomic counters to avoid false sharing on the allocation path (P4) JDK-8385732: Shenandoah: Penalize triggering heuristics for out-of-cycle degenerated (P4) JDK-8390307: Shenandoah: Print region age in region printouts (P4) JDK-8388756: Shenandoah: Re-learning at explicit GC request considered harmful (P4) JDK-8385643: Shenandoah: Rework mark loop inlining (P4) JDK-8387961: Shenandoah: Rework marked objects loop prefetch (P4) JDK-8387713: Shenandoah: Rework native card table barrier (P4) JDK-8386292: Shenandoah: Simplify and strengthen C1 barriers (P4) JDK-8387707: Shenandoah: Simplify reserved queue handling in mark loop (P4) JDK-8390654: Test gc/TestUseGCOverheadLimit.java#G1 fails on linux-arm32 (P5) JDK-8386252: Shenandoah: Polish LRB argument preparation hotspot/runtime: (P3) JDK-8390386: [Linux] Systemd tests failing on systemd newer than 257 (P3) JDK-8384557: Allow configuration of the JVM's temporary directory on Linux (P3) JDK-8388385: CDS dumping fails with circular JAR manifest Class-Path (P3) JDK-8390314: Linux: "assert(current_limit <= upper_bound) failed: invariant" build failure on incus (cgroups) (P4) JDK-8390033: Disable stringop-overflow in shenandoahHeap.cpp (P4) JDK-8390132: Test runtime/cds/appcds/ClassPathAttrCircularReference.java "written dynamic archive" missing in output hotspot/svc-agent: (P4) JDK-8382338: Various serviceability agent tests fail on Linux x86_64 with LTO enabled security-libs/javax.crypto:pkcs11: (P4) JDK-8389453: [unix] Avoid unused variables warnings in libj2pkcs11 and adjust malloc rv handling (P4) JDK-8388872: Avoid unused variables warnings in libj2pkcs11 (P4) JDK-8388412: Update PKCS#11 Cryptographic Token Interface to v3.2 security-libs/javax.net.ssl: (P4) JDK-8387124: Incomplete algorithm decomposition for TLS 1.3 cipher suites in SSLAlgorithmDecomposer (P5) JDK-8387874: Timeout when running test BulkCipherDisabledAlgorithms tools/jlink: (P3) JDK-8375623: Excessive disk space usage of jpackage and jlink tests in debug builds after JDK-8373246 (P3) JDK-8389480: GenerateJLIClassesPluginTest.java and IncludeLocalesPluginTest.java tests in tools/jlink/plugins/ fail due to AccessDeniedExceptions on Windows