[Xapian-tickets] [Xapian] #677: OP_WILDCARD with multidb (was: OP_WILDCARD and OP_ELITE_SET with multidb)
Xapian
nobody at xapian.org
Tue Jan 5 10:53:29 GMT 2016
#677: OP_WILDCARD with multidb
-------------------------+------------------------------
Reporter: olly | Owner: olly
Type: defect | Status: new
Priority: normal | Milestone: 1.4.x
Component: Library API | Version: SVN trunk
Severity: normal | Resolution:
Keywords: | Blocked By:
Blocking: | Operating System: All
-------------------------+------------------------------
Changes (by olly):
* milestone: 1.3.x => 1.4.x
Old description:
> Currently the limits for both of these are applied separately for each
> subdatabase in the multidatabase case - really they should both work the
> same as for a single database containing the same documents as all the
> subdatabases.
>
> `OP_ELITE_SET` and `QueryParser`'s wildcard expansion limits do work that
> way in 1.2.x, so this seems like it ought to be fixed before 1.4.0.
New description:
Currently the limits ~~~for both of these~~~ are applied separately for
each subdatabase in the multidatabase case - really they should both work
the same as for a single database containing the same documents as all the
subdatabases.
~~~`OP_ELITE_SET` and~~~ `QueryParser`'s wildcard expansion limits do work
that way in 1.2.x, so this seems like it ought to be fixed before 1.4.0.
--
Comment:
Turns out `OP_ELITE_SET` is easy to fix - we just remove the special case
check for `termfreq_max()` being zero! That's done in
[6f3ff69b87bf50390c09c4f0f31740857c241109].
The fix for `OP_WILDCARD` is unfortunately not just a matter of deleting a
couple of lines of code.
The reason for the wildcard limits is to improve performance so we want
the implementation to be efficient, and perhaps that's more important than
it being exact. Care is certainly needed to make sure any fix isn't a lot
slower.
As I noted in the description, 1,2's `QueryParser` wildcard expansion
limits work differently, but the current behaviour isn't entirely
unreasonable, and `OP_WILDCARD` and these limits are new features.
So I think for 1.4.0 we document what currently happens, and note that
these details may change - done in
[a6cbcf9ee8c091adef1547571ac502f8c78343c2].
--
Ticket URL: <http://trac.xapian.org/ticket/677#comment:2>
Xapian <http://xapian.org/>
Xapian
More information about the Xapian-tickets
mailing list