RELEASE NOTES: JDK 11.0.18

Notes generated: Thu May 02 14:08:37 CEST 2024

JEPs

None.

RELEASE NOTES

security-libs/javax.net.ssl

Issue Description
JDK-8273553

Change in SSLEngine.closeInbound() Behavior


The SunJSSE close notification checks for SSLEngine to have been made less strict to conform to changes in the Transport Layer Security (TLS) RFCs. See also JDK-8253368.

Specifically, if an application tries to close its SSLEngine inbound side using SSLEngine.closeInbound() without having received a close notification message from its peer, the SSLEngine will no longer:

  1. trigger the transmission of a TLS fatal-level alert to the peer, and
  2. invalidate the current TLS session.

The new behavior will still consider this condition an error and will throw a local javax.net.ssl.SSLException. But a fatal-level alert will no longer be generated to be sent to the peer, and the underlying session will remain valid.

In addition, the internal transport context for the SSLEngine will also now be closed. This may result in a different SSLEngineResult.HandshakeStatus value on the SSLEngine. Any outstanding outbound data must still be obtained (SSLEngine.wrap()) and sent in order to gracefully close the connection.


security-libs/javax.crypto

Issue Description
JDK-6782021

Windows KeyStore Updated to Include Access to the Local Machine Location


The Windows KeyStore support in the SunMSCAPI provider has been expanded to include access to the local machine location. The new keystore types are:

  • "Windows-MY-LOCALMACHINE"
  • "Windows-ROOT-LOCALMACHINE"

The following keystore types were also added, allowing developers to make it clear they map to the current user:

  • "Windows-MY-CURRENTUSER" (same as "Windows-MY")
  • "Windows-ROOT-CURRENTUSER" (same as "Windows-ROOT")

security-libs/java.security

Issue Description
JDK-8282730

New Implementation Note for LoginModule on Removing Null from a Principals or Credentials Set


The Set implementation that holds principals and credentials in a JAAS Subject prohibits null elements and any attempt to add, query, or remove a null element will result in a NullPointerException. This is especially important when trying to remove principals or credentials from the subject at the logout phase but they are null because of a previous failed login. Various JDK LoginModule implementations have been fixed to avoid the exception. An Implementation Note has also been added to the logout() method of the LoginModule interface. Developers should verify, and if necessary update, any custom LoginModule implementations to be compliant with this implementation advice.


FIXED ISSUES

client-libs

Priority Bug Summary
P3 JDK-8274029 Remove jtreg tag manual=yesno for java/awt/print/Dialog/DialogOrient.java
P4 JDK-8282046 Create a regression test for JDK-8000326
P4 JDK-8282640 Create a test for JDK-4740761
P4 JDK-8285617 Fix java/awt/print/PrinterJob/ImagePrinting/PrintARGBImage.java manual test
P4 JDK-8273685 Remove jtreg tag manual=yesno for java/awt/Graphics/LCDTextAndGraphicsState.java & show test instruction
P4 JDK-8274032 Remove jtreg tag manual=yesno for java/awt/print/PrinterJob/ImagePrinting/ImageTypes.java & show test UI

client-libs/2d

Priority Bug Summary
P3 JDK-8264666 Change implementation of safeAdd/safeMult in the LCMSImageLayout class
P3 JDK-8022403 sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java fails
P3 JDK-8297153 sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java fails again
P3 JDK-8293672 Update freetype md file
P3 JDK-8295429 Update harfbuzz md file
P3 JDK-8297241 Update sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java
P4 JDK-8285604 closed sun/java2d/GdiRendering/ClipShapeRendering.java failed with "Incorrect color ffeeeeee instead of ff0000ff in pixel (100, 100)"
P4 JDK-7001973 java/awt/Graphics2D/CopyAreaOOB.java fails
P4 JDK-8287609 macOS: SIGSEGV at [CoreFoundation] CFArrayGetCount / sun.font.CFont.getTableBytesNative
P4 JDK-8286624 Regression Test CoordinateTruncationBug.java fails on OL8.3
P4 JDK-8274456 Remove jtreg tag manual=yesno java/awt/print/PrinterJob/PageDialogTest.java
P4 JDK-8198343 Test java/awt/print/PrinterJob/TestPgfmtSetMPA.java may fail w/o printer
P4 JDK-8297147 UnexpectedSourceImageSize test times out on slow machines when fastdebug is used

client-libs/java.awt

Priority Bug Summary
P3 JDK-8030121 java/awt/dnd/MissingDragExitEventTest/MissingDragExitEventTest.java fails
P3 JDK-8296957 One more cast in SAFE_SIZE_NEW_ARRAY2
P3 JDK-8296496 Overzealous check in sizecalc.h prevents large memory allocation
P3 JDK-8274597 Some of the dnd tests time out and fail intermittently
P3 JDK-8255439 System Tray icons get corrupted when Windows scaling changes
P4 JDK-8169187 [macosx] Aqua: java/awt/image/multiresolution/MultiresolutionIconTest.java
P4 JDK-8202836 [macosx] test java/awt/Graphics/TextAAHintsTest.java fails
P4 JDK-8028998 [TEST_BUG] [macosx] java/awt/dnd/DropTargetEnterExitTest/MissedDragExitTest.java failed
P4 JDK-8159599 [TEST_BUG] java/awt/Modal/ModalInternalFrameTest/ModalInternalFrameTest.java
P4 JDK-8079267 [TEST_BUG] Test java/awt/Frame/MiscUndecorated/RepaintTest.java fails
P4 JDK-8129827 [TEST_BUG] Test java/awt/Robot/RobotWheelTest/RobotWheelTest.java fails
P4 JDK-8297481 Create a regression test for JDK-4424517
P4 JDK-8286772 java/awt/dnd/DropTargetInInternalFrameTest/DropTargetInInternalFrameTest.html times out and fails in Windows
P4 JDK-8292866 Java_sun_awt_shell_Win32ShellFolder2_getLinkLocation check MultiByteToWideChar return value for failures
P4 JDK-8295554 Move the "sizecalc.h" to the correct location
P4 JDK-8286872 Refactor add/modify notification icon (TrayIcon)
P4 JDK-6829250 Reg test: java/awt/Toolkit/ScreenInsetsTest/ScreenInsetsTest.java fails in Windows
P4 JDK-8286663 Resolve IDE warnings in WTrayIconPeer and SystemTray
P4 JDK-8296632 Write a test to verify the content change of TextArea sends TextEvent

client-libs/javax.accessibility

Priority Bug Summary
P2 JDK-8287826 javax/accessibility/4702233/AccessiblePropertiesTest.java fails to compile
P3 JDK-8284690 [macos] VoiceOver : Getting java.lang.IllegalArgumentException: Invalid location on Editable JComboBox
P3 JDK-8277497 Last column cell in the JTable row is read as empty cell
P4 JDK-8282777 Create a Regression test for JDK-4515031
P4 JDK-8282778 Create a regression test for JDK-4699544
P4 JDK-8282857 Create a regression test for JDK-4702690
P4 JDK-8285305 Create an automated test for JDK-4495286
P4 JDK-8285373 Create an automated test for JDK-4702233

client-libs/javax.sound

Priority Bug Summary
P4 JDK-8178698 javax/sound/midi/Sequencer/MetaCallback.java failed with timeout
P4 JDK-8275170 Some jtreg sound tests should be marked with sound keyword

client-libs/javax.swing

Priority Bug Summary
P3 JDK-8256109 Create implementation for NSAccessibilityButton protocol
P3 JDK-8256108 Create implementation for NSAccessibilityElement protocol peer
P3 JDK-8254976 Re-enable swing jtreg tests which were broken due to samevm mode
P3 JDK-8244557 test/jdk/javax/swing/JTabbedPane/TestBackgroundScrollPolicy.java failed
P4 JDK-8281296 Create a regression test for JDK-4515999
P4 JDK-8282402 Create a regression test for JDK-4666101
P4 JDK-8285698 Create a test to check the focus stealing of JPopupMenu from JComboBox
P4 JDK-8284294 Create an automated regression test for RFE 4138746
P4 JDK-8273578 javax/swing/JMenu/4515762/bug4515762.java fails on macOS 12
P4 JDK-8194126 Regression automated Test '/open/test/jdk/javax/swing/JColorChooser/Test7194184.java' fails
P4 JDK-8193942 Regression automated test '/open/test/jdk/javax/swing/JFrame/8175301/ScaledFrameBackgroundTest.java' fails
P4 JDK-8284884 Replace polling with waiting in javax/swing/text/html/parser/Parser/8078268/bug8078268.java
P4 JDK-4819544 SwingSet2 JTable Demo throws NullPointerException
P4 JDK-8172269 When checking the default behaviour for a scroll tab layout and checking the 'opaque' checkbox, the area behind tabs is not red.
P4 JDK-8282936 Write a regression test for JDK-4615365
P4 JDK-8280948 Write a regression test for JDK-4659800
P4 JDK-8282937 Write a regression test for JDK-4820080
P4 JDK-8284521 Write an automated regression test for RFE 4371575

core-libs

Priority Bug Summary
P4 JDK-8284977 MetricsTesterCgroupV2.getLongValueEntryFromFile fails when named value doesn't exist

core-libs/java.lang

Priority Bug Summary
P4 JDK-8249694 java/lang/StringBuffer/HugeCapacity.java and j/l/StringBuilder/HugeCapacity.java tests shouldn't be @ignore-d
P4 JDK-8211002 test/jdk/java/lang/Math/PowTests.java skips testing for non-corner-case values

core-libs/java.lang:class_loading

Priority Bug Summary
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.net

Priority Bug Summary
P3 JDK-8285836 sun/net/www/http/KeepAliveCache/KeepAliveProperty.java failed with "RuntimeException: Failed in server"

core-libs/java.nio

Priority Bug Summary
P4 JDK-8277159 Fix java/nio/file/FileStore/Basic.java test by ignoring /run/user/* mount points

core-libs/java.text

Priority Bug Summary
P3 JDK-8299439 java/text/Format/NumberFormat/CurrencyFormat.java fails for hr_HR

core-libs/java.time

Priority Bug Summary
P3 JDK-8294357 (tz) Update Timezone Data to 2022d
P3 JDK-8295173 (tz) Update Timezone Data to 2022e
P3 JDK-8296108 (tz) Update Timezone Data to 2022f
P3 JDK-8297804 (tz) Update Timezone Data to 2022g
P4 JDK-8293834 Update CLDR data following tzdata 2022c update

core-libs/java.util

Priority Bug Summary
P2 JDK-8284771 java/util/zip/CloseInflaterDeflaterTest.java failed with "AssertionError: Expected IOException to be thrown, but nothing was thrown"
P2 JDK-8280950 RandomGenerator:NextDouble() default behavior non conformant after JDK-8280550 fix
P2 JDK-8281183 RandomGenerator:NextDouble() default behavior partially fixed by JDK-8280950
P4 JDK-8280550 SplittableRandom#nextDouble(double,double) can return result >= bound

core-libs/java.util:i18n

Priority Bug Summary
P3 JDK-8296715 CLDR v42 update for tzdata 2022f
P3 JDK-8292899 CustomTzIDCheckDST.java testcase failed on AIX platform
P3 JDK-8294307 ISO 4217 Amendment 173 Update
P3 JDK-8296239 ISO 4217 Amendment 174 Update
P4 JDK-8288377 [REDO] DST not applying properly with zone id offset set with TZ env variable
P4 JDK-8287896 PropertiesTest.sh fail on msys2
P4 JDK-8287902 UnreadableRB case in MissingResourceCauseTest is not working reliably on Windows

core-libs/javax.naming

Priority Bug Summary
P4 JDK-8275535 Retrying a failed authentication on multiple LDAP servers can lead to users blocked

core-svc

Priority Bug Summary
P3 JDK-8293540 [Metrics] Incorrectly detected resource limits with additional cgroup fs mounts
P3 JDK-8294740 Add cgroups keyword to TestDockerBasic.java

core-svc/debugger

Priority Bug Summary
P3 JDK-8215571 jdb does not include jdk.* in the default class filter

core-svc/java.lang.instrument

Priority Bug Summary
P3 JDK-8292778 EncodingSupport_md.c convertUtf8ToPlatformString wrong placing of free

core-svc/java.lang.management

Priority Bug Summary
P3 JDK-8292541 [Metrics] Reported memory limit may exceed physical machine memory
P4 JDK-8288599 com/sun/management/OperatingSystemMXBean/TestTotalSwap.java: Expected total swap size ... but getTotalSwapSpaceSize returned ...
P4 JDK-8268361 Fix the infinite loop in next_line

hotspot/compiler

Priority Bug Summary
P2 JDK-8287091 aarch64 : guarantee(val < (1ULL << nbits)) failed: Field too big for insn
P2 JDK-8288445 AArch64: C2 compilation fails with guarantee(!true || (true && (shift != 0))) failed: impossible encoding
P2 JDK-8292158 AES-CTR cipher state corruption with AVX-512
P2 JDK-8293044 C1: Missing access check on non-accessible class
P2 JDK-8290529 C2: assert(BoolTest(btest).is_canonical()) failure
P2 JDK-8288302 Shenandoah: SIGSEGV in vm maybe related to jit compiling xerces
P3 JDK-8294578 [PPC64] C2: Missing is_oop information when using disjoint compressed oops mode
P3 JDK-8297656 AArch64: Enable AES/GCM Intrinsics
P3 JDK-8290711 assert(false) failed: infinite loop in PhaseIterGVN::optimize
P3 JDK-8289043 C2: Vector constant materialization attempt
P3 JDK-8293816 CI: ciBytecodeStream::get_klass() is not consistent
P3 JDK-8290451 Incorrect result when switching to C2 OSR compilation from C1
P3 JDK-8240281 Remove failing assertion code when selecting first memory state in SuperWord::co_locate_pack
P3 JDK-8290781 Segfault at PhaseIdealLoop::clone_loop_handle_data_uses
P3 JDK-8290705 StringConcat::validate_mem_flow asserts with "unexpected user: StoreI"
P3 JDK-8284358 Unreachable loop is not removed from C2 IR, leading to a broken graph
P4 JDK-8291461 assert(false) failed: bad AD file
P4 JDK-8293826 Closed test fails after JDK-8276108 on aarch64
P4 JDK-8269029 compiler/codegen/TestCharVect2.java fails for client VMs
P4 JDK-8283422 Create a new test for JDK-8254790
P4 JDK-8261336 IGV: enhance default filters
P4 JDK-8287425 Remove unnecessary register push for MacroAssembler::check_klass_subtype_slow_path

hotspot/gc

Priority Bug Summary
P2 JDK-8253877 gc/g1/TestGCLogMessages.java fails - missing "Evacuation failure" message
P2 JDK-8281297 TestStressG1Humongous fails with guarantee(is_range_uncommitted)
P2 JDK-8254874 ZGC: JNIHandleBlock verification failure in stack watermark processing
P4 JDK-8244010 Simplify usages of ProcessTools.createJavaProcessBuilder in our tests
P4 JDK-8243565 some gc tests use 'test.java.opts' and not 'test.vm.opts'
P4 JDK-8227179 Test for new gc+metaspace=info output format

hotspot/jfr

Priority Bug Summary
P3 JDK-8293998 [PPC64] JfrGetCallTrace: assert(_pc != nullptr) failed: must have PC
P4 JDK-8295872 [PPC64] JfrGetCallTrace: Need pc == nullptr check before frame constructor
P4 JDK-8274563 jfr/event/oldobject/TestClassLoaderLeak.java fails when GC cycles are not happening
P4 JDK-8293828 JFR: jfr/event/oldobject/TestClassLoaderLeak.java still fails when GC cycles are not happening

hotspot/runtime

Priority Bug Summary
P2 JDK-8298737 8296772 backport to jdk11u caused build error on sparc
P2 JDK-8291459 JVM crash with GenerateOopMap::error_work(char const*, __va_list_tag*)
P3 JDK-8292083 Detected container memory limit may exceed physical machine memory
P3 JDK-8293472 Incorrect container resource limit detection if manual cgroup fs mounts present
P3 JDK-8283199 Linux os::cpu_microcode_revision() stalls cold startup
P3 JDK-8261445 Use memory_order_relaxed for os::random().
P4 JDK-8289146 containers/docker/TestMemoryWithCgroupV1.java fails on linux ppc64le machine with missing Memory and Swap Limit output
P4 JDK-8264593 debug.cpp utilities should be available in product builds.
P4 JDK-8266967 debug.cpp utility find() should print Java Object fields.
P4 JDK-8282345 handle latest VS2022 in abstract_vm_version
P4 JDK-8268893 jcmd to trim the glibc heap
P4 JDK-8263871 On sem_destroy() failing we should assert
P4 JDK-8282306 os::is_first_C_frame(frame*) crashes on invalid link access
P4 JDK-8295469 S390X: Optimized builds are broken
P4 JDK-8243568 serviceability/logging/TestLogRotation.java uses 'test.java.opts' and not 'test.vm.opts'
P4 JDK-8226236 win32: gc/metaspace/TestCapacityUntilGCWrapAround.java fails
P4 JDK-8284752 Zero does not build on Mac OS X due to missing os::current_thread_enable_wx implementation
P5 JDK-8284732 FFI_GO_CLOSURES macro not defined but required for zero build on Mac OS X

hotspot/svc

Priority Bug Summary
P4 JDK-8285794 AsyncGetCallTrace might acquire a lock via JavaThread::thread_from_jni_environment
P4 JDK-8285921 serviceability/dcmd/jvmti/AttachFailed/AttachReturnError.java fails on Alpine

hotspot/svc-agent

Priority Bug Summary
P4 JDK-8263326 Remove ReceiverTypeData check from serviceability/sa/TestPrintMdo.java
P4 JDK-8269873 serviceability/sa/Clhsdb tests are using a C2 specific VMStruct field

hotspot/test

Priority Bug Summary
P4 JDK-8295288 Some vm_flags tests associate with a wrong BugID
P4 JDK-8295322 Tests for JDK-8271459 were not backported to 11u
P4 JDK-8282642 vmTestbase/gc/gctests/LoadUnloadGC2/LoadUnloadGC2.java fails intermittently with exit code 1

infrastructure

Priority Bug Summary
P4 JDK-8292887 Bump update version for OpenJDK: jdk-11.0.18
P4 JDK-8295641 Fix DEFAULT_PROMOTED_VERSION_PRE=ea for -dev

infrastructure/build

Priority Bug Summary
P2 JDK-8299616 [11u] Bootcycle build fails after JDK-8257679 backport
P2 JDK-8257679 Improved unix compatibility layer in Windows build (winenv)
P3 JDK-8260272 bash configure --prefix does not work after JDK-8257679
P3 JDK-8217032 Check pandoc capabilities in configure
P3 JDK-8287724 Fix various issues with msys2
P3 JDK-8295714 GHA ::set-output is deprecated and will be removed
P3 JDK-8258005 JDK build fails with incorrect fixpath script
P3 JDK-8239708 Split basics.m4 into basic.m4 and util.m4
P3 JDK-8247676 vcruntime140_1.dll is not needed on 32-bit Windows
P3 JDK-8242468 VS2019 build missing vcruntime140_1.dll
P4 JDK-8294138 [11u] Revert change from JDK-8210962 in basic.m4
P4 JDK-8206125 [windows] cannot pass relative path to --with-boot-jdk
P4 JDK-8276841 Add support for Visual Studio 2022
P4 JDK-8213239 Configure cannot handle command overrides with arguments
P4 JDK-8259485 Document need for short paths when building on Windows
P4 JDK-8296652 Restore windows aarch64 fixpath patch that was removed in 8239708
P4 JDK-8280863 Update build README to reflect that MSYS2 is supported
P4 JDK-8268860 Windows-Aarch64 build is failing in GitHub actions

infrastructure/release_eng

Priority Bug Summary
P4 JDK-8299393 [11u] Remove designator DEFAULT_PROMOTED_VERSION_PRE=ea for release 11.0.18

security-libs/java.security

Priority Bug Summary
P3 JDK-8296485 BuildEEBasicConstraints.java test fails with SunCertPathBuilderException
P3 JDK-8280890 Cannot use '-Djava.system.class.loader' with class loader in signed JAR
P3 JDK-8296480 java/security/cert/pkix/policyChanges/TestPolicy.java is failing
P3 JDK-8282730 LdapLoginModule throw NPE from logout method after login failure
P3 JDK-8280158 New test from JDK-8274736 failed with/without patch in JDK11u
P3 JDK-8288132 Update test artifacts in QuoVadis CA interop tests
P4 JDK-8279066 entries.remove(entry) is useless in PKCS12KeyStore
P4 JDK-8257722 Improve "keytool -printcert -jarfile" output
P4 JDK-8273236 keytool does not accurately warn about algorithms that are disabled but have additional constraints

security-libs/javax.crypto

Priority Bug Summary
P3 JDK-8277970 Test jdk/sun/security/ssl/SSLSessionImpl/NoInvalidateSocketException.java fails with "tag mismatch"
P4 JDK-6782021 It is not possible to read local computer certificates with the SunMSCAPI provider

security-libs/javax.crypto:pkcs11

Priority Bug Summary
P4 JDK-8288985 P11TlsKeyMaterialGenerator should work with ChaCha20-Poly1305

security-libs/javax.net.ssl

Priority Bug Summary
P3 JDK-8212096 javax/net/ssl/ServerName/SSLEngineExplorerMatchedSNI.java failed intermittently due to SSLException: Tag mismatch
P3 JDK-8273553 sun.security.ssl.SSLEngineImpl.closeInbound also has similar error of JDK-8253368
P3 JDK-8227651 Tests fail with SSLProtocolException: Input record too big
P4 JDK-8277881 Missing SessionID in TLS1.3 resumption in compatibility mode

security-libs/javax.security

Priority Bug Summary
P3 JDK-8292682 Code change of JDK-8282730 not updated to reflect CSR update

tools

Priority Bug Summary
P4 JDK-8287895 Some langtools tests fail on msys2

tools/javac

Priority Bug Summary
P2 JDK-8293578 Duplicate ldc generated by javac
P2 JDK-8222251 preflow visitor is not visiting lambda expressions
P3 JDK-8266082 AssertionError in Annotate.fromAnnotations with -Xdoclint
P4 JDK-8029633 Raw inner class constructor ref should not perform diamond inference

tools/javadoc(tool)

Priority Bug Summary
P3 JDK-8222091 Javadoc does not handle package annotations correctly on package-info.java
P4 JDK-8210047 some pages contain content outside of landmark region

xml/jaxp

Priority Bug Summary
P3 JDK-8290207 Missing notice in dom.md
P4 JDK-8290209 jcup.md missing additional text

xml/org.w3c.dom

Priority Bug Summary
P3 JDK-8287076 Document.normalizeDocument() produces different results