RELEASE NOTES: JDK openjdk8u312

Notes generated: Thu Sep 16 01:42:09 CEST 2021





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).



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
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-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


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


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