Liberica JDK 22.0.2+11: Release Notes

1. Version information

This document provides information about Liberica JDK 22.0.2 release.

The full version string for this update release is 22.0.2+11. The version number is 22.

Liberica JDK 22 is distributed as .apk, .rpm, .zip, .deb, and .tar.gz packages. Please select the most appropriate for your purposes.

2. What’s New

This release contains the following updates and new features.

Notable Changes

This is the list of the notable issues fixed in this release.

Issue ID

JDK-8329683

Summary: Fallback option for POST-only OCSP requests

Description: Extensive use of GET requests may result in unpredicted behavior with some systems. Now you can set USE_GET to false to use POST requests.

JDK-8329792

Summary: Inconsistent behavior in com.sun.jndi.ldap.Connection::createSocket

Description: SocketFactory now checks what socket is created. Unconnected sockets are not supported. If an unconnected socket is created, it throws a SocketException in SocketFactory::createSocket(). The documentation was also corrected.

JDK-8330870

Summary: dpkg appears to have problems resolving symbolically linked native libraries

Description: Native libraries linked with symbolic links now correctly processed by dpkg.

JDK-8332409

Summary: Add GlobalSign 2 TLS root certificates

Description: GlobalSign Root R46 and GlobalSign Root E46 root certificates were added.

Discontinued OS support

Note that Liberica JDK 22.0.2 is not available for and cannot be run on the following operating systems:

  • Windows x86 (32-bit)

  • macOS 10.x

IANA TZ Data update

This release of Liberica JDK 22.0.2 comes with IANA Time Zone Database version 2024a. The following are the main changes in this update:

Kazakhstan unifies on UTC+5 beginning 2024-03-01. Palestine springs forward a week later after Ramadan. zic no longer pretends to support indefinite-past DST. localtime no longer mishandles Ciudad Juárez in 2422.

3. Known Issues

This is the list of known issues in this release.

Issue ID

JDK-8322567

Summary: Increased Startup Time when Using -XX:StartFlightRecording

Description: A noticeable 10% increase in startup time can be observed when using the -XX:StartFlightRecording option with smaller applications.

Workaround: N/A

JDK-8325737

Summary: Files.readString may return incorrect String when UTF-16 or other Charsets

Description: Strings read with java.nio.files.Files.readString may return incorrect strings when decoding with a Charset other than US-ASCII, ISO08859-1, or UTF-8. Reading strings with other multi-byte charsets such as UTF_16 may produce incorrect results.

Workaround: Run the JDK 22 GA build with -XX:-CompactStrings option to disable the use of 'Compact Strings'.

N/A

Summary: LibericaFX and EGL on Raspbian

Description: As of 2017, the default location of Broadcom libEGL.so and libGLESv2.so has changed in Raspbian OS.

Workaround: To leverage hardware EGL acceleration available from Broadcom video drivers in LibericaFX while running a recent Raspbian OS, run the following commands: 1. cd /opt/vc/lib, 2. sudo ln -s libbrcmEGL.so libEGL.so, 3. sudo ln -s libbrcmGLESv2.so libGLESv2.so

4. Fixed CVEs

This is the list of the security issues fixed in this release. CVSS scores are provided using the CVSS version 3.1 scoring system.

CVE IDCVSS scoreComponentModuleAttack VectorComplexityPrivilegesUser InteractionScopeConfidentialityIntegrityAvailability

CVE-2024-21131

3.7

hotspot

runtime

network

high

none

none

unchanged

none

low

none

CVE-2024-21138

3.7

hotspot

runtime

network

high

none

none

unchanged

none

none

low

CVE-2024-21140

4.8

hotspot

compiler

network

high

none

none

unchanged

low

low

none

CVE-2024-21145

4.8

client-libs

2d

network

high

none

none

unchanged

low

low

none

CVE-2024-21147

7.4

hotspot

compiler

network

high

none

none

unchanged

high

high

none

5. Resolved Issues

JDK issues

This is the list of general JDK issues fixed in this release.

Issue IDSummary

JDK-8185862

AWT Assertion Failure in ::GetDIBits(hBMDC, hBM, 0, 1, 0, gpBitmapInfo, 0) 'awt_Win32GraphicsDevice.cpp', at line 185

JDK-8187759

Background not refreshed when painting over a transparent JFrame

JDK-8238169

BasicDirectoryModel getDirectories and DoChangeContents.run can deadlock

JDK-8261433

Better pkcs11 performance for libpkcs11:C_EncryptInit/libpkcs11:C_DecryptInit

JDK-8295111

dpkg appears to have problems resolving symbolically linked native libraries

JDK-8305072

Win32ShellFolder2.compareTo is inconsistent

JDK-8309218

java/util/concurrent/locks/Lock/OOMEInAQS.java still times out with ZGC, Generational ZGC, and SerialGC

JDK-8310072

JComboBox/DisabledComboBoxFontTestAuto: Enabled and disabled ComboBox does not match in these LAFs: GTK+

JDK-8310513

[s390x] Intrinsify recursive ObjectMonitor locking

JDK-8312383

Log X509ExtendedKeyManager implementation class name in TLS/SSL connection

JDK-8314794

Improve UTF8 String supports

JDK-8316138

Add GlobalSign 2 TLS root certificates

JDK-8316328

Test jdk/jfr/event/oldobject/TestSanityDefault.java times out for some heap sizes

JDK-8319548

Unexpected internal name for Filler array klass causes error in VisualVM

JDK-8319859

Better symbol storage

JDK-8320005

Allow loading of shared objects with .a extension on AIX

JDK-8320097

Improve Image transformations

JDK-8320548

Improved loop handling

JDK-8320692

Null icon returned for .exe without custom icon

JDK-8320707

Virtual thread test updates

JDK-8321075

RISC-V: UseSystemMemoryBarrier lacking proper OS support

JDK-8322078

ZipSourceCache.testKeySourceMapping() test fails with The process cannot access the file because it is being used by another process

JDK-8322484

22-b26 Regression in J2dBench-bimg_misc-G1 (and more) on Windows-x64 and macOS-x64

JDK-8322503

Shenandoah: Clarify gc state usage

JDK-8322726

C2: Unloaded signature class kills argument value

JDK-8322943

runtime/CompressedOops/CompressedClassPointers.java fails on AIX

JDK-8322962

Upcall stub might go undetected when freezing frames

JDK-8323231

Improve array management

JDK-8323390

Enhance mask blit functionality

JDK-8323519

Add applications/ctw/modules to Hotspot tiered testing

JDK-8323552

AbstractMemorySegmentImpl#mismatch returns -1 when comparing distinct areas of the same instance of MemorySegment

JDK-8323670

A few client tests intermittently throw ConcurrentModificationException

JDK-8323685

PrintSystemDictionaryAtExit has mutex rank assert

JDK-8323782

Race: Thread::interrupt vs. AbstractInterruptibleChannel.begin

JDK-8323801

<s> tag doesn’t strikethrough the text

JDK-8324121

SIGFPE in PhaseIdealLoop::extract_long_range_checks

JDK-8324243

Compilation failures in java.desktop module with gcc 14

JDK-8324559

Improve 2D image handling

JDK-8324632

Update Zlib Data Compression Library to Version 1.3.1

JDK-8324646

Avoid Class.forName in SecureRandom constructor

JDK-8324648

Avoid NoSuchMethodError when instantiating NativePRNG

JDK-8324733

[macos14] Problem list tests which fail due to macOS bug described in JDK-8322653

JDK-8324834

Use _LARGE_FILES on AIX

JDK-8324874

AArch64: crypto pmull based CRC32/CRC32C intrinsics clobber V8-V15 registers

JDK-8324933

ConcurrentHashTable::statistics_calculate synchronization is expensive

JDK-8325028

(ch) Pipe channels should lazily set socket to non-blocking mode on first use by virtual thread

JDK-8325095

C2: bailout message broken: ResourceArea allocated string used after free

JDK-8325179

Race in BasicDirectoryModel.validateFileCache

JDK-8325255

jdk.internal.util.ReferencedKeySet::add using wrong test

JDK-8325313

Header format error in TestIntrinsicBailOut after JDK-8317299

JDK-8325432

enhance assert message "relocation addr must be in this section"

JDK-8325567

jspawnhelper without args fails with segfault

JDK-8325579

Inconsistent behavior in com.sun.jndi.ldap.Connection::createSocket

JDK-8325587

Shenandoah: ShenandoahLock should allow blocking in VM

JDK-8325600

Better symbol storage

JDK-8325613

CTW: Stale method cleanup requires GC after Sweeper removal

JDK-8325621

Improve jspawnhelper version checks

JDK-8325730

StringBuilder.toString allocation for the empty String

JDK-8325743

test/jdk/java/nio/channels/unixdomain/SocketOptions.java enhance user name output in error case

JDK-8325763

Revert properties: vm.opt.x.*

JDK-8325862

set -XX:+ErrorFileToStderr when executing java in containers for some container related jtreg tests

JDK-8326106

Write and clear stack trace table outside of safepoint

JDK-8326112

Javadoc snippet for Linker.Option.captureCallState is wrong

JDK-8326140

src/jdk.accessibility/windows/native/libjavaaccessbridge/AccessBridgeJavaEntryPoints.cpp ReleaseStringChars might be missing in early returns

JDK-8326201

[S390] Need to bailout cleanly if creation of stubs fails when code cache is out of space

JDK-8326351

Update the Zlib version in open/src/java.base/share/legal/zlib.md to 1.3.1

JDK-8326446

The User and System of jdk.CPULoad on Apple M1 are inaccurate

JDK-8326496

[test] checkHsErrFileContent support printing hserr in error case

JDK-8326521

JFR: CompilerPhase event test fails on windows 32 bit

JDK-8326529

JFR: Test for CompilerCompile events fails due to time out

JDK-8326643

JDK server does not send a dummy change_cipher_spec record after HelloRetryRequest message

JDK-8326891

Prefer RPATH over RUNPATH for $ORIGIN rpaths in internal JDK binaries

JDK-8326936

RISC-V: Shenandoah GC crashes due to incorrect atomic memory operations

JDK-8326960

GHA: RISC-V sysroot cannot be debootstrapped due to ongoing Debian t64 transition

JDK-8326974

ODR violation in macroAssembler_aarch64.cpp

JDK-8327040

Problemlist ActionListenerCalledTwiceTest.java test failing in macos14

JDK-8327059

os::Linux::print_proc_sys_info add swappiness information

JDK-8327137

Add test for ConcurrentModificationException in BasicDirectoryModel

JDK-8327391

Add SipHash attribution file

JDK-8327413

Enhance compilation efficiency

JDK-8327467

Bump version numbers for 22.0.2

JDK-8327468

Do not restart close if errno is EINTR [macOS/linux]

JDK-8327501

Common ForkJoinPool prevents class unloading in some cases

JDK-8327631

Update IANA Language Subtag Registry to Version 2024-03-07

JDK-8327990

[macosx-aarch64] Various tests fail with -XX:+AssertWXAtThreadSync

JDK-8328066

WhiteBoxResizeTest failure on linux-x86: Could not reserve enough space for 2097152KB object heap

JDK-8328075

Shenandoah: Avoid forwarding when objects don’t move in full-GC

JDK-8328165

improve assert(idx < _maxlrg) failed: oob

JDK-8328166

Epsilon: 'EpsilonHeap::allocate_work' misuses the parameter 'size' as size in bytes

JDK-8328168

Epsilon: Premature OOM when allocating object larger than uncommitted heap size

JDK-8328316

Finisher cannot emit if stream is sequential and integrator returned false

JDK-8328366

Thread.setContextClassloader from thread in FJP commonPool task no longer works after JDK-8327501

JDK-8328524

[x86] StringRepeat.java failure on linux-x86: Could not reserve enough space for 2097152KB object heap

JDK-8328589

unify os::breakpoint among posix platforms

JDK-8328604

remove on_aix() function

JDK-8328638

Fallback option for POST-only OCSP requests

JDK-8328702

C2: Crash during parsing because sub type check is not folded

JDK-8328703

Illegal accesses in Java_jdk_internal_org_jline_terminal_impl_jna_linux_CLibraryImpl_ioctl0

JDK-8328705

GHA: Cross-compilation jobs do not require build JDK

JDK-8328709

AIX os::get_summary_cpu_info support Power 10

JDK-8328744

Parallel: Parallel GC throws OOM before heap is fully expanded

JDK-8328776

[AIX] remove checked_vmgetinfo, use vmgetinfo directly

JDK-8328812

Update and move siphash license

JDK-8328822

C2: "negative trip count?" assert failure in profile predicate code

JDK-8328825

Google CAInterop test failures

JDK-8328948

GHA: Restoring sysroot from cache skips the build after JDK-8326960

JDK-8328953

JEditorPane.read throws ChangedCharSetException

JDK-8328988

[macos14] Problem list LightweightEventTest.java which fails due to macOS bug described in JDK-8322653

JDK-8328997

Remove unnecessary template parameter lists in GrowableArray

JDK-8329013

StackOverflowError when starting Apache Tomcat with signed jar

JDK-8329109

Threads::print_on() tries to print CPU time for terminated GC threads

JDK-8329134

Reconsider TLAB zapping

JDK-8329163

C2: possible overflow in PhaseIdealLoop::extract_long_range_checks()

JDK-8329213

Better validation for com.sun.security.ocsp.useget option

JDK-8329223

Parallel: Parallel GC resizes heap even if -Xms = -Xmx

JDK-8329510

Update ProblemList for JFileChooser/8194044/FileSystemRootTest.java

JDK-8329528

G1 does not update TAMS correctly when dropping retained regions during Concurrent Start pause

JDK-8329545

[s390x] Fix garbage value being passed in Argument Register

JDK-8329570

G1: Excessive is_obj_dead_cond calls in verification

JDK-8329605

hs errfile generic events - move memory protections and nmethod flushes to separate sections

JDK-8329656

assertion failed in MAP_ARCHIVE_MMAP_FAILURE path: Invalid immediate -5 0

JDK-8329663

hs_err file event log entry for thread adding/removing should print current thread

JDK-8329823

RISC-V: Need to sync CPU features with related JVM flags

JDK-8329840

Fix ZPhysicalMemorySegment::_end type

JDK-8329850

[AIX] Allow loading of different members of same shared library archive

JDK-8329862

libjli GetApplicationHome cleanups and enhance jli tracing

JDK-8329958

Windows x86 build fails: downcallLinker.cpp(36) redefinition

JDK-8329961

Buffer overflow in os::Linux::kernel_version

JDK-8330011

[s390x] update block-comments to make code consistent

JDK-8330027

Identity hashes of archived objects must be based on a reproducible random seed

JDK-8330094

RISC-V: Save and restore FRM in the call stub

JDK-8330156

RISC-V: Range check auipc + signed 12 imm instruction

JDK-8330176

Typo in Linker javadoc

JDK-8330242

RISC-V: Simplify and remove CORRECT_COMPILER_ATOMIC_SUPPORT in atomic_linux_riscv.hpp

JDK-8330275

Crash in XMark::follow_array

JDK-8330464

hserr generic events - add entry for the before_exit calls

JDK-8330523

Reduce runtime and improve efficiency of KeepAliveTest

JDK-8330524

Linux ppc64le compile warning with clang in os_linux_ppc.cpp

JDK-8330576

ZYoungCompactionLimit should have range check

JDK-8330611

AES-CTR vector intrinsic may read out of bounds (x86_64, AVX-512)

JDK-8330615

avoid signed integer overflows in zip_util.c readCen / hashN

JDK-8330748

ByteArrayOutputStream.writeTo(OutputStream) pins carrier

JDK-8330814

Cleanups for KeepAliveCache tests

JDK-8330815

Use pattern matching for instanceof in KeepAliveCache

JDK-8331031

unify os::dont_yield and os::naked_yield across Posix platforms

JDK-8331164

createJMHBundle.sh download jars fail when url needed to be redirected

JDK-8331167

UBSan enabled build fails in adlc on macOS

JDK-8331298

avoid alignment checks in UBSAN enabled build

JDK-8331331

:tier1 target explanation in doc/testing.md is incorrect

JDK-8331344

No compiler replay file with CompilerCommand MemLimit

JDK-8331352

error: template-id not allowed for constructor/destructor in C++20

JDK-8331466

Problemlist serviceability/dcmd/gc/RunFinalizationTest.java on generic-all

JDK-8331714

Make OopMapCache installation lock-free

JDK-8331746

Create a test to verify that the cmm id is not ignored

JDK-8331885

C2: meet between unloaded and speculative types is not symmetric

JDK-8331894

[jdk22] compiler/print/CompileCommandMemLimit.java fails after backporting JDK-8325095

JDK-8331942

On Linux aarch64, CDS archives should be using 64K alignment by default

JDK-8332253

Linux arm32 build fails after 8292591

JDK-8332490

JMH org.openjdk.bench.java.util.zip.InflaterInputStreams.inflaterInputStreamRead OOM

JDK-8333093

Incorrect comment in zAddress_aarch64.cpp

JFX issues

This is the list of JFX issues fixed in this release.

Issue IDSummary

JDK-8322251

[Linux] JavaFX is not displaying CJK on Ubuntu 23.10 and later

JDK-8324326

Update ICU4C to 74.2

JDK-8327979

Change JavaFX release version to 22.0.2 in jfx22u

JDK-8328136

Create release notes for JavaFX 22

JDK-8328749

Remove unused imports in javafx.web

JDK-8328752

Fix missing @Overrides in javafx.web

JDK-8329011

Update SQLite to 3.45.3

JDK-8329705

Add missing Application thread checks to platform specific a11y methods

JDK-8329794

Create release notes for JavaFX 22.0.1

JDK-8330462

StringIndexOutOfBoundException when typing anything into TextField

JDK-8331748

Update libxml2 to 2.12.6

JDK-8332328

[GHA] GitHub Actions build fails on Linux: unable to find gcc-13

JDK-8332539

Update libxml2 to 2.12.7

6. Updates to Third Party Libraries

This is the list of changes in the third party libraries.

LibraryFull nameNew VersionModuleJBS

ICU4C

ICU4C

74.2

javafx

JDK-8324326

Zlib

Zlib Data Compression Library

1.3.1

java.base

JDK-8324632

7. Upgrading to the New Version

To keep your Liberica JDK up-to-date and secure, always upgrade to the newest available version once it is released. To upgrade, install the new version over the previous one. For the installation instructions, see Liberica JDK Installation Guide.

ON THIS PAGE