On Jun 13, 2008, at 6:58 AM, Felix Schwarz <[EMAIL PROTECTED]> wrote:

Hi,

currently, pylucene gets a SIGSEGV as soon you call a Java method without
previously initializing the JVM (or attaching the current thread).

I know the root cause (no initialization) is a programmer error and pylucene
has its reasons to not initialize the JVM automatically.

But I think pylucene should not crash but just throw a JavaError which can
be catched as every other Python exception.

I tried to implement that a while ago.
The problem is that, to avoid the crash, the generated code has to check that the VM is initialized all the time and everywhere. I didn't find a single point of passage where to add that (simple) check. Adding it everywhere is a lot of code to add for a simple to fix user error.

No, findClass() is not it, since a class can be loaded by thread and used by another.

If you have a better idea or a patch, send it in !

Andi..

I experienced some crashes because
my thread configuration was wrong and it was not too easy finding the cause.

Maybe this is already fixed in SVN? I'm using JCC 1.9 and PyLucene 2.3.2.1 on
CentOS 5 (i386) together with OpenJDK (1.6.0.0-0.7.b08.el5.2).

fs
<uninitialized_lucene.py>
_______________________________________________
pylucene-dev mailing list
pylucene-dev@osafoundation.org
http://lists.osafoundation.org/mailman/listinfo/pylucene-dev
_______________________________________________
pylucene-dev mailing list
pylucene-dev@osafoundation.org
http://lists.osafoundation.org/mailman/listinfo/pylucene-dev

Reply via email to