JDK-8236140 : assert(!VerifyHashTableKeys || _hash_lock == 0) failed: remove node from hash table before modifying it
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 8u391,11,12,13,14
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2019-12-17
  • Updated: 2023-10-04
  • Resolved: 2020-01-09
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 11 JDK 13 JDK 14 JDK 15
11.0.7-oracleFixed 13.0.4Fixed 14 b32Fixed 15Fixed
Related Reports
Duplicate :  
Description
Test java/util/concurrent/tck/JSR166TestCase.java crashes with

# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (t:\workspace\open\src\hotspot\share\opto/node.hpp:414), pid=14964, tid=10176
#  assert(!VerifyHashTableKeys || _hash_lock == 0) failed: remove node from hash table before modifying it
#
# JRE version: Java(TM) SE Runtime Environment (14.0+27) (fastdebug build 14-ea+27-1339)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug 14-ea+27-1339, compiled mode, sharing, tiered, compressed oops, serial gc, windows-amd64)
# Core dump will be written. Default location: T:\testoutput\test-support\jtreg_open_test_jdk_jdk_util\scratch\1\hs_err_pid14964.mdmp
#
# If you would like to submit a bug report, please visit:
#   https://bugreport.java.com/bugreport/crash.jsp
#

---------------  S U M M A R Y ------------

Command Line: -Dtest.class.path.prefix=T:\testoutput\test-support\jtreg_open_test_jdk_jdk_util\classes\3\java\util\concurrent\tck\JSR166TestCase.d;C:\ade\mesos\work_dir\jib-master\install\jdk-14+27-1339\src.full\open\test\jdk\java\util\concurrent\tck -Dtest.src=C:\ade\mesos\work_dir\jib-master\install\jdk-14+27-1339\src.full\open\test\jdk\java\util\concurrent\tck -Dtest.src.path=C:\ade\mesos\work_dir\jib-master\install\jdk-14+27-1339\src.full\open\test\jdk\java\util\concurrent\tck -Dtest.classes=T:\testoutput\test-support\jtreg_open_test_jdk_jdk_util\classes\3\java\util\concurrent\tck\JSR166TestCase.d -Dtest.class.path=T:\testoutput\test-support\jtreg_open_test_jdk_jdk_util\classes\3\java\util\concurrent\tck\JSR166TestCase.d -Dtest.vm.opts=-Xmx512m -XX:MaxRAMPercentage=6 -ea -esa -Dtest.tool.vm.opts=-J-Xmx512m -J-XX:MaxRAMPercentage=6 -J-ea -J-esa -Dtest.compiler.opts= -Dtest.java.opts=-Xcomp -XX:+TieredCompilation -XX:+UseSerialGC -XX:+CreateCoredumpOnCrash -XX:+IgnoreUnrecognizedVMOptions -Dtest.jdk=c:\ade\mesos\work_dir\jib-master\install\jdk-14+27-1339\windows-x64-debug.jdk\jdk-14\fastdebug -Dcompile.jdk=c:\ade\mesos\work_dir\jib-master\install\jdk-14+27-1339\windows-x64-debug.jdk\jdk-14\fastdebug -Dtest.timeout.factor=10.0 -Dtest.root=C:\ade\mesos\work_dir\jib-master\install\jdk-14+27-1339\src.full\open\test\jdk -Dtest.modules=java.management -Dtest.nativepath=c:\ade\mesos\work_dir\jib-master\install\jdk-14+27-1339\windows-x64-debug.test\jdk\jtreg\native --add-modules=java.management -Xmx512m -XX:MaxRAMPercentage=6 -ea -esa -Xcomp -XX:+TieredCompilation -XX:+UseSerialGC -XX:+CreateCoredumpOnCrash -XX:+IgnoreUnrecognizedVMOptions -Djava.library.path=c:\ade\mesos\work_dir\jib-master\install\jdk-14+27-1339\windows-x64-debug.test\jdk\jtreg\native --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED -Djsr166.testImplementationDetails=true com.sun.javatest.regtest.agent.MainWrapper T:\testoutput\test-support\jtreg_open_test_jdk_jdk_util\java\util\concurrent\tck\JSR166TestCase.d\junit.1.jta java/util/concurrent/tck/JSR166TestCase.java JSR166TestCase

Host: win2019intel-build-test-7552, Intel(R) Xeon(R) Platinum 8167M CPU @ 2.00GHz, 8 cores, 59G,  Windows Server 2019 , 64 bit Build 17763 (10.0.17763.1)
Time: Tue Dec 17 09:31:38 2019 Etc elapsed time: 244 seconds (0d 0h 4m 4s)

---------------  T H R E A D  ---------------

Current thread (0x0000014b1586b800):  JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=10176, stack(0x0000002333e00000,0x0000002333f00000)]


Current CompileTask:
C2: 244759 26787    b  4       StampedLockTest::testConcurrentAccess (355 bytes)

Stack: [0x0000002333e00000,0x0000002333f00000]
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [jvm.dll+0xa352e1]  os::platform_print_native_stack+0xf1  (os_windows_x86.cpp:369)
V  [jvm.dll+0xc3604b]  VMError::report+0xf0b  (vmerror.cpp:725)
V  [jvm.dll+0xc378fe]  VMError::report_and_die+0x8ae  (vmerror.cpp:1533)
V  [jvm.dll+0xc37ff4]  VMError::report_and_die+0x64  (vmerror.cpp:1317)
V  [jvm.dll+0x458972]  report_vm_error+0x102  (debug.cpp:264)
V  [jvm.dll+0x993018]  InitializeNode::complete_stores+0x478  (memnode.cpp:4265)
V  [jvm.dll+0x8f06d7]  PhaseMacroExpand::initialize_object+0x2f7  (macro.cpp:1689)
V  [jvm.dll+0x8eb6a3]  PhaseMacroExpand::expand_allocate_common+0xa33  (macro.cpp:1400)
V  [jvm.dll+0x8ef566]  PhaseMacroExpand::expand_macro_nodes+0xf76  (macro.cpp:2639)
V  [jvm.dll+0x419603]  Compile::Optimize+0x1193  (compile.cpp:2404)
V  [jvm.dll+0x415ae2]  Compile::Compile+0xfe2  (compile.cpp:873)
V  [jvm.dll+0x355b8b]  C2Compiler::compile_method+0x12b  (c2compiler.cpp:114)
V  [jvm.dll+0x42e57e]  CompileBroker::invoke_compiler_on_method+0x79e  (compilebroker.cpp:2172)
V  [jvm.dll+0x42c3b2]  CompileBroker::compiler_thread_loop+0x3e2  (compilebroker.cpp:1852)
V  [jvm.dll+0xbd9ace]  JavaThread::run+0x27e  (thread.cpp:1954)
V  [jvm.dll+0xbcff22]  Thread::call_run+0x192  (thread.cpp:404)
V  [jvm.dll+0xa33aae]  thread_native_entry+0x10e  (os_windows.cpp:465)
C  [ucrtbase.dll+0x203ba]
C  [KERNEL32.DLL+0x17e94]
C  [ntdll.dll+0x67ad1]


---------------  P R O C E S S  ---------------

Threads class SMR info:
_java_thread_list=0x0000014b3e108e20, length=23, elements={
0x0000014b15b03800, 0x0000014b1583c800, 0x0000014b1583f000, 0x0000014b15868800,
0x0000014b15869800, 0x0000014b1586b800, 0x0000014b15871800, 0x0000014b15873000,
0x0000014b36fcc800, 0x0000014b36fdc000, 0x0000014b3709b800, 0x0000014b3842a800,
0x0000014b38551800, 0x0000014b36fb2800, 0x0000014b36fb3000, 0x0000014b36fb5000,
0x0000014b36fb5800, 0x0000014b36fb6800, 0x0000014b36fb7800, 0x0000014b36fb8000,
0x0000014b36fb9000, 0x0000014b396af000, 0x0000014b396b0000
}
_java_thread_list_alloc_cnt=6164, _java_thread_list_free_cnt=6162, _java_thread_list_max=50, _nested_thread_list_max=1
_tlh_cnt=26036, _tlh_times=175, avg_tlh_time=0.01, _tlh_time_max=15
_deleted_thread_cnt=3070, _deleted_thread_times=22, avg_deleted_thread_time=0.01, _deleted_thread_time_max=1
_delete_lock_wait_cnt=0, _delete_lock_wait_max=7
_to_delete_list_cnt=0, _to_delete_list_max=5

Java Threads: ( => current thread )
  0x0000014b15b03800 JavaThread "main" [_thread_blocked, id=8412, stack(0x0000002333800000,0x0000002333900000)]
  0x0000014b1583c800 JavaThread "Reference Handler" daemon [_thread_blocked, id=12760, stack(0x0000002333a00000,0x0000002333b00000)]
  0x0000014b1583f000 JavaThread "Finalizer" daemon [_thread_blocked, id=12920, stack(0x0000002333b00000,0x0000002333c00000)]
  0x0000014b15868800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=14596, stack(0x0000002333c00000,0x0000002333d00000)]
  0x0000014b15869800 JavaThread "Attach Listener" daemon [_thread_blocked, id=14192, stack(0x0000002333d00000,0x0000002333e00000)]
=>0x0000014b1586b800 JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=10176, stack(0x0000002333e00000,0x0000002333f00000)]
  0x0000014b15871800 JavaThread "C1 CompilerThread0" daemon [_thread_blocked, id=6116, stack(0x0000002333f00000,0x0000002334000000)]
  0x0000014b15873000 JavaThread "Sweeper thread" daemon [_thread_blocked, id=7596, stack(0x0000002334000000,0x0000002334100000)]
  0x0000014b36fcc800 JavaThread "Common-Cleaner" daemon [_thread_blocked, id=5796, stack(0x0000002334100000,0x0000002334200000)]
  0x0000014b36fdc000 JavaThread "Service Thread" daemon [_thread_blocked, id=352, stack(0x0000002334200000,0x0000002334300000)]
  0x0000014b3709b800 JavaThread "Notification Thread" daemon [_thread_blocked, id=5720, stack(0x0000002334300000,0x0000002334400000)]
  0x0000014b3842a800 JavaThread "MainThread" [_thread_blocked, id=9396, stack(0x0000002334500000,0x0000002334600000)]
  0x0000014b38551800 JavaThread "WedgedTestDetector" daemon [_thread_blocked, id=2980, stack(0x0000002334600000,0x0000002334700000)]
  0x0000014b36fb2800 JavaThread "ForkJoinPool.commonPool-worker-3" daemon [_thread_blocked, id=10516, stack(0x0000002334700000,0x0000002334800000)]
  0x0000014b36fb3000 JavaThread "ForkJoinPool.commonPool-worker-5" daemon [_thread_blocked, id=11676, stack(0x0000002334800000,0x0000002334900000)]
  0x0000014b36fb5000 JavaThread "ForkJoinPool.commonPool-worker-7" daemon [_thread_blocked, id=12440, stack(0x0000002334900000,0x0000002334a00000)]
  0x0000014b36fb5800 JavaThread "ForkJoinPool.commonPool-worker-9" daemon [_thread_blocked, id=8344, stack(0x0000002333500000,0x0000002333600000)]
  0x0000014b36fb6800 JavaThread "ForkJoinPool.commonPool-worker-11" daemon [_thread_blocked, id=3508, stack(0x0000002333600000,0x0000002333700000)]
  0x0000014b36fb7800 JavaThread "ForkJoinPool.commonPool-worker-15" daemon [_thread_blocked, id=3248, stack(0x0000002333700000,0x0000002333800000)]
  0x0000014b36fb8000 JavaThread "ForkJoinPool.commonPool-worker-13" daemon [_thread_blocked, id=15300, stack(0x0000002334a00000,0x0000002334b00000)]
  0x0000014b36fb9000 JavaThread "CompletableFutureDelayScheduler" daemon [_thread_blocked, id=9996, stack(0x0000002334b00000,0x0000002334c00000)]
  0x0000014b396af000 JavaThread "pool-1-thread-36" [_thread_blocked, id=3356, stack(0x0000002334c00000,0x0000002334d00000)]
  0x0000014b396b0000 JavaThread "pool-1-thread-37" [_thread_blocked, id=7768, stack(0x0000002334d00000,0x0000002334e00000)]

Other Threads:
  0x0000014b15826000 VMThread "VM Thread" [stack: 0x0000002333900000,0x0000002333a00000] [id=6976]
  0x0000014b3689a800 WatcherThread [stack: 0x0000002334400000,0x0000002334500000] [id=10148]

Threads with active compile tasks:
C2 CompilerThread0   245000 26787    b  4       StampedLockTest::testConcurrentAccess (355 bytes)

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None
Comments
Fix request (13u): The original change applies cleanly, passes tier1 and tier2 tests.
03-06-2020

Fix Request (11u) This fixes C2 bug and keeps codebases in sync (I see 11.0.7-oracle). Patch applies cleanly to 11u, new test fails without the product fix, and passes with it. Patched 11u also passes tier1 and tier2. Risk is medium-low.
17-01-2020

URL: https://hg.openjdk.java.net/jdk/jdk14/rev/f393f34a48cd User: chagedorn Date: 2020-01-09 15:15:18 +0000
09-01-2020

http://cr.openjdk.java.net/~chagedorn/8236140/webrev.00/ An input of the StoreL node in the test case (see webrev) was set without rehashing the store which triggers the assertion failure.
07-01-2020