java

JDK 11.0.16 Release Notes

Java SE 11.0.16.1 Based Bundled Patch Release (BPR) - Bug Fixes and Updates

The following sections summarize changes made in all Java SE 11.0.16.1 BPR releases. The BPR releases are listed below in date order, most current BPR first. Note that bug fixes in previous BPRs are also included in the current BPR.

 

Changes in Java SE 11.0.16.1.2

Bug Fixes

BugId Category Subcategory Description
JDK-8239785 hotspot runtime Cgroups: Incorrect detection logic on old systems in hotspot

 

Changes in Java SE 11.0.16.1.1

Fixes from the prior BPR are included in this version.


Java™ SE Development Kit 11, Patch 11.0.16.1 (JDK 11.0.16.1)

August 18, 2022

The full version string for this update release is 11.0.16.1+1 (where "+" means "build"). The version number is 11.0.16.1.

 

IANA TZ Data 2022a

For more information, refer to Timezone Data Versions in the JRE Software.

 

Security Baselines

The security baselines are unchanged from the release of JDK 11.0.16.

JRE Family Version JRE Security Baseline (Full Version String)
11 11.0.16+11
8 8u341-b10
7 7u351-b07

Keeping the JDK up to Date

Oracle recommends that the JDK is updated with each Critical Patch Update. In order to determine if a release is the latest, the Security Baseline page can be used to determine which is the latest version for each release family.

Critical patch updates, which contain security vulnerability fixes, are announced one year in advance on Critical Patch Updates, Security Alerts and Bulletins. It is not recommended that this JDK (version 11.0.16.1) be used after the next critical patch update scheduled for October 18, 2022.

Oracle recommends that all JDK 11 users, even those that have already updated to 11.0.16, uptake the 11.0.16.1 patch release.

 

Changes

hotspot/compiler
 C2 Compilation Errors Unpredictably Crashes JVM

Fixes a regression in the C2 JIT compiler which caused the Java Runtime to crash unpredictably.

See JDK-8292260


Java™ SE Development Kit 11.0.16 (JDK 11.0.16)

July 19, 2022

The full version string for this update release is 11.0.16+11 (where "+" means "build"). The version number is 11.0.16.

 

IANA TZ Data 2022a

For more information, refer to Timezone Data Versions in the JRE Software.

 

Security Baselines

The security baselines for the Java Runtime Environment (JRE) at the time of the release of JDK 11.0.16 are specified in the following table:

JRE Family Version JRE Security Baseline (Full Version String)
11 11.0.16+11
8 8u341-b10
7 7u351-b07

Keeping the JDK up to Date

Oracle recommends that the JDK is updated with each Critical Patch Update. In order to determine if a release is the latest, the Security Baseline page can be used to determine which is the latest version for each release family.

Critical patch updates, which contain security vulnerability fixes, are announced one year in advance on Critical Patch Updates, Security Alerts and Bulletins. It is not recommended that this JDK (version 11.0.16) be used after the next critical patch update scheduled for October 18, 2022.

 

New Features

core-libs/java.net
 HTTPS Channel Binding Support for Java GSS/Kerberos

Support has been added for TLS channel binding tokens for Negotiate/Kerberos authentication over HTTPS through javax.net.HttpsURLConnection.

Channel binding tokens are increasingly required as an enhanced form of security which can mitigate certain kinds of socially engineered, man in the middle (MITM) attacks. They work by communicating from a client to a server the client's understanding of the binding between connection security (as represented by a TLS server cert) and higher level authentication credentials (such as a username and password). The server can then detect if the client has been fooled by a MITM and shutdown the session/connection.

The feature is controlled through a new system property jdk.https.negotiate.cbt which is described fully on the Networking Properties page.

See JDK-8279842

Other Notes

core-libs/java.net
 Update java.net.InetAddress to Detect Ambiguous IPv4 Address Literals

The java.net.InetAddress class has been updated to strictly accept IPv4 address literals in decimal quad notation. The InetAddress class methods are updated to throw an java.net.UnknownHostException for invalid IPv4 address literals. To disable this check, the new "jdk.net.allowAmbiguousIPAddressLiterals" system property can be set to "true".

See JDK-8277608 (not public)
 JDK Bundle Extensions Truncated When Downloading Using Firefox 102

On oracle.com and java.com, certain JDK bundle extensions are getting truncated on download when using Firefox version 102. The downloaded bundles have no file extension like ".exe", ".rpm", ".deb". If you are not able to upgrade to Firefox ESR 102.0.1 or Firefox 103 when it is released, then as a workaround you can:

  • manually add a file extension to the file name after download.
  • use a different browser

See JDK-8277093
core-libs/java.io:serialization
 Vector Should Throw ClassNotFoundException for a Missing Class of an Element

java.util.Vector is updated to correctly report ClassNotFoundException that occurs during deserialization using java.io.ObjectInputStream.GetField.get(name, object)when the class of an element of the Vector is not found. Without this fix, a StreamCorruptedException is thrown that does not provide information about the missing class.

See JDK-8277093

core-libs/java.util.jar
 Default JDK Compressor Will Be Closed when IOException Is Encountered

DeflaterOutputStream.close() and GZIPOutputStream.finish() methods have been modified to close out the associated default JDK compressor before propagating a Throwable up the stack. ZIPOutputStream.closeEntry() method has been modified to close out the associated default JDK compressor before propagating an IOException, not of type ZipException, up the stack.

See JDK-8193682

 

Bug Fixes

This release also contains fixes for security vulnerabilities described in the Oracle Critical Patch Update.

Issues fixed in 11.0.16:

# JBS Component Subcomponent Summary
1JDK-8221741client-libs2dClassCastException can happen when fontconfig.properties is used
2JDK-8262470client-libs2dPrinted GlyphVector outline with low DPI has bad quality on Windows
3JDK-8251558client-libsdemoJ2DBench should support shaped and translucent windows
4JDK-8274751client-libsjava.awtDrag And Drop hangs on Windows
5JDK-8133713client-libsjavax.accessibility[macosx] Accessible JTables always reported as empty
6JDK-8277922client-libsjavax.accessibilityUnable to click JCheckBox in JTable through Java Access Bridge
7JDK-7124301client-libsjavax.accessibility[macosx] When in a tab group if you arrow between tabs there are no VoiceOver announcements.
8JDK-7124298client-libsjavax.accessibility[macosx] Nothing heard from VoiceOver when tabbing between a nested tab group and a parent tab group
9JDK-7124293client-libsjavax.accessibility[macosx] VoiceOver reads percentages rather than the actual values for sliders.
10JDK-8274735client-libsjavax.imageiojavax.imageio.IIOException: Unsupported Image Type while processing a valid JPEG image
11JDK-8212904client-libsjavax.swingJTextArea line wrapping incorrect when using UI scale
12JDK-8277093core-libsjava.io:serializationVector should throw ClassNotFoundException for a missing class of an element
13JDK-8267256core-libsjava.netExtend minimal retry for loopback connections on Windows to PlainSocketImpl
14JDK-8250521core-libsjava.netConfigure initial RTO to use minimal retry for loopback connections on Windows
15JDK-8255264core-libsjava.netSupport for identifying the full range of IPv4 localhost addresses on Windows
16JDK-8279842core-libsjava.netHTTPS Channel Binding support for Java GSS/Kerberos
17JDK-8282293core-libsjava.netDomain value for system property jdk.https.negotiate.cbt should be case-insensitive
18JDK-8258795core-libsjava.util:i18nUpdate IANA Language Subtag Registry to Version 2021-05-11
19JDK-8277368core-libsjavax.scriptMetaspace OOM thrown due to the leak of Nashorn ScriptEngine
20JDK-8279219hotspotcompiler[REDO] C2 crash when allocating array of size too large
21JDK-8234930hotspotcompilerUse MAP_JIT when allocating pages for code cache on macOS
22JDK-8224648hotspotcompilerassert(!exceeding_node_budget()) failed: Too many NODES required! failure with ctw
23JDK-8225475hotspotcompilerNode budget asserts on x86_32/64
24JDK-8223143hotspotcompilerRestructure/clean-up for 'loopexit_or_null()'.
25JDK-8223363hotspotcompilerBad node estimate assertion failure
26JDK-8263403hotspotcompiler[JVMCI] output written to tty via HotSpotJVMCIRuntime can be garbled
27JDK-8283451hotspotcompilerC2: assert(_base == Long) failed: Not a Long
28JDK-8282312hotspotcompilerMinor corrections to evbroadcasti32x4 intrinsic on x86
29JDK-8254887hotspotcompilerC2: assert(cl->trip_count() > 0) failed: peeling a fully unrolled loop
30JDK-8253816hotspotcompilerSupport macOS W^X
31JDK-8253795hotspotcompilerImplementation of JEP 391: macOS/AArch64 Port
32JDK-8214004hotspotcompilerMissing space between compiler thread name and task info in hs_err
33JDK-8216137hotspotcompilerassert(Compile::current()->live_nodes() < Compile::current()->max_node_limit()) failed: Live Node limit exceeded limit
34JDK-8234605hotspotcompilerC2 failed "assert(C->live_nodes() - live_at_begin <= 2 * _nodes_required) failed: Bad node estimate: actual = 208 >> request = 101"
35JDK-8283641hotspotcompilerLarge value for CompileThresholdScaling causes assert
36JDK-8283408hotspotcompilerFix a C2 crash when filling arrays with unsafe
37JDK-8280867hotspotcompilerCpuid1Ecx feature parsing is incorrect for AMD CPUs
38JDK-8279837hotspotcompilerC2: assert(is_Loop()) failed: invalid node class: Region
39JDK-8279668hotspotcompilerx86: AVX2 versions of vpxor should be asserted
40JDK-8275330hotspotcompilerC2: assert(n->is_Root() || n->is_Region() || n->is_Phi() || n->is_MachMerge() || def_block->dominates(block)) failed: uses must be dominated by definitions
41JDK-8275337hotspotcompilerC1: assert(false) failed: live_in set of first block must be empty
42JDK-8280526hotspotcompilerx86_32 Math.sqrt performance regression with -XX:UseSSE={0,1}
43JDK-8279356hotspotcompilerMethod linking fails with guarantee(mh->adapter() != NULL) failed: Adapter blob must already exist!
44JDK-8262011hotspotcompiler[JVMCI] allow printing to tty from unattached libgraal thread
45JDK-8265480hotspotcompileradd basic JVMCI support for JEP 309: Dynamic Class-File Constants
46JDK-8262323hotspotcompilerdo not special case JVMCI in tiered compilation policy
47JDK-8258715hotspotcompiler[JVMCI] separate JVMCI code install timers for CompileBroker and hosted compilations
48JDK-8240335hotspotcompilerC2: assert(found_sfpt) failed: no node in loop that's not input to safepoint
49JDK-8219520hotspotcompilerassert(Compile::current()->live_nodes() < Compile::current()->max_node_limit()) failed: Live Node limit exceeded limit
50JDK-8282231hotspotcompilerx86-32: runtime call to SharedRuntime::ldiv corrupts registers
51JDK-8284633hotspotruntimeCompressedClassPointers.java fails on macos-aarch64
52JDK-8230305hotspotruntimeCgroups v2: Container awareness
53JDK-8282589hotspotruntimeruntime/ErrorHandling/ErrorHandler.java fails on MacOS aarch64 in jdk 11
54JDK-8253727hotspotruntime[cgroups v2] Memory and swap limits reported incorrectly
55JDK-8253714hotspotruntime[cgroups v2] Soft memory limit incorrectly using memory.high
56JDK-8208697hotspotruntimevmTestbase/metaspace/stressHierarchy/stressHierarchy012/TestDescription.java fails with OutOfMemoryError: Metaspace
57JDK-8253817hotspotruntimeSupport macOS Aarch64 ABI in Interpreter
58JDK-8281275hotspotruntimeUpgrading from 8 to 11 no longer accepts '/' as filepath separator in gc paths
59JDK-8214275hotspotruntimeCondyRepeatFailedResolution asserts "Dynamic constant has no fixed basic type"
60JDK-8218751hotspotruntimeDo not store original classfiles inside the CDS archive
61JDK-8281517installinstallImprove the error message shown when a user tries to install the aarch64 bundle on an intel mac
62JDK-8278851security-libsjava.securityCorrect signer logic for jars signed with multiple digest algorithms
63JDK-8255266security-libsjava.securityUpdate Public Suffix List to 3c213aa
64JDK-8268427security-libsjava.securityImprove AlgorithmConstraints:checkAlgorithm performance
65JDK-8274524security-libsjavax.net.sslSSLSocket.close() hangs if it is called during the ssl handshake
66JDK-8270317security-libsjavax.net.sslLarge Allocation in CipherSuite
67JDK-8275082security-libsjavax.xml.cryptoUpdate XML Security for Java to 2.3.0
68JDK-8279520security-libsorg.ietf.jgssSPNEGO has not passed channel binding info into the underlying mechanism
69JDK-8214026toolsjavacCanonicalized archive paths appearing in diagnostics
70JDK-8236210toolsjavacjavac generates wrong annotation for fields generated from record components
71JDK-8261205toolsjavacAssertionError: Cannot add metadata to an intersection type
72JDK-8210649toolsjavacAssertionError @ jdk.compiler/com.sun.tools.javac.comp.Modules.enter(Modules.java:244)
73JDK-8225559toolsjavacassertion error at TransTypes.visitApply
74JDK-8166727toolsjlinkjavac crashed: [jimage.dll+0x1942] ImageStrings::find+0x28