Visit Azul.com Support

Resolved Issues in Older Releases of Azul Zing Builds of OpenJDK

Need help?
Schedule a consultation with an Azul performance expert.
Contact Us
Note
This page lists the issues resolved in releases prior to Azul Zing Builds of OpenJDK (Zing) 20.02.1.0.
Issue ID Release Resolved Description

ZVM-7678

19.12.102

Backport of JDK-8162795 to fix JNI weak handle native memory leak which can occur in some use cases since ZVM 19.02.102.0.

ZVM-13744

19.12.0.0

Crash during application start with -XX:+UseC2 on AMD avx2 since ZVM 19.09.0.0

ZVM-13736

19.12.0.0

Zing might crash at startup with Java Flight Recorder on systems with specific network interface configurations.

ZVM-13579

19.12.0.0

An issue with -XX:+PreserveFramePointer in _counterMode_AESCrypt intrinsic.

ZVM-12803

19.12.0.0

Test failure due to code cache exhaustion on configurations with heaps of 4 GB and below are more likely to happen on ZVM 19.10.0.0 as the default CodeCache size progressively shrinks for such configurations.

ZVM-13596

19.10.1.0

Utilization of the ProfileLogOut flag with a hard disk that has I/O issues causes TTSP problems in ZVM 19.10.0.0.

ZVM-12392

19.08.1.0

ZVM crash when running Zing with OrgLock license.

ZVMTOOL-226

19.08.0.0

Better detection when attempting to open non-Zing GC logs.

19180

19.07.0.0

Internal Error (src/share/vm/runtime/sharedRuntime.cpp:764) guarantee(markWord::is_self_locked(h()→mark())) failed: should be self-locked.

18837

19.05.0.0

Zing 19.04.0.0 gives error for Cloudera Enterprise 5.14.4 (Hadoop 2.6.0-cdh5.14.4).

18651

19.05.0.0

ZVM launches fail with the following error message if the license file is in the MS-DOS encoding format: Zing VM Error: Zing License Verification failed.

17462

19.02.1.0

MaxJavaStackTraceDepth of -1 is handled incorrectly by the JVM.

17128

19.02.1.0

Accumulation of thread local allocation in LLVMContext for long lived compiler thread.

17041

19.02.1.0

Fix memory leaks associated with thread deaths.

17147

19.02.0.0

-XX:[+/-]UseStringDeduplication command-line option is ignored by the JVM.

16759

19.01.0.0

Crash in native code outside the JVM due to calling ComputeLinearScanOrder::mark_loops()+0x196.

15702

18.09.1.0

JVM crash with signature guarantee(!OopHelper::is_old(obj)) seen at low frequency under heavy allocation pressure.

14927

18.09.0.0

JVM fails to crash with guarantee (!function_not_ok) due to persistent duplicate class ids (KIDs).

14952

18.06.1.0

18.07.1.0

Memory leak in modified ThreadLocal implementation.

14887

18.06.1.0

18.07.1.0

Limit iterations in NMT mutator flush loops.

14886

18.07.0.0

-XX:+PreserveFramePointer crashes on 18.06.0.0.

14704

18.07.0.0

Support switching AT&T/intel syntax by PrintAssemblyOptions.

14558

18.07.0.0

Take CFS quota/period into account when determining available CPU count.

14195

18.07.0.0

Crash due to incorrectly formed implicit null check.

14182

18.07.0.0

Implement the set_native_thread_name method in Zing.

12042

18.07.0.0

Print error message on java -version when no valid license was found.

4323

18.07.0.0

-XX:+PreserveFramePointer now supports C1 frames in addition to the previously supported Falcon and interpreter frames.

14186

18.06.0.0

JVM fails to crash with guarantee (!function_not_ok).

14078

18.06.0.0

Occasional failures to replace compiled code by more optimized compiled code in the OSR part of the tiered JIT compiler (C2 and Falcon).

13812

18.06.0.0

Improved null pointer handling of java.lang.reflect.Method.invoke() in Falcon to match C2.

12028

18.06.0.0

MemoryMXBean.getHeapMemoryUsage().getCommitted() returns the heap size that is equal to MemoryMXBean.getHeapMemoryUsage().getUsed().

8884

18.06.0.0

Enhanced support for using the perf tool to create flamegraphs and similar performance analysis tools: stackwalking of Java code running in the Interpreter mode and therefore fewer [unknown] markings are now possible.

14245

18.05.0.0

bool AutoTuneResourceDefaultsBasedOnXmx ZVM command-line option added. false by default but set to true when running java -version under ZVM.

13641

18.05.0.0

Reduced memory footprint amount taken from a ZST partition by java -version and j-tools run under the ZVM.

13426

18.04.1.0

Increased time variation when using Bouncy Castle library to decode data stored in a database on multi-socket systems.

13765

18.04.0.0

Incorrect comparison of two null values of different types in some cases.

12904

18.04.0.0

Printing header when PrintCodeCacheFlushing is set to true is not consistent with printing of other GC log file headers.

13944

18.03.2.0

ReadyNow incorrectly limits counters to 16-bits instead of 32-bits.

13943

18.03.2.0

After object cache hit, Falcon does not provide inlining information to ReadyNow.

13933

18.03.1.0

JVM crash when Compile Stashing runs out of local storage space.

13070

18.03.1.0

AsyncGetCallTrace call: crash in GPGC_Layout::addr_to_BasePageForSpace().

13360

18.03.0.0

Legacy stack walking compilation policy removed. A warning displays if a value of 1 is specified for CompilationPolicyChoice.

13312

18.03.0.0

Added auto-identification of ExtClassLoader.

12815

18.02.0.0

ZVM crashes due to a series of errors in InductiveRangeCheckElimination.cpp.

13102

18.02.0.0

MapR default library loading incompatible with ReadyNow. The fix ensures that MapR 4+ works with ReadyNow with default settings.

13154

18.02.0.0

ZVM crashes with no hs_err and zero size core file when run in combination with AZ_CHEAP_MEMORY_SANITIZER=1.

10414

18.01.0.0

In the product version of the ZVM, restrict the set of command-line options shown in ZVision’s HotSpot Flags window to the available set of -XX options. Previously, non-product options were also shown.

12521

18.01.0.0

Backport of JDK-8063086: Math.pow yields different results upon repeated calls.

12629

18.01.0.0

The application threads waits to be notified by the collector until the end of next new collection for allocations when they hit allocation failure.

The use of the newly introduced -XX:GPGCMutatorSleepBeforeAllocRetryMS option makes the delayed to respond to the freed pages earlier and helps in reducing the length of allocation delays seen by the application threads.

12428

17.12.1.0

Expressions with nested Math.pow() fail with the result Not-a-Number error for some floating point values.

12767

17.12.1.0

Comodo root Certificate Authority is missing in cacerts files.

8606

17.12.0.0

Zing crashes if its command line contains only -Xms but no -Xmx, and -Xms is larger than default max heap size (currently 1G). The fix ensures no more such crashes happen.

11772

17.12.0.0

Zing tools do not work with an OEM license because the entry point JAR file is loaded by bootstrap.

12010

17.11.1.0

ZVM garbage collector related process abort at C [libjvm.so+0x29672c] GPGC_Layout::addr_to_BasePageForSpace.

12461

17.11.1.0

ZVM Falcon compiler related process abort at C [libjvm.so+0x58dca8] DolphinParser::reify_abstract_state.

12492

17.11.1.0

Interpreter or other runtime ZVM abort following a deoptimization of Falcon compiled code and an attempt to recompile and run the newly compiled method. Internal root cause is Falcon compiler’s reuse of OopTable indices.

8341

17.11.0.0

ZVM will not start if -Xmx and -Xms are both specified and have values that are odd numbers.

11143

17.11.0.0

Unexpected use of the System.nanoTime() method in the Falcon compiler.

11850

17.11.0.0

ZVM crashed in guarantee(secondary_supers()) failed: Unitialized secondary supers during typecheck.

11896

17.11.0.0

Backport of JDK-6512830: Error: assert(tag_at(which).is_unresolved_klass(), "Corrupted constant pool").

12131

17.11.0.0

Backport JDK-8075484: SocketInputStream.socketRead0 can hang even with soTimeout set.

12132

17.11.0.0

Backport JDK-8178536: OOM ERRORS + SERVICE-THREAD TAKES A PROCESSOR TO 100%.

10064

17.10.0.0

ZVM crashed due to incorrect deoptimization in clone intrinsic implementation.

11612

17.06.2.0

A bug in a function call in the optimized intrinsic code for AES.

10043

17.06.0.0

Using the -usedatex command-line option together with the Set Time Range option of the GC Log Analyser tool resulted in empty graphs.

10298

17.06.0.0

INVOKEINTERFACE called on the java.lang.Object method in ASM-generated byte code fails after several iterations.

10428

17.06.0.0

The use of the date/time X-axis of the GC Log Analyser tool encounters error caused by duplicate elapsed times for items in a dataset.

10440

17.06.0.0

Warning counters differ in jstat -profile and -profileerrors output of the ReadyNow tool.

10499

17.03.3.0

Internal Error at ciObject.hpp: compiler_assert(is_instance()) failed: bad cast :

10353

17.03.3.0

Crash due to an unexpected error detected by Java Runtime Environment:

guarantee(lbl == _ex_labels→at(idx)) failed: single handler bci given 2 different rel_pc mappings.

10334

17.03.3.0

Scala 2.12 fails with bytecode error.

10174

17.03.3.0

Crash with the error message: LLVM fatal error: Unable to allocate section memory!

10297

17.03.2.0

Crash with the following problematic frame: J (C2) com.mchange.v2.c3p0.impl.NewPooledConnection.carefulCheckHoldability(Ljava/sql/Connection;)I

9970

17.03.2.0

Zing crashes with the following error: LLVM fatal error: Do not know how to split the result of this operator!

10156

17.03.1.0

Too many recompilations on a particular method results in the same being marked "do not-compile any longer".

4702

17.03.0.0

Use of the OnOutOfMemoryError flag triggers a crash.

8298

16.12.3.0

New generation relocation aborts can lead to Java heap live set growth. This affects ZVM versions 16.01.0.0 through ZVM 16.12.2.

9463

16.12.3.0

Frequent New GC cycles can lead to Java heap live set growth. When the New GC intercycle time is lower than the promotion threshold, objects can be retained in the new generation causing a growth in the live set. This affects ZVM versions 15.09.0.0 through ZVM 16.12.2.

7911

16.12.2.0

Crash with the following problematic frame: C [libjvm.so+0x38d1c2] jvmti_GetTime+0x62.

9050

16.12.2.0

On some RHEL 5 systems, where the command: find /sys/devices/system/cpu -name thread_siblings produces a list of files that is in descending numerical order by a CPU directory name, ThreadOpt will exit with an IndexOutOfBoundsException.

9086

16.12.1.0

Applications can hang when ZVM runs with the Falcon compiler.

8655

16.12.0.0

Crash due to usage of the +UseFastJNIAccessors option. The option has not been implemented yet. To avoid crashing the option marked as unchangeable.

6520

16.12.0.0

No timestamp generated with the +PrintGCDetails option alone on command line causes gcLogAnalyser "unable to read".

8561

16.10.1.0

ZVM can exit due to code cache exhaustion by Java monitors. Applications which make heavy use of Java monitors either due to lock contention or wait/notify mechanisms, can potentially see a high footprint related to monitors in the code cache.

8224

16.10.0.0

A stray C2 thread is running at 100% CPU without making any forward progress.

8071

16.07.1.0

C-Heap Leak happens in raw-monitor creation. RawMonitors are leaking semaphore objects which are eagerly created during VMLock creation.

The fix includes releasing sem_t objects and calling sem_destroy.

7756

16.07.1.0

ZVM crashes with the following problematic frame: [libjvm.so+0x318ab3] java_lang_Class::as_klassOop(oopDesc*)+0x23.

2820

16.07.1.0

Nashorn benchmark stalls after encountering data error processing profile log error (error: 101) while running Nashorn benchmarks with ReadyNow enabled. The fix adds supports for dealing with Nashorn and eliminates this issue.

4758

16.07.0.0

Additional control flags introduced to prevent startup crashes due to usage of ProfileLogIn. Following are those control flags: * ProfileUsePersistedInstructionData * ProfileProactivelyCompileC1 * ProfileProactivelyCompileC2

4811

16.07.0.0

jstat -profile (and -profileerrors) returned unresolved symbols when ProfileLogIn is not specified. The fix now ensures that zeros will be printed instead of unresolved symbols.

5803

16.07.0.0

Wrong class was being loaded only when using the ProfileLogIn profile. The fix implements safe mode for ReadyNow to avoid an improper speculative load that might produce a misleading and worrisome report.

6300

16.07.0.0

Removed non-relevant data from graphs (Old Gen Collector: App Threads Delay and Pages Promoted).

6778

16.07.0.0

ReadyNow failed to recognize the generated Lambda classes as generated. The fix implements safe mode for ReadyNow to use when ReadyNow’s generated class heuristics do not work for a class generator.

7422

16.07.0.0

Enabling ProfileLiveObjects seems to increase GC cycle durations significantly. The fix implements an improved hash function along with few other optimizations resulting in reduced GC cycle durations.

7434

16.07.0.0

The default value of MlockLevel has been changed to 1 from 0: * MlockLevel=0 – do not attempt any mlocks * MLockLevel=1 – quietly attempt to mlock libjvm.so

7451

16.07.0.0

Crash with the following problematic frame: StubRoutines::find_SEGV_continuation_address.

7654

16.07.0.0, 16.01.7.0

Resolving an orphaned FinalLive objects through JNI weak handle during ConcurrentRefProcessing could lead to the following crash: guarantee(loop_count < size) failed: should have found the relocation record

7422

16.01.7.0

Enabling ProfileLiveObjects seems to increase GC cycle durations significantly. The fix implements an improved hash function along with few other optimizations resulting in reduced GC cycle durations.

5547

16.01.7.0

When running on some Cassandrs nodes, the following enexpected error has been detected: guarantee(GPGC_Marks::is_any_marked_strong_live(obj)) failed: NewGen oop at final clear not strong live

6907

16.01.6.0

aCrash due to an internal error:

guarantee(loop_count < size) failed: should have found the relocation record

The fix ensures that a class of a Java object is treated as StrongLive even if that object is itself only FinalLive. This guarantees that the classes of FinalLive objects cannot be orphaned before the StrongLive mark-through of FinalLive referents, and will ensure their relocation.

6058, 6108

16.01.5.0

High GC pauses due to JVM code being paged out. The fix introduces a new command-line option MlockLevel, which can be tuned. If the flag is set without a value, the default ensures no page JVM code page-outs. The option specifies one of four mlock strategies: . Do not attempt any mlock (EARLY) . mlock libjvm.so text region (LATE) . mlockall (EARLY) . mlockall (LATE)

Example: use -XX:+MlockLevel=1001 to attempt strategy 1 while reporting verbosely. This option should be used only with guidance of Azul Support.

6258

16.01.5.0

A random error code is being returned from the JDK method: java.util.prefs.FileSystemPreferences.lockFile0().

6436

16.01.5.0

In ZVision, clicking on the tty_lock entry in zvision → threads → contention causes a crash.

6631

16.01.5.0

+MinimizeJNICriticalLock causes an IllegalArgumentException in java.util.zip.Deflater.deflate.

6898

16.01.5.0

Nginx-Clojure does not work with Zing because the linker option -Wl,-soname,libjvm.so has not been passed and the libjvm.so library cannot be found.

7071

16.01.5.0

Zing VM can crash at very early stages due to lack of system resources.

6542

16.01.3.0

Applications that use large chunks(>100s of MBs) of DirectByteBuffer could potentially face high TTSP times in New/OldGC pause3 because of the deallocation of these buffers.

6791

16.01.3.0

NullPointerException caused by wrong code generated from C2.

6938

16.01.3.0

Thread.sleep can sleep ~30% longer than specified when the Intel pstate driver is enabled. The pstate driver can be disabled to workaround this problem with older ZVMs.

You can determine whether the pstate driver has been enabled by checking /sys/devices/system/cpu/cpu0/cpufreq/scaling_driver for the string “intel_pstate”.

6956

16.01.3.0

A race condition in CodeCache::GPGC_unlink can cause a crash when there are multiple GenPauselessOldThreads. This affects ZVM versions 16.01.0.0, 16.01.1.0, and 16.01.2.0. For these ZVMs, the workaround is to set -XX:GenPauselessOldThreads=1 but this can cause a spike in Old GC cycle times for applications with a large live set.

6736

16.01.2.0

Fatal error in native method: JDWP PushLocalFrame: Unable to push JNI frame, jvmtiError=AGENT_ERROR_OUT_OF_MEMORY(188).

6124

16.01.1.0

Crash in generated code of the following method: it.unimi.dsi.fastutil.ints.IntRBTreeSet.add.

6370

16.01.1.0

GC log file SYSINFO line reports Page Cache active(file) value for the Page Cache active(anon) value.

2699

16.01.0.0

New intrinsic for BigInteger.multiplToLen() for improved BigInteger performance.

3178

16.01.0.0

The new UseCRC32Intrinsics option for improved CRC32 performance.

3910

16.01.0.0

New intrinsics for the squareToLen and mulAdd methods in BigInteger for improved BigInteger performance.

5002

16.01.0.0

The UseSuperWord ZVM option is turned on by default. It enables up to 16-byte vectorization.

5437

16.01.0.0

Memory-tracking functions to record the use of the native memory. For more details, see the Native Memory Tracking section of the Zing 16.01.0.0 User Guide.

5478

16.01.0.0

As of ZVM 14.09.0.0, a difference in the version of libstdc on the system and the libstdc version that is statically linked into libjvm could cause a crash due to malloc corruption.

5626

16.01.0.0

The printir compiler command dumps out C2 node IR phase by phase for a specific Java method.

5663

16.01.0.0

Crash with the following problematic frame: AddNode::Ideal(PhaseGVN*, bool).

5858

16.01.0.0

When the JVM core dumps, the hs error file is incorrectly reporting SCHED_IDLE threads as UNKNOWN.

5754

16.01.0.0

Crash with the following problematic frame: jvm_exception_handler.

5791

16.01.0.0

VM takes a long time to shutdown due to background page scrubbing.

6142

16.01.0.0

Crash with the following problematic frame: GraphKit::add_exception_states_from(JVMState*).

5467

15.09.1.0

Crash in Java_sun_font_ FreetypeFontScaler_disposeNativeScaler().