[pylucene-dev] NullPointerException in IndexSearcher.search
Andi Vajda
vajda at osafoundation.org
Wed Jan 30 22:56:08 PST 2008
On Jan 31, 2008, at 7:43, Andi Vajda <vajda at osafoundation.org> wrote:
>
> On Jan 31, 2008, at 3:05, "James Brady" <rent.lupin.road at gmail.com>
> wrote:
>
>> Hi,
>> I'm running PyLucene version 2.2.0-1 (compiled from source) on a 64-
>> bit EC2 instance:
>> $ uname -a
>> Linux domU-12-31-39-00-08-41 2.6.16.33-xenU #2 SMP Wed Aug 15
>> 17:27:36 SAST 2007 x86_64 x86_64 x86_64 GNU/Linux
>>
>> I'm using PyLucene through a modified TurboLucene layer - the
>> following code is giving me a segfault:
>> searcher = IndexSearcher(_get_index_path
>> (language))
>> ...
>> try:
>> comboQuery = BooleanQuery()
>> if query:
>> comboQuery.add(parser.parse(query),
>> BooleanClause.Occur.MUST)
>> for filter in filters:
>> comboQuery.add(filter.getQuery(), filter.getOccur())
>>
>> _log.debug("Executing query: %s -- sort: %s (%s -> %s)" %
>> (comboQuery, sort, start_offset, end_offset))
>> hits = searcher.search(comboQuery, sort)
>>
>> It's the searcher.search line at fault - my code catches a Java
>> NullPointerException. Here's the gdb output:
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> [Switching to Thread 1224808768 (LWP 26910)]
>> 0x00002aaaab41a487 in org::apache::lucene::search::IndexSearcher
>> $1::collect () from /usr/lib64/python2.4/site-packages/_PyLucene.so
>> (gdb) where
>> #0 0x00002aaaab41a487 in org::apache::lucene::search::IndexSearcher
>> $1::collect () from /usr/lib64/python2.4/site-packages/_PyLucene.so
>> #1 0x00002aaaab4105fb in
>> org::apache::lucene::search::BooleanScorer2::score () from /usr/
>> lib64/python2.4/site-packages/_PyLucene.so
>> #2 0x00002aaaab41a802 in
>> org::apache::lucene::search::IndexSearcher::search () from /usr/
>> lib64/python2.4/site-packages/_PyLucene.so
>> #3 0x00002aaaab41a66b in
>> org::apache::lucene::search::IndexSearcher::search () from /usr/
>> lib64/python2.4/site-packages/_PyLucene.so
>> #4 0x00002aaaab41a17e in
>> org::apache::lucene::search::Hits::getMoreDocs () from /usr/lib64/
>> python2.4/site-packages/_PyLucene.so
>> #5 0x00002aaaab4248f1 in
>> org::apache::lucene::search::Searcher::search () from /usr/lib64/
>> python2.4/site-packages/_PyLucene.so
>> #6 0x00002aaaab4bb20f in wrap_LucenePackage () from /usr/lib64/
>> python2.4/site-packages/_PyLucene.so
>> #7 0x00002b9eba1410a8 in PyEval_EvalFrame () from /usr/lib64/
>> libpython2.4.so.1.0
>> #8 0x00002b9eba140a5d in PyEval_EvalFrame () from /usr/lib64/
>> libpython2.4.so.1.0
>> #9 0x00002b9eba140a5d in PyEval_EvalFrame () from /usr/lib64/
>> libpython2.4.so.1.0
>> #10 0x00002b9eba141e50 in PyEval_EvalCodeEx () from /usr/lib64/
>> libpython2.4.so.1.0
>> #11 0x00002b9eba0f8603 in PyClassMethod_New () from /usr/lib64/
>> libpython2.4.so.1.0
>> #12 0x00002b9eba0e2140 in PyObject_Call () from /usr/lib64/
>> libpython2.4.so.1.0
>> #13 0x00002b9eba0e822f in PyClass_IsSubclass () from /usr/lib64/
>> libpython2.4.so.1.0
>> #14 0x00002b9eba0e2140 in PyObject_Call () from /usr/lib64/
>> libpython2.4.so.1.0
>> #15 0x00002aaaab4a21d5 in callPython () from /usr/lib64/python2.4/
>> site-packages/_PyLucene.so
>> #16 0x00002aaaab49585c in
>> org::osafoundation::util::PythonRunnable::run () from /usr/lib64/
>> python2.4/site-packages/_PyLucene.so
>> #17 0x00002aaaad0bc1b6 in java::lang::Thread::run () from /usr/
>> lib64/libgcj.so.7rh
>> #18 0x00002aaaacdc0638 in _Jv_ThreadRun () from /usr/lib64/
>> libgcj.so.7rh
>> #19 0x00002aaaacdc6ec7 in _Jv_ThreadRegister () from /usr/lib64/
>> libgcj.so.7rh
>> #20 0x00002aaaad508f86 in _Jv_strtod_r () from /usr/lib64/libgcj.so.
>> 7rh
>> #21 0x00002b9eba3e62f7 in start_thread () from /lib64/libpthread.so.0
>> #22 0x00002b9ebad5386d in clone () from /lib64/libc.so.6
>> #23 0x0000000000000000 in ?? ()
>>
>> I know 64-bit support is experimental, but does anyone have any
>> suggestions on how I can work round this?
>
> It appears that you're running the GCJ flavor of PyLucene. Does
> 'make test' pass ?
>
> Switching to the JCC flavor of PyLucene has a very good chance of
> working around this problem.
It can be found here:
http://svn.osafoundation.org/pylucene/trunk/jcc
Andi..
>
>
> Andi..
>
>>
>>
>> Thanks!
>> James
>> _______________________________________________
>> pylucene-dev mailing list
>> pylucene-dev at osafoundation.org
>> http://lists.osafoundation.org/mailman/listinfo/pylucene-dev
> _______________________________________________
> pylucene-dev mailing list
> pylucene-dev at osafoundation.org
> http://lists.osafoundation.org/mailman/listinfo/pylucene-dev
More information about the pylucene-dev
mailing list