[Xapian-discuss] xapian 1.0.0 / 1.0.1 fatal problem
Alexander Lind
malte at webstay.org
Tue Jun 12 23:51:30 BST 2007
Sorry, make that
/Performing query `Xapian::Query(Zlove:(pos=1))'
/instead of
/Performing query `Xapian::Query(Zlove)'
/when using my first method below.
Alec
Alexander Lind wrote:
> Ok, my problem turns out to be related to the Z prefix that has to do
> with the new term generation strategy in Xapian 1.x, if I understand
> things correctly.
>
> This is shortened down example of what worked for me in Xapian 0.9.x,
> but doesn't work in 1.0.x:
>
> [snip]
> // $this->index and $this->stem are already set
> $terms = "love";
>
> $query_parser = new XapianQueryParser();
> $query_parser->set_stemmer($this->stem);
> $query_parser->set_stemming_strategy(QueryParser_STEM_ALL);
>
> $query = $query_parser->parse_query($terms,
> QueryParser_FLAG_BOOLEAN|QueryParser_FLAG_PHRASE|QueryParser_FLAG_LOVEHATE);
> $enquire = new XapianEnquire($this->index);
>
> $enquire->set_query($query);
> $result = $enquire->get_mset(0, 10);
>
> print "Performing query `" . $query->get_description() .
> "'\n";
> [/snip]
>
>
> The difference is demonstrated by the last print statement. With
> 0.9.x, it prints:
> /Performing query `Xapian::Query(love)'/
>
> With 1.0.x it prints
> /Performing query `Xapian::Query(Zlove)'
>
> /There is probably a good reason for this new behavior, but it did
> have me scratching my head for a while :) Is it supposed to be like
> this, or is it a bug?
> In the new simplesearch.php5 example, the query object is created like so:
>
> $query = new XapianQuery(XapianQuery::OP_OR, $terms);
>
> And when using that things work, ie no Z prefixing the query in the
> query description.
>
> Cheers
> Alec
More information about the Xapian-discuss
mailing list