Skip to Main Content

Java HotSpot Virtual Machine

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Cause of sporadic internal error at jni.cpp:1198?

2629183Mar 11 2014 — edited Mar 18 2014

Hello,

I am hunting the root cause of a sporadic internal error at jni.cpp:1198. It would be great if anyone

with access to the source code could tell me what check is taking place on that line or have

some guidance.

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (jni.cpp:1198), pid=4068, tid=3436
#  Error: ShouldNotReachHere()
#
# JRE version: Java(TM) SE Runtime Environment (7.0_51-b13) (build 1.7.0_51-b13)
# Java VM: Java HotSpot(TM) Client VM (24.51-b03 mixed mode windows-x86 )
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.sun.com/bugreport/crash.jsp
#

This is the callstack of the thread that is causing the internal error:

  KernelBase.dll!_DebugBreak

  jvm.dll!72da801e()

  [Frames below may be incorrect and/or missing, no symbols loaded for jvm.dll]

  jvm.dll!72d8dce5() Unknown

  ntdll.dll_ZwSetEvent

  jvm.dll!72da2798()

  jvm.dll!72d87ee4()

  jvm.dll!72cc92d6()

  jvm.dll!72cc9ba8()

  jvm.dll!72ccd813()

  jvm.dll!72ce04f0()

  myjni.dll!JNIEnv_::CallVoidMethod(_jobject * obj=0x49b36654, _jmethodID * methodID=0x49a01064, ...)

  myjni.dll!callCaptureCallback(_jobject * const callback=0x49b36654, int numBytesAdded=11487232)

  myjni.dll!captureCallbackFunction(MyMessageReport report={...})

  myengine.dll!StatusReporter::operator()()

  myengine.dll!boost::detail::thread_data<boost::reference_wrapper<StatusReporter> const >::run()

  myengine.dll!boost::`anonymous namespace'::thread_start_function(void * param=0x4fc9d730)

  msvcr110d.dll!_callthreadstartex() Line 354 C

  msvcr110d.dll!_threadstartex(void * ptd=0x4fcbeb80) Line 337 C

  kernel32.dll!76b633ca() Unknown

  ntdll.dll!___RtlUserThreadStart

  ntdll.dll!__RtlUserThreadStart

The thread is a native worker thread spawned by my JNI library. Before calling back in Java the

thread successfully registers itself with the VM  that is pJvm->AttachCurrentThread() returns JINI_OK.

I am running java with -Xcheck:jni. Nothing is reported.

The call from ntdll.dll|ZwSetEvent into jvm.dll sporadically triggers this internal error. Any idea what goes

wrong?

Thanks,

Nicolas

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Apr 15 2014
Added on Mar 11 2014
1 comment
1,495 views