[KinoSearch] ORQuery dislikes Perl Compiler classes
Marvin Humphrey
marvin at rectangular.com
Tue May 26 16:39:30 PDT 2009
On Tue, May 26, 2009 at 02:22:35PM -0700, webmasters at ctosonline.org wrote:
> I’m trying to use a Perl Query class within an ORQuery. When I call
> highlight_spans on the resulting Compiler object, if highlight_spans
> is overridden by the Perl Compiler class (that corresponds to the Perl
> Query class), it crashes.
>
> Here is the output I get from the attached script:
>
> $ perl ereunatest
> Bus error
Thanks for the test. This has been fixed by 4631.
The bug was triggered by the auto-conversion of KinoSearch return values to
Perl elements when possible. It became a segfault because Host_callback_obj,
which had previously been receiving a KinoSearch::Util::VArray, was now
getting a Perl array and was unprepared to handle it.
The fix was to reconvert the Perl array back to a VArray within
Host_callback_obj. It might be somewhat inefficient, but it works.
> There have been a few commits since I last synched with svn (4625). I
> don’t know whether those would affect this problem.
None of them would have had an effect. Unless you have been messing around
with Architecture or your code needs the recently removed SegReader method
get_doc_reader, upgrading to 4631 from 4625 should be no problem.
Marvin Humphrey
More information about the kinosearch
mailing list