JDK-8003730 : assert(resolved_method->method_holder()->is_linked()) failed: must be linked
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: hs25,8
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • Submitted: 2012-11-21
  • Updated: 2015-04-29
  • Resolved: 2012-12-14
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 9
9Resolved
Related Reports
Relates :  
Relates :  
Description
JCK test api/java_math/BigDecimal/index_ValueOf failed with:

#  Internal Error (...src/share/vm/interpreter/linkResolver.cpp:913), pid=10707, tid=139798264256256
#  assert(resolved_method->method_holder()->is_linked()) failed: must be linked
#
# JRE version:  (8.0-b65) (build )
# Java VM: Java HotSpot(TM) 64-Bit Server VM (25.0-b10-....hs25-b10-snapshot-fastdebug mixed mode linux-amd64 compressed oops)

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

Current thread (0x00007f254c00b800):  JavaThread "main" [_thread_in_vm, id=10716, stack(0x00007f2551d19000,0x00007f2551e1a000)]

Stack: [0x00007f2551d19000,0x00007f2551e1a000],  sp=0x00007f2551e168e0,  free space=1014k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0xd7f2b2]  VMError::report_and_die()+0x302;;  VMError::report_and_die()+0x302
V  [libjvm.so+0x695b34]  report_vm_error(char const*, int, char const*, char const*)+0x84;;  report_vm_error(char const*, int, char const*, char const*)+0x84
V  [libjvm.so+0xa23fef]  LinkResolver::runtime_resolve_virtual_method(CallInfo&, methodHandle, KlassHandle, Handle, KlassHandle, bool, Thread*)+0x4ef;;  LinkResolver::runtime_resolve_virtual_method(CallInfo&, methodHandle, KlassHandle, Handle, KlassHandle, bool, Thread*)+0x4ef
V  [libjvm.so+0xa267ae]  LinkResolver::resolve_virtual_call(CallInfo&, Handle, KlassHandle, KlassHandle, Symbol*, Symbol*, KlassHandle, bool, bool, Thread*)+0xbe;;  LinkResolver::resolve_virtual_call(CallInfo&, Handle, KlassHandle, KlassHandle, Symbol*, Symbol*, KlassHandle, bool, bool, Thread*)+0xbe
V  [libjvm.so+0xa2699e]  LinkResolver::resolve_invokevirtual(CallInfo&, Handle, constantPoolHandle, int, Thread*)+0x1de;;  LinkResolver::resolve_invokevirtual(CallInfo&, Handle, constantPoolHandle, int, Thread*)+0x1de
V  [libjvm.so+0xa29623]  LinkResolver::resolve_invoke(CallInfo&, Handle, constantPoolHandle, int, Bytecodes::Code, Thread*)+0x133;;  LinkResolver::resolve_invoke(CallInfo&, Handle, constantPoolHandle, int, Bytecodes::Code, Thread*)+0x133
V  [libjvm.so+0x8819ac]  InterpreterRuntime::resolve_invoke(JavaThread*, Bytecodes::Code)+0x42c;;  InterpreterRuntime::resolve_invoke(JavaThread*, Bytecodes::Code)+0x42c
j  java.lang.Throwable.<clinit>()V+3
v  ~StubRoutines::call_stub
V  [libjvm.so+0x88cb2e]  JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*)+0x178e;;  JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*)+0x178e
V  [libjvm.so+0x83bd71]  InstanceKlass::call_class_initializer_impl(instanceKlassHandle, Thread*)+0x131;;  InstanceKlass::call_class_initializer_impl(instanceKlassHandle, Thread*)+0x131
V  [libjvm.so+0x83c212]  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x332;;  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x332
V  [libjvm.so+0x83c592]  InstanceKlass::initialize(Thread*)+0x92;;  InstanceKlass::initialize(Thread*)+0x92
V  [libjvm.so+0x83c395]  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x4b5;;  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x4b5
V  [libjvm.so+0x83c592]  InstanceKlass::initialize(Thread*)+0x92;;  InstanceKlass::initialize(Thread*)+0x92
V  [libjvm.so+0x83c395]  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x4b5;;  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x4b5
V  [libjvm.so+0x83c592]  InstanceKlass::initialize(Thread*)+0x92;;  InstanceKlass::initialize(Thread*)+0x92
V  [libjvm.so+0x83c395]  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x4b5;;  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x4b5
V  [libjvm.so+0x83c592]  InstanceKlass::initialize(Thread*)+0x92;;  InstanceKlass::initialize(Thread*)+0x92
V  [libjvm.so+0x737bae]  Exceptions::new_exception(Thread*, Symbol*, Symbol*, JavaCallArguments*, Handle, Handle)+0x1be;;  Exceptions::new_exception(Thread*, Symbol*, Symbol*, JavaCallArguments*, Handle, Handle)+0x1be
V  [libjvm.so+0x738941]  Exceptions::new_exception(Thread*, Symbol*, Symbol*, JavaCallArguments*, Handle, Handle, Handle)+0x31;;  Exceptions::new_exception(Thread*, Symbol*, Symbol*, JavaCallArguments*, Handle, Handle, Handle)+0x31
V  [libjvm.so+0x738eae]  Exceptions::new_exception(Thread*, Symbol*, char const*, Handle, Handle, Handle, Exceptions::ExceptionMsgToUtf8Mode)+0x20e;;  Exceptions::new_exception(Thread*, Symbol*, char const*, Handle, Handle, Handle, Exceptions::ExceptionMsgToUtf8Mode)+0x20e
V  [libjvm.so+0x73a086]  Exceptions::_throw_msg(Thread*, char const*, int, Symbol*, char const*)+0x96;;  Exceptions::_throw_msg(Thread*, char const*, int, Symbol*, char const*)+0x96
V  [libjvm.so+0x917f6f]  JVM_StartThread+0x38f;;  JVM_StartThread+0x38f
j  java.lang.Thread.start0()V+0
j  java.lang.Thread.start()V+26
j  java.lang.ref.Reference.<clinit>()V+61
v  ~StubRoutines::call_stub
V  [libjvm.so+0x88cb2e]  JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*)+0x178e;;  JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*)+0x178e
V  [libjvm.so+0x83bd71]  InstanceKlass::call_class_initializer_impl(instanceKlassHandle, Thread*)+0x131;;  InstanceKlass::call_class_initializer_impl(instanceKlassHandle, Thread*)+0x131
V  [libjvm.so+0x83c212]  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x332;;  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x332
V  [libjvm.so+0x83c592]  InstanceKlass::initialize(Thread*)+0x92;;  InstanceKlass::initialize(Thread*)+0x92
V  [libjvm.so+0x83c395]  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x4b5;;  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x4b5
V  [libjvm.so+0x83c592]  InstanceKlass::initialize(Thread*)+0x92;;  InstanceKlass::initialize(Thread*)+0x92
V  [libjvm.so+0x83c395]  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x4b5;;  InstanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x4b5
V  [libjvm.so+0x83c592]  InstanceKlass::initialize(Thread*)+0x92;;  InstanceKlass::initialize(Thread*)+0x92
V  [libjvm.so+0xd1614a]  Threads::create_vm(JavaVMInitArgs*, bool*)+0x66a;;  Threads::create_vm(JavaVMInitArgs*, bool*)+0x66a
V  [libjvm.so+0x8ad1d3]  JNI_CreateJavaVM+0xa3;;  JNI_CreateJavaVM+0xa3
C  [libjli.so+0x962e]  JavaMain+0x9e;;  JavaMain+0x9e

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j  java.lang.Throwable.<clinit>()V+3
v  ~StubRoutines::call_stub
j  java.lang.Thread.start0()V+0
j  java.lang.Thread.start()V+26
j  java.lang.ref.Reference.<clinit>()V+61
v  ~StubRoutines::call_stub


Comments
Assertion and backtrace match that seen in 8001028. Basically the system that the JVM is running on is out of native resources and cannot create the reference handler thread and ties to throw an OOME. The assertion is seen because java.lang.Class is not initialized at the time.
14-12-2012