Floran Gmehlin
Floran Gmehlin

Reputation: 864

PyLucene : lucene.initVM() causes a segmentation fault on linux RHEL7

I installed PyLucene 4.10.1 (which I believe is the latest). However, when I call for initVM(), a SIGSEGV is raised and I have no idea what to do about it.

Here is the output :

[zzz@xxx gitCode]$ python
Python 2.7.5 (default, Oct 11 2015, 17:47:16) 
[GCC 4.8.3 20140911 (Red Hat 4.8.3-9)] on linux2


>>> import lucene
>>> lucene.initVM()


#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007fc725385c4b, pid=18501, tid=140493474518848
#
# JRE version: OpenJDK Runtime Environment (7.0_101) (build 1.7.0_101-mockbuild_2016_04_19_09_09-b00)
# Java VM: OpenJDK 64-Bit Server VM (24.95-b01 mixed mode linux-amd64 compressed oops)
# Derivative: IcedTea 2.6.6pre01
# Distribution: Red Hat Enterprise Linux Server release 7.2 (Maipo), package rhel-2.6.6.1.el7_2-x86_64 u101-b00
# Problematic frame:
# V  [libjvm.so+0x62ac4b]
#
# Core dump written. Default location: /local/gitCode/core or core.18501
#
# An error report file with more information is saved as:
# /tmp/jvm-18501/hs_error.log
#
# If you would like to submit a bug report, please include
# instructions on how to reproduce the bug and visit:
#   http://icedtea.classpath.org/bugzilla
#
Aborted (core dumped)

The output of the core file is as follow :

Core was generated by `python'.
Program terminated with signal 6, Aborted.
#0  0x00007fc72e7ee5f7 in ?? ()

However, I noticed that Pylucene uses JRE 1.7 (from the above error message). When I run the following commands :

/usr/sbin/alternatives --config java
/usr/sbin/alternatives --config javac

it shows me that Java 1.8 is the default one. Could it be a compatibility problem ? If yes, how can I ensure stability with one version ?

Upvotes: 0

Views: 610

Answers (1)

Floran Gmehlin
Floran Gmehlin

Reputation: 864

I actually had two version of pylucene installed (4.9 and 4.10). Moreover, i compiled them with JDK 1.7 and was actually using 1.8 (even after switching to 1.7 it showed the SIGSEGV).

In the end, I just rm -rf both eggs (site/packages/lucene4.xxx.egg) and recompiled pylucene4.10 with JDK 1.8 and it worked.

Upvotes: 1

Related Questions