meilisearch/milli/src
meili-bors[bot] be72be7c0d
Merge #3942
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>
2023-07-25 14:37:17 +00:00
..
documents fix the addition + deletion bug 2023-05-17 18:28:57 +02:00
facet update milli with the new parser_filter 2021-11-04 15:02:36 +01:00
heed_codec Normalize for the search the facets values 2023-07-20 17:57:07 +02:00
search Merge #3942 2023-07-25 14:37:17 +00:00
snapshots/index.rs Fix tests 2023-06-14 13:30:52 +02:00
update Merge #3942 2023-07-25 14:37:17 +00:00
asc_desc.rs fmt 2023-03-30 23:37:26 +02:00
criterion.rs update the syntax of the geoboundingbox filter to uses brackets instead of parens around lat and lng 2023-02-06 16:50:27 +01:00
distance.rs Replace the hnsw crate by the instant-distance one 2023-07-25 12:37:35 +02:00
error.rs Change the error message when a facet is not searchable 2023-06-28 15:06:09 +02:00
external_documents_ids.rs improve the way we handle the fsts 2023-05-22 11:15:14 +02:00
fields_ids_map.rs Fixes for clippy bringing us down to 18 remaining issues. 2022-10-25 20:49:02 +02:00
index.rs Merge #3942 2023-07-25 14:37:17 +00:00
lib.rs Normalize for the search the facets values 2023-07-20 17:57:07 +02:00
proximity.rs Remove limit of 1000 position per attribute 2021-10-12 10:10:50 +02:00
readable_slices.rs Make clippy and fmt happy 2023-06-27 12:32:42 +02:00
score_details.rs Add missing exactness.matchingWords, exactness.maxMatchingWords 2023-07-04 16:31:01 +02:00
snapshot_tests.rs Add trailing pipe to the snapshots so it doesn't end with trailing whitespace 2023-06-14 13:30:52 +02:00