Greetings,

Testing KSx::Search::LongFieldSim in revision 3811 using the sample/ code, I've encountered the following error when creating an index:

Abstract method 'analyzer' not defined by USConSchema at KinoSearch.xs:16574 XS_KinoSearch__Schema__analyzer at /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi/KinoSearch.pm line 307 KinoSearch::Schema::clobber('USConSchema', 'uscon_invindex') called at ./invindexer.pl line 16

My changes were as follows:

USConSchema.pm:
---------------
package USConSchema::testfield;
use base 'KinoSearch::FieldSpec::text';
use KSx::Search::LongFieldSim;
sub similarity { KSx::Search::LongFieldSim->new }

...

our %fields = (
    title     => 'text',
    content   => 'text',
    url       => 'USConSchema::NotIndexed',
    category  => 'USConSchema::NotAnalyzed',
    testfield => 'USConSchema::testfield',
);

invindexer.pl:
--------------
return {
        title     => $title_node->as_trimmed_text,
        content   => $bodytext_node->as_trimmed_text,
        testfield => $bodytext_node->as_trimmed_text,
        url       => "/us_constitution/$filename",
        category  => $category,
};

Any comments on what I'm doing wrong are appreciated.

Cheers
henry

_______________________________________________
KinoSearch mailing list
KinoSearch@rectangular.com
http://www.rectangular.com/mailman/listinfo/kinosearch

Reply via email to