https://bugs.kde.org/show_bug.cgi?id=412421

--- Comment #8 from Stefan Brüns <stefan.bru...@rwth-aachen.de> ---
Git commit c85de29f33224e27f273f66fef09837d24fdfd2c by Stefan Brüns.
Committed on 06/07/2023 at 22:39.
Pushed by bruns into branch 'kf5_test'.

[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.

M  +0    -1    autotests/integration/querytest.cpp
M  +7    -3    src/lib/searchstore.cpp

https://invent.kde.org/frameworks/baloo/-/commit/c85de29f33224e27f273f66fef09837d24fdfd2c

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to