[KinoSearch] KSx::Search::LongFieldSim in revision 3811

Henka henka at cityweb.co.za
Fri Sep 5 04:11:03 PDT 2008


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



More information about the kinosearch mailing list