JVM crash - Dump Event "gpf" (00002000) received

0

I'm running into a JVM crash with my Java application that uses OpenCV:

    0SECTION       TITLE subcomponent dump routine
NULL           ===============================
1TICHARSET     850
1TISIGINFO     Dump Event "gpf" (00002000) received 
1TIDATETIME    Date: 2020/12/01 at 09:10:43:127
1TINANOTIME    System nanotime: 160967311300
1TIFILENAME    Javacore filename:    C:\Program Files\myapp    \javacore.20201201.091041.3736.0002.txt
1TIREQFLAGS    Request Flags: 0x81 (exclusive+preempt)
1TIPREPSTATE   Prep State: 0x100 (trace_disabled)
1TIPREPINFO    Exclusive VM access not taken: data may not be consistent across javacore sections

Here's the stack-trace from the dump text file:

    1XMCURTHDINFO  Current thread
3XMTHREADINFO      "Thread-45" J9VMThread:0x00000000010AE500,     omrthread_t:0x00000143160A7B20, java/lang/Thread:0x00000007FBEB4C98, state:R, prio=10
3XMJAVALTHREAD            (java/lang/Thread getId:0x56, isDaemon:false)
3XMTHREADINFO1            (native thread ID:0x4FCC, native priority:0xA, native     policy:UNKNOWN, vmstate:R, vm thread flags:0x00000020)
3XMCPUTIME               CPU usage total: 0.203125000 secs, user: 0.046875000 secs, system: 0.156250000 secs, current category="Application"
3XMHEAPALLOC             Heap bytes allocated since last GC cycle=0 (0x0)
3XMTHREADINFO3           Java callstack:
4XESTACKTRACE                at org/opencv/imgproc/Imgproc.cvtColor_1(Native Method)
4XESTACKTRACE                at org/opencv/imgproc/Imgproc.cvtColor(Imgproc.java:926)
4XESTACKTRACE                at mk.b(Bytecode PC:120)
4XESTACKTRACE                at mk.a(Bytecode PC:3)
4XESTACKTRACE                at mk$a.run(Bytecode PC:12)
4XESTACKTRACE                at java/lang/Thread.run(Bytecode PC:13)
3XMTHREADINFO3           Native callstack:
4XENATIVESTACK               Java_org_opencv_calib3d_StereoSGBM_setUniquenessRatio_10+0x12dc (0x00007FFFC11D0ABC [opencv_java300+0x8d0abc])
4XENATIVESTACK               Java_org_opencv_calib3d_StereoSGBM_setUniquenessRatio_10+0x1238ec (0x00007FFFC12F30CC [opencv_java300+0x9f30cc])
4XENATIVESTACK               Java_org_opencv_calib3d_StereoSGBM_setUniquenessRatio_10+0x25a4db (0x00007FFFC1429CBB [opencv_java300+0xb29cbb])
4XENATIVESTACK               Java_org_opencv_imgproc_Imgproc_cvtColor_11+0x4d (0x00007FFFC11A851D [opencv_java300+0x8a851d])
4XENATIVESTACK               J9_GetInterface+0x99ef3 (0x00007FFFC2C03BD3 [j9vm29+0x123bd3])
4XENATIVESTACK               J9_GetInterface+0x99948 (0x00007FFFC2C03628 [j9vm29+0x123628])
4XENATIVESTACK               (0x00007FFFC2AF52D0 [j9vm29+0x152d0])
4XENATIVESTACK               (0x00000000000000FD)
4XENATIVESTACK               (0x00000000010AE500)
4XENATIVESTACK               (0x00000000000003F0)
4XENATIVESTACK               (0x00000009BBDFF420)
4XENATIVESTACK               (0x00000009BBDFF1A0)

(Note: My application's method names are obfuscated due to the use of an obfuscator).

To me this clearly indicates a bug in the OpenJDK or OpenCV version. Is that a correct assumption?

I use the following versions:

  • Adopt OpenJDK with OpenJ9 version 11.0.4
  • OpenCV version 3.0.0 for Java

I have tried to use the OpenJ9 version 11.0.9 but that did not resolve it. I don't think it has to do with Mat objects that are not being released, otherwise I would expect a JVM crash of the OOM type.

A logical thing to do would be to upgrade to a newer version of OpenCV, but we are kind of stuck with this version for now.

Could it have something to do with concurrency?

java
windows
opencv
native

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0