Skip to content
Commit b7c8ce1a authored by Stefan Brüns's avatar Stefan Brüns
Browse files

[SearchStore] Always use TermGenerator instead of QueryParser

The QueryParser handles two fairly distinct tasks, parsing of quoting
characters, and splitting of phrases into terms.

The Phrase/Term splitting is similar to the TermGenerator, but slightly
different. Using a different implementation for searching and DB storage
can cause matching errors.

While the nested QueryParser quoting /can/ be used, it is fairly
redundant, and problematic:

- Quoting is already handled by the AdvancedQueryParser, which always
  sits in front of the SearchStore.
- The QueryParser is *only* used for "contains" queries (e.g.
  filename:foo.png) not "equal" queries ("filename=foo.png").
- Quoting of phrases for both variants is different,
  content:\"\'a b\'\" vs. content=\"a \"b".
- The QueryParser does not handle term truncation (see bug reference).

Use the TermGenerator in all cases, so term splitting and quoting is
uniform.

CCBUG:412421
parent 88bc43a4
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment