1 Reply Latest reply: Mar 18, 2014 2:35 PM by jschellSomeoneStoleMyAlias RSS

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

    e47c7a7a-c318-4951-9fa4-28d8798447c7

      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