RELEASE NOTES: JDK openjdk8u312

Notes generated: Thu May 02 01:02:11 CEST 2024





Issue Description

Updated the Default Enabled Cipher Suites Preference

The preference of the default enabled cipher suites has been changed. The compatibility impact should be minimal. If needed, applications can customize the enabled cipher suites and the preference. For more details, refer to the SunJSSE provider documentation and the JSSE Reference Guide documentation.


Issue Description

Modified HttpURLConnection behavior when no suitable proxy is found

The behavior of HttpURLConnection when using a ProxySelector has been modified with this JDK release. HttpURLConnection used to fall back to a DIRECT connection attempt if the configured proxy(s) failed to make a connection. This release introduces a change whereby no DIRECT connection will be attempted in such a scenario. Instead, the HttpURLConnection.connect() method will fail and throw an IOException which occurred from the last proxy tested.

Modified HttpURLConnection Behavior When a Suitable Proxy Is Not Found

The behavior of HttpURLConnection when using ProxySelector has been modified in this JDK release. HttpURLConnection used to fall back to a direct connection attempt if the configured proxy(s) failed to make a connection. Beginning with this release, the default behavior has been changed to no longer use a direct connection when the first proxy connection attempt fails.

A new system property,, can be set to a value of "true" should an application need to fall back to the old behavior (fall back to a direct connection when the first proxy connection attempt fails).


Issue Description

OperatingSystemMXBean.getProcessCpuLoad Is Now Container Aware

For JVMs running in a container, OperatingSystemMXBean.getProcessCpuLoad now considers only the CPU resources available to the container when calculating CPU load. Prior to this change, the calculation included all CPUs on a host. After this change, management agents may report higher CPU usage by JVMs in containers that are constrained to a limited set of CPUs.



Priority Bug Summary
P4 JDK-8166673 The new implementation of Robot.waitForIdle() may hang


Priority Bug Summary
P3 JDK-6847157 java.lang.NullPointerException: HDC for component at sun.java2d.loops.Blit.Blit
P3 JDK-8262829 Native crash in Win32PrintServiceLookup.getAllPrinterNames()
P3 JDK-8263311 Watch registry changes for remote printers update instead of polling
P4 JDK-8196181 sun/java2d/GdiRendering/ fails


Priority Bug Summary
P4 JDK-8240518 Incorrect JNU_ReleaseStringPlatformChars in Windows Print
P4 JDK-8004148 NPE in sun.awt.SunToolkit.getWindowDeactivationTime


Priority Bug Summary
P3 JDK-8237495 Java MIDI fails with a dereferenced memory error when asked to send a raw 0xF7
P4 JDK-8238567 SoftMainMixer.processAudioBuffers(): Wrong handling of stoppedMixers


Priority Bug Summary
P3 JDK-8072767 DefaultCellEditor for comboBox creates ActionEvent with wrong source object


Priority Bug Summary
P3 JDK-8170467 (reflect) Optimize SignatureParser's use of StringBuilders
P3 JDK-8035424 Performance problem in sun.reflect.generics.parser.SignatureParser


Priority Bug Summary
P3 JDK-7146776 Deadlock between URLStreamHandler.getHostAddress and file.Handler.openconnection
P3 JDK-8161016 Strange behavior of URLConnection with proxy
P4 JDK-8254967 spins on TLS session close
P4 JDK-8054118 java/net/ipv6tests/ failed intermittently
P4 JDK-8134989 java/net/MulticastSocket/ failed due to unexpected IP address


Priority Bug Summary
P4 JDK-8263382 java/util/logging/ failed with "checkLoggers: getLoggerNames() returned unexpected loggers"


Priority Bug Summary
P3 JDK-8272990 [JavaSecurityScanner] review package* Native methods should be private
P4 JDK-8268103 JNI functions incorrectly return a double after JDK-8265836
P4 JDK-8265836 OperatingSystemImpl.getCpuLoad() returns incorrect CPU load inside a container


Priority Bug Summary
P3 JDK-8247469 getSystemCpuLoad() returns -1 on linux when some offline cpus are present and cpusets.effective_cpus is not available


Priority Bug Summary
P4 JDK-8131062 aarch64: add support for GHASH acceleration
P4 JDK-8134869 AARCH64: GHASH intrinsic is not optimal
P4 JDK-8248901 Signed immediate support in .../share/assembler.hpp is broken.
P5 JDK-8042557 compiler/uncommontrap/ fails with: GC triggered before VM initialization completed


Priority Bug Summary
P4 JDK-8262000 jdk/jfr/event/gc/detailed/ failed with "OutOfMemoryError: Java heap space"


Priority Bug Summary
P2 JDK-8266206 Build failure after JDK-8264752 with older GCCs
P3 JDK-8264752 SIGFPE crash with option FlightRecorderOptions:threadbuffersize=30M


Priority Bug Summary
P2 JDK-8272214 [8u] Build failure after backport of JDK-8248901
P2 JDK-8272714 [8u] Build failure after backport of JDK-8248901 with MSVC 2013
P2 JDK-8086003 Test fails on OSX with java.lang.RuntimeException 'Narrow klass base: 0x0000000000000000, Narrow klass shift: 3' missing
P3 JDK-8269594 assert(_handle_mark_nesting > 1) failed: memory leak: allocating handle outside HandleMark
P3 JDK-8272124 Cgroup v1 initialization causes NullPointerException when cgroup path contains colon
P3 JDK-8130183 InnerClasses: VM permits wrong inner_class_info_index value of zero
P3 JDK-8194246 JVM crashes when calling getStackTrace if stack contains a method that is a member of a very large class
P4 JDK-8271466 [jdk8u] StackGap test fails on aarch64 due to "-m64"
P4 JDK-8269859 BacktraceBuilder._cprefs needs to be accessed as unsigned short
P4 JDK-8220786 Create new switch to redirect error reporting output to stdout or stderr
P4 JDK-8269851 OperatingSystemMXBean getProcessCpuLoad reports incorrect process cpu usage in containers
P4 JDK-8269882 stack-use-after-scope in NewObjectA


Priority Bug Summary
P2 JDK-8080082 configure fails if you create an empty directory and then run configure from it
P3 JDK-8265978 make test should look for more locations when searching for exit code
P3 JDK-8079891 Store configure log in $BUILD/configure.log
P4 JDK-8269810 [8u] Update after JDK-8250876 backport
P4 JDK-8269953 config.log is not in build directory after 8u backport of JDK-8079891
P4 JDK-8065215 Print warning summary at end of configure


Priority Bug Summary
P2 JDK-8214513 A PKCS12 keystore from Java 8 using custom PBE parameters cannot be read in Java 11
P3 JDK-8259338 Add expiry exception for identrustdstx3 alias to test
P3 JDK-8202837 PBES2 AlgorithmId encoding error in PKCS12 KeyStore
P3 JDK-8157404 Unable to read certain PKCS12 keystores from SequenceInputStream


Priority Bug Summary
P3 JDK-8229243 SunPKCS11-Solaris provider tests failing on Solaris 11.4
P3 JDK-8244154 Update SunPKCS11 provider with PKCS11 v3.0 header files
P4 JDK-8272643 Backout JDK-8176837 from 8u312
P4 JDK-8231222 fix pkcs11 P11_DEBUG guarded native traces


Priority Bug Summary
P3 JDK-8241054 half-closed SSLEngine status may cause application dead loop
P3 JDK-8241248 NullPointerException in
P3 JDK-8206189 sun/security/pkcs12/ fails with Sequence tag error
P3 JDK-8268965 TCP Connection Reset when connecting simple socket to SSL server
P3 JDK-8163326 Update the default enabled cipher suites preference


Priority Bug Summary
P4 JDK-8270137 Kerberos Credential Retrieval from Cache not Working in Cross-Realm Setup