[Xapian-devel] [Xapian-commits] 10683: trunk/xapian-core/ trunk/xapian-core/common/ trunk/xapian-core/queryparser/ trunk/xapian-core/tests/

Olly Betts olly at survex.com
Thu Jun 5 07:47:12 BST 2008


On Thu, Jun 05, 2008 at 07:21:27AM +0100, Richard Boulton wrote:
> Olly Betts wrote:
> > Um, the real bug is in query construction then!  Pairwise construction
> > shouldn't depend on the size of the subqueries (it used to, but I
> > thought that had already been fixed).
> 
> I haven't looked at the code in any detail, but I think the problem is 
> that each pairwise construction causes a full copy of the subquery 
> (perhaps due to the simplification part of the construction).  Perhaps 
> the end_construction() part needs to be made lazy to avoid calling this 
> step repeatedly.

It occurred to me that pair-wise construction will be O(n^2) when debug
logging even once this issue is addressed (because
Query::get_description() is called to show the parameters when
constructing and this method iterates the subquery tree).  Not sure
what to do about that...

Cheers,
    Olly



More information about the Xapian-devel mailing list