RELEASE NOTES FOR: 20 ==================================================================================================== Notes generated: Fri Jul 01 02:21:18 CEST 2022 Hint: Prefix bug IDs with https://bugs.openjdk.java.net/browse/ to reach the relevant JIRA entry. JAVA ENHANCEMENT PROPOSALS (JEP): None. RELEASE NOTES, BY COMPONENT: None. ALL FIXED ISSUES, BY COMPONENT AND PRIORITY: client-libs: (P5) JDK-8284672: Collapse identical catch branches in java.desktop client-libs/java.awt: (P1) JDK-8288332: Tier1 validate-source fails after 8279614 (P3) JDK-8279614: The left line of the TitledBorder is not painted on 150 scale factor (P4) JDK-8265586: [windows] last button is not shown in AWT Frame with BorderLayout and MenuBar set. (P4) JDK-8289238: Refactoring changes to PassFailJFrame Test Framework (P5) JDK-8288993: Make AwtFramePackTest generic by removing @requires tag client-libs/javax.swing: (P3) JDK-8012675: javax.swing.JEditorPane is unclear on the handling of unsupported HTML script tags (P4) JDK-8284619: javax/swing/JTable/8236907/LastVisibleRow.java failed with "Test Case Failed!!, Last Row not Visible!!!" (P4) JDK-8288707: javax/swing/JToolBar/4529206/bug4529206.java: setFloating does not work correctly (P4) JDK-8287743: javax/swing/text/CSSBorder/6796710/bug6796710.java failed core-libs: (P4) JDK-8288594: Address possibly lossy conversions in java.base FloatToDecimal (P4) JDK-8284858: Start of release updates for JDK 20 core-libs/java.lang: (P4) JDK-8288021: Add hard test cases to jdk.internal.math.DoubleToDecimalChecker (P5) JDK-8289078: Make STARTTIME_ANY and STARTTIME_PROCESS_UNKNOWN fields static in ProcessHandleImpl (P5) JDK-8288628: Unnecessary Hashtable usage in ConditionalSpecialCasing core-libs/java.lang.invoke: (P2) JDK-8288425: Footprint regression due MH creation when initializing StringConcatFactory (P4) JDK-8288011: StringConcatFactory: Split application of stringifiers core-libs/java.lang:class_loading: (P3) JDK-8287917: System.loadLibrary does not work on Big Sur if JDK is built with macOS SDK 10.15 and earlier core-libs/java.lang:reflect: (P4) JDK-8266670: Better modeling of access flags in core reflection (P4) JDK-8288573: Make Executable.getParameterCount() actually abstract (P4) JDK-8284942: Proxy building can just iterate superinterfaces once (P4) JDK-8288227: Refactor annotation implementation to use pattern matching for instanceof core-libs/java.net: (P3) JDK-8286171: HttpClient/2 : Expect:100-Continue blocks indefinitely when response is not 100 (P4) JDK-8288746: HttpClient resources could be reclaimed more eagerly (P4) JDK-8289291: HttpServer sets incorrect value for "max" parameter in Keep-Alive header value (P4) JDK-8276798: HttpURLConnection sends invalid HTTP request (P4) JDK-8286962: java/net/httpclient/ServerCloseTest.java failed once with ConnectException (P4) JDK-8287904: Reduce runtime of java.net microbenchmarks (P5) JDK-8288330: Avoid redundant ConcurrentHashMap.get call in Http2ClientImpl.deleteConnection (P5) JDK-8288468: Avoid redundant HashMap.get call in NegotiateAuthentication.firstToken (P5) JDK-8285521: Minor improvements in java.net.URI core-libs/java.nio: (P4) JDK-8288515: (ch) Unnecessary use of Math.addExact() in java.nio.channels.FileLock.overlaps() (P4) JDK-8288080: (fc) FileChannel::map for MemorySegments should state it always throws UOE (P4) JDK-8288687: (fc) Unix version ofFileChannelImpl.transferTo0() should should return IOS_UNSUPPORTED if not Linux, macOS, nor AIX (P4) JDK-6980847: (fs) Files.copy needs to be "tuned" (P4) JDK-8286160: (fs) Files.exists returns unexpected results with C:\pagefile.sys because it's not readable (P4) JDK-8289095: (fs) UnixCopyFile build error on linux-x86 (P4) JDK-8289073: (fs) UnsatisfiedLinkError for sun.nio.fs.UnixCopyFile.bufferedCopy0() (P4) JDK-8287580: (se) CancelledKeyException during channel registration (P4) JDK-8287905: Reduce runtime of java.nio microbenchmarks (P5) JDK-8285519: Change usages of TimeUnit.convert to TimeUnit.toXXX core-libs/java.text: (P4) JDK-8288667: Reduce runtime of java.text microbenchmarks core-libs/java.time: (P4) JDK-8288673: Reduce runtime of java.time microbenchmarks core-libs/java.util: (P2) JDK-8288173: JDK-8202449 fix causes conformance test failure : api/java_util/Random/RandomGenerator/NextFloat.html core-libs/java.util.jar: (P4) JDK-8282036: Change java/util/zip/ZipFile/DeleteTempJar.java to stop HttpServer cleanly in case of exceptions (P5) JDK-8287696: Avoid redundant Hashtable.containsKey call in JarVerifier.doneWithMeta core-libs/java.util.stream: (P4) JDK-8284640: CollectorImpl class could be a record class core-libs/java.util:i18n: (P3) JDK-8288979: Improve CLDRConverter run time (P4) JDK-8288378: [BACKOUT] DST not applying properly with zone id offset set with TZ env variable (P4) JDK-8285838: DST not applying properly with zone id offset set with TZ env variable (P4) JDK-8287902: UnreadableRB case in MissingResourceCauseTest is not working reliably on Windows core-libs/javax.lang.model: (P4) JDK-8286034: Add SourceVersion.RELEASE_20 core-libs/javax.naming: (P4) JDK-8288207: Enhance MalformedURLException in Uri.parseCompat (P4) JDK-8287672: jtreg test com/sun/jndi/ldap/LdapPoolTimeoutTest.java fails intermittently in nightly run (P4) JDK-8288895: LdapContext doesn't honor set referrals limit core-svc/java.lang.management: (P4) JDK-8288599: com/sun/management/OperatingSystemMXBean/TestTotalSwap.java: Expected total swap size ... but getTotalSwapSpaceSize returned ... core-svc/javax.management: (P5) JDK-8287924: Avoid redundant HashMap.containsKey call in EnvHelp.mapToHashtable core-svc/tools: (P4) JDK-8288724: Prevent NullPointerException in serviceability/tmtools/jstack/DaemonThreadTest.java if jstack process fails docs: (P4) JDK-8288740: Change incorrect documentation for sjavac flag globalization/locale-data: (P4) JDK-8287868: Localized names update in COMPAT locale provider hotspot: (P4) JDK-8288181: AArch64: clean up out-of-date comments (P4) JDK-8287926: AArch64: intrinsics for divideUnsigned and remainderUnsigned methods in java.lang.Integer and java.lang.Long (P4) JDK-8288094: cleanup old _MSC_VER handling hotspot/compiler: (P2) JDK-8289421: No-PCH build for Minimal VM was broken by JDK-8287001 (P3) JDK-8288781: C1: LIR_OpVisitState::maxNumberOfOperands too small (P4) JDK-8289094: [JVMCI] reduce JNI overhead and other VM rounds trips in JVMCI (P4) JDK-8287984: AArch64: [vector] Make all bits set vector sharable for match rules (P4) JDK-8287028: AArch64: [vectorapi] Backend implementation of VectorMask.fromLong with SVE2 (P4) JDK-8288478: AArch64: Clean up whitespace in assembler_aarch64.hpp (P4) JDK-8287349: AArch64: Merge LDR instructions to improve C1 OSR performance (P4) JDK-8288300: AArch64: Remove the assertion in fmovs/fmovd(FloatRegister, FloatRegister) (P4) JDK-8287835: Add support for additional float/double to integral conversion for x86 (P4) JDK-8287001: Add warning message when fail to load hsdis libraries (P4) JDK-8283775: better dump: VM support for graph querying in debugger with BFS traversal and node filtering (P4) JDK-8286197: C2: Optimize MemorySegment shape in int loop (P4) JDK-8288281: compiler/vectorapi/VectorFPtoIntCastTest.java failed with "IRViolationException: There were one or multiple IR rule failures." (P4) JDK-8288669: compiler/vectorapi/VectorFPtoIntCastTest.java still fails with "IRViolationException: There were one or multiple IR rule failures." (P4) JDK-8289071: Compute allocation sizes of stubs and nmethods outside of lock protection (P4) JDK-8287525: Extend IR annotation with new options to test specific target feature. (P4) JDK-8287801: Fix test-bugs related to stress flags (P4) JDK-8288750: IGV: Improve Shortcuts (P4) JDK-8263384: IGV: Outline should highlight the Graph that has focus (P4) JDK-8283612: IGV: remove Graal module (P4) JDK-8287094: IGV: show node input numbers in edge tooltips (P4) JDK-8288480: IGV: toolbar action is not applied to the focused graph (P4) JDK-8288421: IGV: warn user about all unreachable nodes (P4) JDK-8287373: remove unnecessary paddings in generated code (P4) JDK-8283091: Support type conversion between different data sizes in SLP (P4) JDK-8286104: use aggressive liveness for unstable_if traps (P4) JDK-8287647: VM debug support: find node by pattern in name or dump (P4) JDK-8283726: x86_64 intrinsics for compareUnsigned method in Integer and Long hotspot/gc: (P4) JDK-8280454: G1: ClassLoaderData verification keeps CLDs live that causes problems with VerifyDuringGC during Remark (P4) JDK-8289138: G1: Remove redundant is-marking-active checks in C1 barrier (P4) JDK-8285364: Remove REF_ enum for java.lang.ref.Reference (P4) JDK-8287771: Remove useless G1 After GC summary refinement and sampling thread times (P4) JDK-8288203: runtime/ClassUnload/UnloadTestWithVerifyDuringGC.java fails with release VMs (P4) JDK-8287227: Shenandoah: A couple of virtual thread tests failed with iu mode even without Loom enabled. (P4) JDK-8287818: Shenandoah: adapt nmethod arming from Loom (P4) JDK-8284404: Too aggressive sweeping with Loom hotspot/jfr: (P3) JDK-8288663: JFR: Disabling the JfrThreadSampler commits only a partially disabled state (P3) JDK-8288982: JFR: Log event streaming actions (P3) JDK-8288685: JFR: Use static methods for Active Recording and Active Setting events (P5) JDK-8280235: Deprecated flag FlightRecorder missing from VMDeprecatedOptions test hotspot/jvmti: (P4) JDK-8289098: clean up ported serviceability/jvmti tests hotspot/other: (P4) JDK-8288005: HotSpot build with disabled PCH fails for Windows AArch64 hotspot/runtime: (P1) JDK-8289129: [BACKOUT] JDK-8287281 adjust guarantee in Handshake::execute for the case of target thread being current (P3) JDK-8287007: [cgroups] Consistently use stringStream throughout parsing code (P3) JDK-8287281: adjust guarantee in Handshake::execute for the case of target thread being current (P3) JDK-8284997: arm32 build crashes since JDK-8283326 (P3) JDK-8279047: Remove expired flags in JDK 20 (P4) JDK-8288648: (jni spec) Description of 3rd parameter to AttachCurrentThread is confusing (P4) JDK-8288719: [arm32] SafeFetch32 thumb interleaving causes random crashes (P4) JDK-8284849: Add deoptimization to unified logging (P4) JDK-8288651: CDS test HelloUnload.java should not use literal string as ClassLoader name (P4) JDK-8288064: Class initialization locking (P4) JDK-8288976: classfile parser 'wrong name' error message has the names the wrong way around (P4) JDK-8289006: Cleanup from thread.hpp split (P4) JDK-8288601: Consolidate static/dynamic archive tables (P4) JDK-8287011: Improve container information (P4) JDK-8288003: log events for os::dll_unload (P4) JDK-8288926: make runtime/logging/DeoptStats.java more reliable (P4) JDK-8289477: Memory corruption with CPU_ALLOC, CPU_FREE on muslc (P4) JDK-8288623: Move Continuation classes out of javaClasses.hpp (P4) JDK-8288537: Move Devirtualizer out of hotspot/share/memory/iterator.hpp (P4) JDK-8289182: NMT: MemTracker::baseline should return void (P4) JDK-8271252: os::reserve_memory should not use mtOther as default NMT flag (P4) JDK-8288935: Remove excessive includes introduced in loom (P4) JDK-8288443: Simplify vmClasses::resolve_all() (P4) JDK-8288752: Split thread implementation files (P4) JDK-8288134: Super class names don't have envelopes (P4) JDK-8289147: unify os::infinite_sleep on posix platforms (P4) JDK-8288556: VM crashes if it gets sent SIGUSR2 from outside (P4) JDK-8288282: Zero-release build is broken after JDK-8279047 due to UseHeavyMonitors is read-only hotspot/svc-agent: (P4) JDK-8286397: Address possibly lossy conversions in jdk.hotspot.agent (P5) JDK-8289126: Cleanup unnecessary null comparison before instanceof check in jdk.hotspot.agent (P5) JDK-8135292: Remove duplicate code in Address.java in SA hotspot/test: (P4) JDK-8287124: RenaissanceStressTest.java failed infrastructure: (P4) JDK-8288114: Update JIRA link in vcs.xml infrastructure/build: (P1) JDK-8288238: Add missing file jdk.incubator.concurrent-J.sym.txt (P2) JDK-8287906: Rewrite of GitHub Actions (GHA) sanity tests (P3) JDK-8288396: Always create reproducible builds (P4) JDK-8288399: MacOS debug symbol files not always deterministic in reproducible builds (P4) JDK-8288195: Prepare build system for GHA changes (P4) JDK-8288499: Restore cancel-in-progress in GHA (P4) JDK-8286038: Update --release 19 symbol information for JDK 19 build 26 (P4) JDK-8288609: Update --release 19 symbol information for JDK 19 build 28 other-libs/other: (P4) JDK-8288495: [test] Make OutputAnalyzer exception more informative (P5) JDK-8288140: Avoid redundant Hashtable.get call in Signal.handle security-libs: (P4) JDK-8286395: Address possibly lossy conversions in java.security.jgss (P4) JDK-8286389: Address possibly lossy conversions in jdk.crypto.ec (P4) JDK-8285263: Minor cleanup could be done in java.security security-libs/java.security: (P1) JDK-8288270: Tier1 build failures after JDK-8287178 (P3) JDK-8224768: Test ActalisCA.java fails (P3) JDK-8288132: Update test artifacts in QuoVadis CA interop tests (P3) JDK-8288616: Updating Java Security Standard Algorithm Names (P4) JDK-8289401: Add dump output to TestRawRSACipher.java (P4) JDK-8271838: AmazonCA.java interop test fails (P4) JDK-8287178: IntegerModuloP::multiplicativeInverse returns 0 for 0 (P4) JDK-8286259: Password cleanup after KeyStore.PasswordProtection in P11KeyStore (P4) JDK-8220732: setSeed(long) java api doc is missing warning about provided seed quality (P5) JDK-8288329: Avoid redundant TreeMap.containsKey call in PolicyParser.read security-libs/javax.crypto: (P4) JDK-8286779: javax.crypto.CryptoPolicyParser#isConsistent always returns 'true' security-libs/javax.crypto:pkcs11: (P4) JDK-8288985: P11TlsKeyMaterialGenerator should work with ChaCha20-Poly1305 security-libs/javax.net.ssl: (P4) JDK-8288209: SSL debug message wrong about unsupported authentication scheme (P5) JDK-8267860: Off-by-one bug when searching arrays in AlpnGreaseTest tools/jar: (P4) JDK-8287760: --do-not-resolve-by-default gets overwritten if --warn-if-resolved flags is used tools/javac: (P4) JDK-8286035: Add source 20 and target 20 to javac (P4) JDK-8288130: compiler error with AP and explicit record accessor tools/javadoc(tool): (P3) JDK-8286101: Support formatting in @value tag (P4) JDK-8288994: Incorrect @since tags for @value update in JDK-8286101 tools/jpackage: (P4) JDK-8288961: jpackage: test MSI installation fix (P4) JDK-8288013: jpackage: test utility Windows registry enhancement tools/launcher: (P3) JDK-8233269: Improve handling of JAVA_ARGS