SIGSEGV When Accessing Link Parser Through JNI
The server I'm trying to set this up on has Red Hat Enterprise Linux Server 5.4 64-bit. We've compiled and installed Link Parser 4.6.7 (64-bit) as well as both JDK5 and JDK6 64-bit.
When calling on the library, this is the error returned:
A fatal error has been detected by the Java Runtime Environment:
SIGSEGV (0xb) at pc=0x00002aaaaefeb180, pid=24955, tid=1103116608
JRE version: 6.0_24-b07
Java VM: Java HotSpot(TM) 64-Bit Server V开发者_如何学运维M (19.1-b02 mixed mode linux-amd64 compressed oops)
Problematic frame:
C [liblink-grammar.so.4+0xa180] linkage_get_num_words+0x0
This hasn't been encountered with the same Java code running on Windows, OS X, and other Linux distributions.
Also, Link Parser works fine through the provided executables (link-parser), so it doesn't appear to be a problem with compiling and installing the package.
It turns out it was a quirk with the data we were using, which on this new machine was slightly different. Pipe characters were causing the segfault, which we couldn't recreate in any other environment.
We removed the offending characters and ran it without issue and notified the developer.
精彩评论