OK, I can't get my head around this one. Can't get it to a test case either :(
I think it needs to be in a multi-segment index to work, judging by the error
message.
$ perl -MGlob -le 'print Glob->searcher->search(query => q/tag:foobar/)'
KinoSearch::Search::Hits=HASH(0x9084540)
$ perl -MGlob -le 'print Glob->searcher->search(query => q/tag:foo -bar/)'
KinoSearch::Search::Hits=HASH(0x9084540)
$ perl -MGlob -le 'print Glob->searcher->search(query => q/tag:foo-bar/)'
Can't locate object method "get_schema" via package "KinoSearch::Index::MultiReader"
at /usr/local/lib/perl/5.8.8/KinoSearch/Search/PhraseQuery.pm line 132.
NONE of those tags appear in the index. It's only dying on terms with
hyphens in them, but consistently there. Whatever's triggering it, anyway,
I think you want to implement that get_schema method. I'm guessing:
sub get_schema { shift->{invindex}->get_schema } # ???
Simon
I think it needs to be in a multi-segment index to work, judging by the error
message.
$ perl -MGlob -le 'print Glob->searcher->search(query => q/tag:foobar/)'
KinoSearch::Search::Hits=HASH(0x9084540)
$ perl -MGlob -le 'print Glob->searcher->search(query => q/tag:foo -bar/)'
KinoSearch::Search::Hits=HASH(0x9084540)
$ perl -MGlob -le 'print Glob->searcher->search(query => q/tag:foo-bar/)'
Can't locate object method "get_schema" via package "KinoSearch::Index::MultiReader"
at /usr/local/lib/perl/5.8.8/KinoSearch/Search/PhraseQuery.pm line 132.
NONE of those tags appear in the index. It's only dying on terms with
hyphens in them, but consistently there. Whatever's triggering it, anyway,
I think you want to implement that get_schema method. I'm guessing:
sub get_schema { shift->{invindex}->get_schema } # ???
Simon