Hi all,
I'm attempting to call into a 3rd party java library from nodejs (I'm also using Jim Lloyd's brilliant ts-java). I need to listen to events from this library and have set up a javaProxy to do so, and for the most part it works fine, but I'm running into problems on a particular library call that results in two events being fired off in quick succession (may or may not be relevant).
These problems manifest in 2 ways. The first is that the JVM will simply die, throwing this message (full error file attached)
# A fatal error has been detected by the Java Runtime Environment:
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00000000577aaab5, pid=2492, tid=6120
# JRE version: Java(TM) SE Runtime Environment (7.0_79-b15) (build 1.7.0_79-b15)
# Java VM: Java HotSpot(TM) 64-Bit Server VM (24.79-b02 mixed mode windows-amd64 compressed oops)
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
# An error report file with more information is saved as:
# C:\New OPT\PC Repo\NodejsConsoleApp1\hs_err_pid2492.log
# If you would like to submit a bug report, please visit:
Looking through the stack in the error report, it seems to be dying in callJS, which I hunted down /src/java.cpp. I added some debug output to the error check towards the bottom
if (dynamicProxyData->done == DYNAMIC_PROXY_JS_ERROR) {
printf("*** %s ***\n", dynamicProxyData->throwableClass.c_str());
throwNewThrowable(env, dynamicProxyData->throwableClass.c_str(), dynamicProxyData->throwableMessage);
And found that it was often printing "*** node/NodeJsException ***", but right before it would die would print "*** ***".
The 2nd way it'll manifest is by triggering assertions in utils.cpp on lines 171, 385, and 456, and then would often die after that.
These problems don't happen every time I make the library call, but will usually occur after 2 or three calls.
Can anyone shed any light as to what's happening? I can post code snippets or any other information that may be relevant. And if it is a problem with the library I'd be happy to spend some time seeing if I can fix it.
Thanks!
Tony