Movatterモバイル変換


[0]ホーム

URL:


Country
Contact Sales
java

JDK 17.0.3 Release Notes

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

The following sections summarize changes made in all Java SE 17.0.3 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 17.0.3.1.1

Fixes from the prior BPR are included in this version.


Java™ SE Development Kit 17, Patch 17.0.3.1 (JDK 17.0.3.1)

May 2, 2022

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

 

IANA TZ Data 2022a

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

 

Security Baselines

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

JRE Family VersionJRE Security Baseline (Full Version String)
1717.0.3+8
1111.0.15+8
88u331-b09
77u341-b08

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, theSecurity Baseline page canbe 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 onCritical Patch Updates, Security Alerts and Bulletins. It is not recommended that this JDK (version 17.0.3.1) be used after the next critical patch update scheduledfor July 19, 2022.

 

Changes

 

core-libs/java.io
 New System Property to Disable Windows Alternate Data Stream Support in java.io.File

The Windows implementation ofjava.io.File allows access to NTFS Alternate Data Streams (ADS) by default. Such streams have a structure like “filename:streamname”. A system propertyjdk.io.File.enableADS has been added to control this behavior. To disable ADS support injava.io.File, the system propertyjdk.io.File.enableADS should be set tofalse (case ignored). Stricter path checking however prevents the use of special devices such asNUL:

SeeJDK-8285445

 

Bug Fixes

This release is based on the previous CPU and does not contain any additional security fixes. The following issues have also been resolved:

JBSComponentSubcomponentSumary
JDK-8284920xmljavax.xml.pathIncorrect Token type causes XPath expression to return incorrect results
JDK-8284548xmljaxpInvalid XPath expression causes StringIndexOutOfBoundsException


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

The following sections summarize changes made in all Java SE 17.0.3 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 17.0.3.0.1

Bug Fixes

BugIdCategorySubcategoryDescription
JDK-8281181hotspotruntimeDo not use CPU Shares to compute active processor count
JDK-8282583xmljaxpUpdate BCEL md to include the copyright notice
JDK-8283350core-libsjava.time(tz) Update Timezone Data to 2022a

Java™ SE Development Kit 17.0.3 (JDK 17.0.3)

April 19, 2022

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

 

IANA TZ Data 2021e

For more information, refer toTimezone 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 17.0.3 arespecified in the following table:

JRE Family VersionJRE Security Baseline (Full Version String)
1717.0.3+8
1111.0.15+8
88u331-b09
77u341-b08

 

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, theSecurity Baseline page canbe 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 onCritical Patch Updates, Security Alerts and Bulletins.It is not recommended that this JDK (version 17.0.3) be used after the next critical patch update scheduledfor July 19, 2022.

 

New Features

xml/jaxp
 New XML Processing Limits

Three processing limits have been added to the XML libraries. These are:

  • jdk.xml.xpathExprGrpLimit

Description: Limits the number of groups an XPath expression can contain.

Type: integer

Value: A positive integer. A value less than or equal to 0 indicates no limit. If the value is not an integer, aNumberFormatException is thrown. Default 10.

  • jdk.xml.xpathExprOpLimit

Description: Limits the number of operators an XPath expression can contain.

Type: integer

Value: A positive integer. A value less than or equal to 0 indicates no limit. If the value is not an integer, aNumberFormatException is thrown. Default 100.

  • jdk.xml.xpathTotalOpLimit

Description: Limits the total number of XPath operators in an XSL Stylesheet.

Type: integer

Value: A positive integer. A value less than or equal to 0 indicates no limit. If the value is not an integer, aNumberFormatException is thrown. Default 10000.

Supported processors

  • jdk.xml.xpathExprGrpLimit andjdk.xml.xpathExprOpLimit are supported by the XPath processor.

  • All three limits are supported by the XSLT processor.

Setting properties

For the XSLT processor, the properties can be changed through theTransformerFactory. For example,

        TransformerFactory factory = TransformerFactory.newInstance();        factory.setAttribute("jdk.xml.xpathTotalOpLimit", "1000");

For both the XPath and XSLT processors, the properties can be set through the system property andjaxp.properties configuration file located in theconf directory of the Java installation. For example,

        System.setProperty("jdk.xml.xpathExprGrpLimit", "20");

or in thejaxp.properties file,

        jdk.xml.xpathExprGrpLimit=20

 

There are two known issues:

  1. An XPath expression that contains a short form of the parent axis ".." can return incorrect results. SeeJDK-8284920 for details.
  2. An invalid XPath expression that ends with a relational operator such as ‘<’ ‘>’ and ‘=’ will cause the processor to erroneously throw StringIndexOutOfBoundsException instead of XPathExpressionException. SeeJDK-8284548 for details.
JDK-8270504 (not public)

Other Notes

security-libs/java.security
 Only Expose Certificates With Proper Trust Settings as Trusted Certificate Entries in macOS KeychainStore

On macOS, only certificates with proper trust settings in the user keychain will be exposed as trusted certificate entries in the KeychainStore type of keystore. Also, calling theKeyStore::setCertificateEntry method or thekeytool -importcert command on a KeychainStore keystore now fails with aKeyStoreException. Instead, call the macOS "security add-trusted-cert" command to add a trusted certificate into the user keychain.

JDK-8278449 (not public)

core-libs/javax.naming
 Parsing of URL Strings in Built-in JNDI Providers Is More Strict

The parsing of URLs in the LDAP, DNS, and RMI built-in JNDI providers has been made more strict. The strength of the parsing can be controlled by system properties:

  -Dcom.sun.jndi.ldapURLParsing="legacy" | "compat" | "strict"    (to control "ldap:" URLs)  -Dcom.sun.jndi.dnsURLParsing="legacy" | "compat" | "strict"     (to control "dns:" URLs)  -Dcom.sun.jndi.rmiURLParsing="legacy" | "compat" | "strict"     (to control "rmi:" URLs)

 

The default value is "compat" for all of the three providers.

  • The "legacy" mode turns the new validation off.
  • The "compat" mode limits incompatibilities.
  • The "strict" mode is stricter and may cause regression by rejecting URLs that an application might consider as valid.

In "compat" and "strict" mode, more validation is performed. As an example, in the URL authority component, the new parsing only accepts brackets around IPv6 literal addresses. Developers are encouraged to usejava.net.URI constructors or its factory method to build URLs rather than handcrafting URL strings.

If an illegal URL string is found, ajava.lang.IllegalArgumentException or ajavax.naming.NamingException (or a subclass of it) is raised.

JDK-8278972 (not public)

 

Bug Fixes

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

Issues fixed in 17.0.3:

#JBSComponentSubcomponentSumary
1JDK-8270874client-libs2dJFrame paint artifacts when dragged from standard monitor to HiDPI monitor
2JDK-8275650core-libsjava.ioProblemlist java/io/File/createTempFile/SpecialTempFile.java for Windows 11
3JDK-8279833core-libsjava.langLoop optimization issue in String.encodeUTF8_UTF16
4JDK-8274658core-libsjava.util:i18nISO 4217 Amendment 170 Update
5JDK-8277795core-libsjavax.namingLDAP connection timeout not honoured under contention
6JDK-8277777hotspotcompiler[Vector API] assert(r->is_XMMRegister()) failed: must be in x86_32.ad
7JDK-8277441hotspotcompilerCompileQueue::add fails with assert(_last->next() == __null) failed: not last
8JDK-8275610hotspotcompilerC2: Object field load floats above its null check resulting in a segfault
9JDK-8275326hotspotcompilerC2: assert(no_dead_loop) failed: dead loop detected
10JDK-8262134hotspotcompilercompiler/uncommontrap/TestDeoptOOM.java failed with "guarantee(false) failed: wrong number of expression stack elements during deopt"
11JDK-8277447hotspotcompilerHotspot C1 compiler crashes on Kotlin suspend fun with loop
12JDK-8273277hotspotcompilerC2: Move conditional negation into rc_predicate
13JDK-8271202hotspotcompilerC1: assert(false) failed: live_in set of first block must be empty
14JDK-8275645hotspotcompiler[JVMCI] avoid unaligned volatile reads on AArch64
15JDK-8271056hotspotcompilerC2: "assert(no_dead_loop) failed: dead loop detected" due to cmoving identity
16JDK-8275643hotspotcompilerC2's unaryOp vector intrinsic does not properly handle LongVector.neg
17JDK-8275847hotspotcompilerScheduling fails with "too many D-U pinch points" on small method
18JDK-8275874hotspotcompiler[JVMCI] only support aligned reads in c2v_readFieldValue
19JDK-8279076hotspotcompilerC2: Bad AD file when matching SqrtF with UseSSE=0
20JDK-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
21JDK-8276314hotspotcompiler[JVMCI] check alignment of call displacement during code installation
22JDK-8279225hotspotcompiler[arm32] C1 longs comparison operation destroys argument registers
23JDK-8279412hotspotcompiler[JVMCI] failed speculations list must outlive any nmethod that refers to it
24JDK-8278871hotspotcompiler[JVMCI] assert((uint)reason < 2* _trap_hist_limit) failed: oob
25JDK-8278824hotspotgcUneven work distribution when scanning heap roots in G1
26JDK-8276177hotspotjvmtinsk/jvmti/RedefineClasses/StressRedefineWithoutBytecodeCorruption failed with "assert(def_ik->is_being_redefined()) failed: should be being redefined to get here"
27JDK-8275800hotspotjvmtiRedefinition leaks MethodData::_extra_data_lock
28JDK-8278239hotspotjvmtivmTestbase/nsk/jvmti/RedefineClasses/StressRedefine failed with EXCEPTION_ACCESS_VIOLATION at 0x000000000000000d
29JDK-8276184hotspotruntimeExclude lambda proxy class from the CDS archive if its caller class is excluded
30JDK-8274714hotspotruntimeIncorrect verifier protected access error message
31JDK-8277342hotspotruntimevmTestbase/nsk/stress/strace/strace004.java fails with SIGSEGV in InstanceKlass::jni_id_for
32JDK-8276662hotspotruntimeScalability bottleneck in SymbolTable::lookup_common()
33JDK-8266490hotspotruntimeExtend the OSContainer API to support the pids controller of cgroups
34JDK-8278020hotspotruntime~13% variation in Renaissance-Scrabble
35JDK-8278384hotspotruntimeBytecodes::result_type() for arraylength returns T_VOID instead of T_INT
36JDK-8273967hotspotruntimegtest os.dll_address_to_function_and_library_name_vm fails on macOS12
37JDK-8274753hotspotruntimeZGC: SEGV in MetaspaceShared::link_shared_classes
38JDK-8274944hotspotruntimeAppCDS dump causes SEGV in VM thread while adjusting lambda proxy class info
39JDK-8273526hotspotruntimeExtend the OSContainer API pids controller with pids.current
40JDK-8274935hotspotruntimedumptime_table has stale entry
41JDK-8278309hotspotruntime[windows] use of uninitialized OSThread::_state
42JDK-8273341hotspotruntimeUpdate Siphash to version 1.0
43JDK-8278951hotspotruntimecontainers/cgroup/PlainRead.java fails on Ubuntu 21.10
44JDK-8265150hotspotsvcAsyncGetCallTrace crashes on ResourceMark
45JDK-8269849hotspottestvmTestbase/gc/gctests/PhantomReference/phantom002/TestDescription.java failed with "OutOfMemoryError: Java heap space: failed reallocation of scalar replaced objects"
46JDK-8273682toolsjshellUpgrade Jline to 3.20.0
47JDK-8276141xmljaxpXPathFactory set/getProperty method
48JDK-8282761xmljaxpXPathFactoryImpl remove setProperty and getProperty methods

[8]ページ先頭

©2009-2025 Movatter.jp