CAUTION: This site hosts draft documentation for the next release. For published content of the latest release, visit www.eclipse.org/openj9/docs

What's new in version 0.18.0

The following new features and notable changes since v 0.17.0 are included in this release:

Features and changes

jextract now available on macOS for OpenJDK version 8

The jextract tool is now available on macOS® platforms (as well as AIX® and Linux®) for all current versions of OpenJDK: 8, 11, and 13.

New shared classes cache suboption to turn off timestamp checking

You can set the -Xshareclasses:noTimestampChecks option to turn off timestamp checking in shared classes. For more information, see the -Xshareclasses:noTimestampChecks option.

-Xmso 1 MB minimum value on z/OS 64-bit

On z/OS 64-bit, -Xmso has a 1 MB minimum value, to match the minimum stack space provided by the operating system. If you set a value smaller than 1 MB, the value is ignored.

New jstat tool

For compatibility with the HotSpot implementation, OpenJ9 now includes an independent implementation of the jstat tool for retrieving statistics on a VM. For more information, see Java statistics monitoring tool.

-XX:+TransparentHugePage is enabled by default on more Linux systems

-XX:+TransparentHugePage is enabled by default on Linux® systems for POWER and IBM Z as well as x86 systems. This option takes affect only when Transparent Huge Pages (THP) is set to madvise on your system. When transparent Huge Pages are used, your application footprint might increase.

Add new Xdump exit agent and ExitOnOutOfMemoryError option

The new Xdump agent "exit" shuts down the VM when the specified event occurs. The "exit" agent is at priority level 0 and "tool" agent has been moved to priority level 1 to aid in mimicking the behavior of HotSpot options. See Xdump dump agents for more about agents.

OpenJ9 now supports the HotSpot option -XX:[+-]ExitOnOutOfMemoryError. You can set this option to have the VM shut down when a java.lang.OutOfMemory error is thrown by the VM or in Java code. See the -XX:[+-]ExitOnOutOfMemoryError option.

The Xdump "exit" agent is used in the implementation of -XX:[+-]ExitOnOutOfMemoryError.

LUDCL caching enabled by default

By caching the Latest User Defined Class Loader (LUDCL), Java applications that use deserialization extensively can see a performance improvement. This capability is controlled by the -Dcom.ibm.enableClassCaching system property and is now enabled by default. This feature was disabled for the 0.17.0 release due to issue #7332 which has now been resolved.

Terabytes suffix support for -X and -XX options that take a size

OpenJ9 now supports 't' and 'T' suffixes (indicating terabytes) for -X and -XX options that take a <size> parameter.

Improved support for pause-less garbage collection

Support for Concurrent scavenge mode is now extended to macOS®. For more information, see -Xgc:concurrentScavenge.

-Xgc:noConcurrentScavenge option

The previously undocumented option -Xgc:noConcurrentScavenge disables pause-less garbage collection.

Add more changes here...

Full release information

To see a complete list of changes between Eclipse OpenJ9 v 0.17.0 and v 0.18.0 releases, see the Release notes.