We installed a week ago the latest build of JDK 14 (build 27, previous build installed was 24). Since that time almost every test run of Apache Lucene Core (the base library) fails with SEGV.
How to reproduce:
- Clone from Github https://github.com/apache/lucene-solr.git
- "ant bootstrap" (to install IVY)
- "cd lucene/core"
- "ant test"
Stack: [0x00007f6bf65fe000,0x00007f6bf66ff000], sp=0x00007f6bf66f9c18, free space=1007k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0xaf2d20] Node::uncast(bool) const+0x0
V [libjvm.so+0xb6cd93] PhaseIterGVN::transform_old(Node*)+0x93
V [libjvm.so+0xb6999c] PhaseIterGVN::optimize()+0x10c
V [libjvm.so+0x9df904] PhaseIdealLoop::build_and_optimize(LoopOptsMode)+0xa84
V [libjvm.so+0x552cf5] PhaseIdealLoop::optimize(PhaseIterGVN&, LoopOptsMode)+0x1d5
V [libjvm.so+0x550e5e] Compile::Optimize()+0x60e
V [libjvm.so+0x55257c] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, DirectiveSet*)+0xdfc
V [libjvm.so+0x4a2d31] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0xc1
V [libjvm.so+0x55bc8c] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x32c
V [libjvm.so+0x55d068] CompileBroker::compiler_thread_loop()+0x4e8
V [libjvm.so+0xcc40e2] JavaThread::thread_main_inner()+0xe2
V [libjvm.so+0xcc88fd] Thread::call_run()+0x10d
V [libjvm.so+0xb26057] thread_native_entry(Thread*)+0xe7
Windows (no location info):
Stack: [0x0000009af1100000,0x0000009af1200000], sp=0x0000009af11fa3e0, free space=1000k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [jvm.dll+0x50f8f5]
V [jvm.dll+0x50f7e4]
V [jvm.dll+0x503551]
V [jvm.dll+0x505c3c]
V [jvm.dll+0x50592d]
V [jvm.dll+0x505984]
V [jvm.dll+0x505984]
V [jvm.dll+0x505984]
V [jvm.dll+0x505810]
V [jvm.dll+0x505984]
V [jvm.dll+0x505984]
V [jvm.dll+0x50cf35]
V [jvm.dll+0x1edf7a]
V [jvm.dll+0x1e7a9b]
V [jvm.dll+0x1e4d58]
V [jvm.dll+0x17787c]
V [jvm.dll+0x1f3ea5]
V [jvm.dll+0x1f208b]
V [jvm.dll+0x70664d]
V [jvm.dll+0x6ff46a]
V [jvm.dll+0x5f6fb6]
C [ucrtbase.dll+0x20e72]
C [KERNEL32.DLL+0x17bd4]
C [ntdll.dll+0x6ced1]
This seems serious as it makes Lucene unuseable with JDK 14.
Also the following stack trace (which is already tracked by JDK-8235870):
Stacktraces seen (all very similar):
Stack: [0x00007fad33261000,0x00007fad33362000], sp=0x00007fad3335c9d0, free space=1006k
Native frames: (J=compiled Java code, A=aot compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x9d85a8] IdealLoopTree::est_loop_flow_merge_sz() const+0x158
V [libjvm.so+0x9d8782] IdealLoopTree::est_loop_clone_sz(unsigned int) const+0x12
V [libjvm.so+0x9bee31] IdealLoopTree::estimate_peeling(PhaseIdealLoop*) [clone .part.131]+0x21
V [libjvm.so+0x9cc587] IdealLoopTree::iteration_split_impl(PhaseIdealLoop*, Node_List&)+0x1f7
V [libjvm.so+0x9cd9bf] IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x17f
V [libjvm.so+0x9cd870] IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x30
V [libjvm.so+0x9cd870] IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x30
V [libjvm.so+0x9cd870] IdealLoopTree::iteration_split(PhaseIdealLoop*, Node_List&)+0x30
V [libjvm.so+0x9dfa55] PhaseIdealLoop::build_and_optimize(LoopOptsMode)+0xbd5
V [libjvm.so+0x552cf5] PhaseIdealLoop::optimize(PhaseIterGVN&, LoopOptsMode)+0x1d5
V [libjvm.so+0x550e5e] Compile::Optimize()+0x60e
V [libjvm.so+0x55257c] Compile::Compile(ciEnv*, C2Compiler*, ciMethod*, int, bool, bool, bool, DirectiveSet*)+0xdfc
V [libjvm.so+0x4a2d31] C2Compiler::compile_method(ciEnv*, ciMethod*, int, DirectiveSet*)+0xc1
V [libjvm.so+0x55bc8c] CompileBroker::invoke_compiler_on_method(CompileTask*)+0x32c
V [libjvm.so+0x55d068] CompileBroker::compiler_thread_loop()+0x4e8
V [libjvm.so+0xcc40e2] JavaThread::thread_main_inner()+0xe2
V [libjvm.so+0xcc88fd] Thread::call_run()+0x10d
V [libjvm.so+0xb26057] thread_native_entry(Thread*)+0xe7