[Xapian-tickets] [Xapian] #508: OP_PHRASE should directly support non-leaf subqueries

Xapian nobody at xapian.org
Wed Jan 6 09:36:59 GMT 2016


#508: OP_PHRASE should directly support non-leaf subqueries
-------------------------+-------------------------------
 Reporter:  olly         |             Owner:  olly
     Type:  enhancement  |            Status:  assigned
 Priority:  normal       |         Milestone:  1.3.x
Component:  Matcher      |           Version:  git master
 Severity:  normal       |        Resolution:
 Keywords:               |        Blocked By:
 Blocking:               |  Operating System:  All
-------------------------+-------------------------------
Changes (by olly):

 * version:  SVN trunk => git master


Comment:

 Looks like currently this case segfaults!  Reproducible with:

 {{{
 #!python
 q = xapian.Query(xapian.Query.OP_PHRASE, [xapian.Query(xapian.Query.OP_OR,
 "a", "b"), "c"])
 db = xapian.Database("../../xapian-core/tests/.chert/db=etext")
 enq = xapian.Enquire(db)
 enq.set_query(q)
 m = enq.get_mset(0, 10)
 }}}

 It looks like the issue here is that `a OR b` decays to `a` (since `b`
 isn't a term in that database), and the `OrPostList` gets deleted, but the
 hoisted phrase check still uses the `OrPostList`...

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



More information about the Xapian-tickets mailing list