JDK-6936185 : assert(has_cp_cache(i),"oob") at vm/interpreter/rewriter.hpp:42
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: hs17,6u21
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: generic,solaris_10
  • CPU: x86
  • Submitted: 2010-03-18
  • Updated: 2011-01-19
  • Resolved: 2010-06-15
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 7
7Resolved
Related Reports
Duplicate :  
Relates :  
Relates :  
Relates :  
Description
See comments for details.
Here is the decoded report from crash.

;; Using jvm: "/net/jre.sfbay/p/v32/jdk/7/ea/b80/binaries/linux-i586/fastdebug/jre/lib/i386/client/libjvm.so"
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/BUILD_AREA/jdk7/hotspot/src/share/vm/interpreter/rewriter.hpp:42), pid=27027, tid=3729935248
#  Error: assert(has_cp_cache(i),"oob")
#
# JRE version: 7.0-b80
# Java VM: Java HotSpot(TM) Client VM (17.0-b07-fastdebug mixed mode linux-x86 )
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

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

Current thread (0xdea6dc00):  JavaThread "Thread-57" [_thread_in_vm, id=6525, stack(0xde4d4000,0xde525000)]

Stack: [0xde4d4000,0xde525000],  sp=0xde523360,  free space=13cde5233d8k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x67b895];;  VMError::report(outputStream*)+0x13f5
V  [libjvm.so+0x67bb24];;  VMError::report_and_die()+0x194
V  [libjvm.so+0x29a0c5];;  report_assertion_failure(char const*, int, char const*)+0x65
V  [libjvm.so+0x5a9828];;  Rewriter::rewrite_member_reference(unsigned char*, int)+0x58
V  [libjvm.so+0x5a9ada];;  .L86+0x12
V  [libjvm.so+0x5ab0a4];;  Rewriter::Rewriter(instanceKlassHandle, constantPoolHandle, objArrayHandle, Thread*)+0x194
V  [libjvm.so+0x5aba19];;  Rewriter::rewrite(instanceKlassHandle, Thread*)+0x169
V  [libjvm.so+0x33ccac];;  instanceKlass::rewrite_class(Thread*)+0x9c
V  [libjvm.so+0x3426a4];;  instanceKlass::link_class_impl(instanceKlassHandle, bool, Thread*)+0x564
V  [libjvm.so+0x3428a4];;  instanceKlass::initialize_impl(instanceKlassHandle, Thread*)+0x54
V  [libjvm.so+0x342ec1];;  instanceKlass::initialize(Thread*)+0x71
V  [libjvm.so+0x2c2269];;  Exceptions::new_exception(Thread*, symbolHandle, symbolHandle, JavaCallArguments*, Handle, Handle, Handle)+0x1f9
V  [libjvm.so+0x2c2aed];;  Exceptions::_throw_args(Thread*, char const*, int, symbolHandle, symbolHandle, JavaCallArguments*)+0x7d
V  [libjvm.so+0x59b532];;  Reflection::invoke(instanceKlassHandle, methodHandle, Handle, bool, objArrayHandle, BasicType, objArrayHandle, bool, Thread*)+0x732
V  [libjvm.so+0x59c342];;  Reflection::invoke_method(oopDesc*, Handle, objArrayHandle, Thread*)+0x172
V  [libjvm.so+0x3f7da5];;  JVM_InvokeMethod+0x1b5
C  [libjava.so+0x15ec2]  Java_sun_reflect_NativeMethodAccessorImpl_invoke0+0x32;;  Java_sun_reflect_NativeMethodAccessorImpl_invoke0+0x32
j  sun.reflect.NativeMethodAccessorImpl.invoke0(Ljava/lang/reflect/Method;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+0
j  sun.reflect.NativeMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;+87
J  sun.reflect.DelegatingMethodAccessorImpl.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
J  java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
..................... ...........................
j  java.lang.Thread.run()V+11
v  ~StubRoutines::call_stub
V  [libjvm.so+0x372678];;  .L324+0xa8
V  [libjvm.so+0x53f8e9];;  os::os_exception_wrapper(void (*)(JavaValue*, methodHandle*, JavaCallArguments*, Thread*), JavaValue*, methodHandle*, JavaCallArguments*, Thread*)+0x19
V  [libjvm.so+0x370ca1];;  JavaCalls::call(JavaValue*, methodHandle, JavaCallArguments*, Thread*)+0x61
V  [libjvm.so+0x371971];;  JavaCalls::call_virtual(JavaValue*, KlassHandle, symbolHandle, symbolHandle, JavaCallArguments*, Thread*)+0x181
V  [libjvm.so+0x371b79];;  JavaCalls::call_virtual(JavaValue*, Handle, KlassHandle, symbolHandle, symbolHandle, Thread*)+0x79
V  [libjvm.so+0x3ee56f];;  thread_entry(JavaThread*, Thread*)+0xbf
V  [libjvm.so+0x639d0c];;  JavaThread::thread_main_inner()+0xec
V  [libjvm.so+0x639eee];;  JavaThread::run()+0x19e
V  [libjvm.so+0x548069];;  java_start(Thread*)+0xf9
C  [libpthread.so.0+0x64ff]
Another similiar crash, again with G1 fastdebug build:

# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/BUILD_AREA/jdk7/hotspot/src/share/vm/interpreter/rewriter.cpp:267), pid=22244, tid=3689
#  assert(_pool->cache() == NULL) failed: constant pool cache must not be set yet
#
# JRE version: 7.0-b96
# Java VM: Java HotSpot(TM) 64-Bit Server VM (19.0-b02-fastdebug compiled mode solaris-amd64 )
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp

Current thread (0x000000000ee8f800):  JavaThread "httpSSLWorkerThread-8080-2" daemon [_thread_in_vm, id=3689, stack(0xfffffd7f8b3cc000,0xfffffd7f8b4cc000)]

Stack: [0xfffffd7f8b3cc000,0xfffffd7f8b4cc000],  sp=0xfffffd7f8b4c8ac0,  free space=3f20000000000000001k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x1f0c1dc];;  void VMError::report(outputStream*)+0x6ac
V  [libjvm.so+0x1f0d228];;  void VMError::report_and_die()+0x4d8
V  [libjvm.so+0xabe12b];;  void report_vm_error(const char*,int,const char*,const char*)+0x5bb
V  [libjvm.so+0x1b6a8aa];;  Rewriter::Rewriter(instanceKlassHandle,constantPoolHandle,objArrayHandle,Thread*)+0x2e9a
V  [libjvm.so+0x1b676b3];;  void Rewriter::rewrite(instanceKlassHandle,Thread*)+0x813
V  [libjvm.so+0xd9df32];;  void instanceKlass::rewrite_class(Thread*)+0xa2
V  [libjvm.so+0xd9da66];;  bool instanceKlass::link_class_impl(instanceKlassHandle,bool,Thread*)+0x716
V  [libjvm.so+0xd9d22b];;  void instanceKlass::link_class(Thread*)+0x7b
V  [libjvm.so+0xd9e093];;  void instanceKlass::initialize_impl(instanceKlassHandle,Thread*)+0x63
V  [libjvm.so+0xd9d072];;  void instanceKlass::initialize(Thread*)+0x92
V  [libjvm.so+0xe9734e];;  void InterpreterRuntime::_new(JavaThread*,constantPoolOopDesc*,int)+0xabe
...

Comments
WORK AROUND Add -XX:MaxPermSize=256m to test's JVM option list. I killed the test after it ran over night in such a configuration.
10-06-2010