mirror of
https://github.com/meilisearch/meilisearch.git
synced 2024-11-23 10:37:41 +08:00
be72be7c0d
3942: Normalize for the search the facets values r=ManyTheFish a=Kerollmops This PR improves and fixes the search for facet values feature. Searching for _bre_ wasn't returning facet values like _brévent_ or _brô_. The issue was related to the fact that facets are normalized but not in the same way as the `searchableAttributes` are. We decided to normalize them further and add another intermediate database where the key is the normalized facet value, and the value is a set of the non-normalized facets. We then use these non-normalized ones to get the correct counts by fetching the associated databases. ### What's missing in this PR? - [x] Apply the change to the whole set of `SearchForFacetValue::execute` conditions. - [x] Factorize the code that does an intermediate normalized value fetch in a function. - [x] Add or modify the search for facet value test. Co-authored-by: Clément Renault <clement@meilisearch.com> Co-authored-by: Kerollmops <clement@meilisearch.com> |
||
---|---|---|
.. | ||
documents | ||
facet | ||
heed_codec | ||
search | ||
snapshots/index.rs | ||
update | ||
asc_desc.rs | ||
criterion.rs | ||
distance.rs | ||
error.rs | ||
external_documents_ids.rs | ||
fields_ids_map.rs | ||
index.rs | ||
lib.rs | ||
proximity.rs | ||
readable_slices.rs | ||
score_details.rs | ||
snapshot_tests.rs |