[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