RELEASE NOTES FOR: 8u202 ==================================================================================================== Notes generated: Mon Apr 01 19:54:57 CEST 2024 Hint: Prefix bug IDs with https://bugs.openjdk.org/browse/ to reach the relevant JIRA entry. JAVA ENHANCEMENT PROPOSALS (JEP): None. RELEASE NOTES: deploy/webstart: JDK-8210038: Set 32 or 64 bit JRE requirements in a JNLP file Web Start applications can now specify requested JREs with their arch attributes, and select the first one available that matches, even if it is not the same arch (32 bit vs 64 bit) as the currently running JRE. For example, the JNLP content below would place first preference on 64 bit JDK8, and if not available, 32 bit JDK9: ``` ``` Note that in the above example, in order to launch a 64 bit 1.8 JRE, a 64 bit 9 JRE must be installed. If only a 32 bit 9 JRE is installed, the 64 bit 1.8 JRE is unavailable. client-libs/java.awt: JDK-8207322: GTK3 Supported on Linux This release enables Java graphical applications, whether based on JavaFX, Swing, or Abstract Window Toolkit (AWT), to use either the GTK+ version 2 or version 3 on Linux or Solaris. By default, the JDK on Linux or Solaris uses GTK+ 2 if available; if not, it uses GTK+ 3. To use a specific version of GTK+, set the system property `jdk.gtk.version`. This system property may have a value of 2 or 3. You must set this property before your application loads GTK+, and it must not conflict with a GTK+ version that may have been loaded earlier by another toolkit. To get more information about the GTK+ version loaded and GTK+ specific issues, set the system property `jdk.gtk.verbose` equal to true. security-libs/java.security: JDK-8191438: jarsigner Prints When a timestamp Will Expire The `jarsigner` tool now shows more information about the lifetime of a timestamped JAR. New warning and error messages are displayed when a timestamp has expired or is expiring within one year. ALL FIXED ISSUES, BY COMPONENT AND PRIORITY: client-libs: (P4) JDK-8208541: non-ASCII characters in hsdis UPL text client-libs/2d: (P3) JDK-8210384: SunLayoutEngine.isAAT() font is expensive on MacOS client-libs/java.awt: (P2) JDK-8207322: [Client-Libs] Backport GTK3 support on Linux to 8u (P2) JDK-8213583: Error while opening the JFileChooser when desktop contains shortcuts pointing to deleted files (P3) JDK-8191178: [macos] Problem with input of yen symbol (P3) JDK-8204142: AWT hang occurs when sequenced events arrive out of sequence in multiple AppContexts. (P3) JDK-8130655: OS X: keyboard input in textfield is not possible if the window contained textfield is owned by EmbeddedFrame (P3) JDK-8210891: Remove unused extutil.h from JDK8u sources (P3) JDK-8201801: RTL language (Hebrew) is presented from left to right (P3) JDK-8207070: Webstart app popup on wrong screen in a one-screen setup changing to multi-monitor (P4) JDK-8205479: OS X: requestFocus() does not work properly for embedded frame client-libs/javax.imageio: (P4) JDK-8182461: IndexOutOfBoundsException when reading indexed color BMP client-libs/javax.sound: (P3) JDK-8207150: Clip.isRunning() may return true after Clip.stop() was called (P3) JDK-8202264: Race condition in AudioClip.loop() client-libs/javax.swing: (P2) JDK-8206392: [macosx] Cycling through windows (JFrames) does not work with keyboard shortcut core-libs/java.io: (P4) JDK-8207060: Memory leak when malloc fails within WITH_UNICODE_STRING block (P4) JDK-8207750: Native handle leak in java.io.WinNTFileSystem.list() core-libs/java.net: (P4) JDK-8200719: Cannot connect to IPv6 host when exists any active network interface without IPv6 address core-libs/java.nio: (P2) JDK-8202261: (fc) FileChannel.map and RandomAccessFile.setLength should not preallocate space (P3) JDK-8165852: (fs) Mount point not found for a file which is present in overlayfs (P4) JDK-8207145: (fs) Native memory leak in WindowsNativeDispatcher.LookupPrivilegeValue0 core-libs/java.util:i18n: (P4) JDK-8209184: JCK Test Failure due to ResourceBundle core-svc/debugger: (P3) JDK-8191948: jdb error: InvalidTypeException: Can't assign double[][][] to double[][][] deploy/webstart: (P3) JDK-8210038: JNLP 'arch' attribute fails with NPE in SingleInstanceServiceImpl hotspot/compiler: (P1) JDK-8155635: C2: Mixed unsafe oop accesses break alias analysis (P1) JDK-8068440: Test6857159.java times out (P2) JDK-8172850: Anti-dependency on membar causes crash in register allocator due to invalid instruction scheduling (P3) JDK-8209639: assert failure in coalesce.cpp: attempted to spill a non-spillable item (P3) JDK-8208183: update HSDIS plugin license to UPL (P4) JDK-8191006: hsdis disassembler plugin does not compile with binutils 2.29+ (P4) JDK-8073159: improve Test6857159.java (P4) JDK-8164920: ppc: enhancement of CRC32 intrinsic (P4) JDK-8131048: ppc: implement CRC32 intrinsic hotspot/gc: (P2) JDK-8064811: Use THREAD instead of CHECK_NULL in return statements (P2) JDK-8141421: Various test fail with OOME on win x86 (P3) JDK-8211150: G1 Full GC not purging code root memory and hence causing memory leak hotspot/jvmti: (P3) JDK-8211909: JDWP Transport Listener: dt_socket thread crash hotspot/runtime: (P2) JDK-8212709: Backout backport of JDK-8211394 from jdk 8u-dev (P2) JDK-8205965: SIGSEGV on write to NativeCallStack::EMPTY_STACK (P2) JDK-8196882: VS2017 Hotspot Defined vsnprintf Function Causes C2084 Already Defined Compilation Error (P3) JDK-8211394: CHECK_ must be used in the rhs of an assignment statement within a block (P3) JDK-8174050: Compilation errors with clang-4.0 (P3) JDK-8145788: JVM crashes with -XX:+EnableTracing (P4) JDK-8027434: "-XX:OnOutOfMemoryError" uses fork instead of vfork (P4) JDK-8211387: [Zero] atomic_copy64: Use ldrexd for atomic reads on ARMv7 (P4) JDK-8209863: Add a test to verify that -XX:+EnableTracing works (P4) JDK-8211124: HotSpot vm_version.cpp should recognise updated VS2017 hotspot/svc-agent: (P1) JDK-8164383: jhsdb dumps core on Solaris 12 when loading dumped core (P4) JDK-8208091: SA: jhsdb jstack --mixed throws UnmappedAddressException on i686 infrastructure/build: (P2) JDK-8202557: OpenJDK fails to start in Windows 7 and 8.1 after upgrading compiler to VC 2017 (P3) JDK-8211933: [8u] hotspot adlc needs to link statically with libstdc++ for gcc7.3 (P3) JDK-8209359: [8u] hotspot needs to recognise cl.exe 19.13 to build with VS2017. (P4) JDK-8210350: -Wl,-z,defs JDK 8 build failure (P4) JDK-8207057: No debug info for assembler files (P4) JDK-8073139: PPC64: User-visible arch directory and os.arch value on ppc64le cause issues with Java tooling (P4) JDK-8044235: src.zip should include all sources javafx/build: (P1) JDK-8212139: FX 8u-dev fails to build on Oracle Linux 6 after fix for JDK-8206246 javafx/web: (P1) JDK-8210216: Build of 8u-dev fails on 32-bit Linux after fix for JDK-8207159 javafx/window-toolkit: (P2) JDK-8206246: [JavaFX] Backport GTK3 support on Linux to 8u security-libs/java.security: (P3) JDK-8191438: jarsigner should print when a timestamp will expire (P4) JDK-8156709: Cannot call setSeed on NativePRNG on Mac if EGD is /dev/urandom security-libs/javax.crypto:pkcs11: (P3) JDK-8129560: TestKeyPairGenerator.java fails on Solaris because private exponent needs to comply with FIPS 186-4 (P4) JDK-8194864: Outputs more details for PKCS11 tests if the NSS lib version cannot be determined (P4) JDK-8186098: sun/security/pkcs11/KeyStore/SecretKeysBasic.sh failed due to libnss3 version cannot be parsed security-libs/javax.xml.crypto: (P4) JDK-8206911: javax/xml/crypto/dsig/GenerationTests.java fails in 8u-dev (P4) JDK-8210736: jdk/javax/xml/crypto/dsig/GenerationTests.java slow on linux security-libs/org.ietf.jgss: (P3) JDK-8187218: GSSCredential.getRemainingLifetime() returns negative value for TTL > 24 days. security-libs/org.ietf.jgss:krb5: (P3) JDK-8131051: KDC might issue a renewable ticket even if not requested tools/javac: (P4) JDK-8160928: javac incorrectly copies over interior type annotations to bridge method