[Xapian-tickets] [Xapian] #340: PostingSource subclasses cannot signal a change in their maxweight

Xapian nobody at xapian.org
Wed May 20 05:05:06 BST 2009


#340: PostingSource subclasses cannot signal a change in their maxweight
-------------------------+--------------------------------------------------
 Reporter:  richard      |        Owner:  olly     
     Type:  defect       |       Status:  assigned 
 Priority:  normal       |    Milestone:  1.1.1    
Component:  Library API  |      Version:  SVN trunk
 Severity:  normal       |   Resolution:           
 Keywords:               |    Blockedby:           
 Platform:  All          |     Blocking:           
-------------------------+--------------------------------------------------
Changes (by olly):

  * status:  new => assigned


Comment:

 Altering the top-level maxweight directly is also problematic because the
 intermediate postlists don't get their maxweight for the branch leading to
 the ExternalPostList updated.

 I think you can do rounding locally, but control of rounding is much
 better supported by C99, which is currently orthogonal to ISO C++.  But
 even if rounding control was simple and fully portable, this approach is
 going to be kind of delicate I suspect.

 Perhaps the mechanism would be better as a "bubble up" rather than a "tell
 the top to reiterate the whole tree", which would at least make the work
 more O(log(N)) than O(N) in the number of postlists, but that doesn't
 solve the accumulation of errors.

 So for 1.1.1 I'm just intending to tidy up what we now have.  The change
 to provide a cleaner API to the user is the more urgent part and that's
 done.  At least for now, that can just be connected to the existing
 mechanism (as it is currently in SVN, but perhaps with a little more
 cleaning up).

-- 
Ticket URL: <http://trac.xapian.org/ticket/340#comment:11>
Xapian <http://xapian.org/>
Xapian



More information about the Xapian-tickets mailing list