Commit Graph

295 Commits

Author SHA1 Message Date
ccd6f13793 Update version to the next release (0.4.1) 2021-06-17 15:01:20 +02:00
70bee7d405 re-export remaining error types
Co-authored-by: Clément Renault <clement@meilisearch.com>
2021-06-17 11:49:03 +02:00
abbebad669 change sub errors visibility 2021-06-17 11:44:01 +02:00
9716fb3b36 format the whole project 2021-06-16 18:33:33 +02:00
f5ff3e8e19 Update version for the next release (v0.4.0) 2021-06-16 14:01:05 +02:00
ce0315a10f Close write transaction in test 2021-06-16 11:03:37 +02:00
7ac441e473 Fix small typos 2021-06-16 11:03:37 +02:00
adf0c389c5 Rename FilterParsing into InvalidFilter 2021-06-16 11:03:36 +02:00
8cfe3e1ec0 Rename DatabaseSizeReached into MaxDatabaseSizeReached 2021-06-16 11:03:36 +02:00
4eda438f6f Add a new Error for when a user use a non-filtered attribute in a filter 2021-06-16 11:03:36 +02:00
713acc408b Introduce the primary key to the Settings builder structure 2021-06-16 11:03:36 +02:00
a7d6930905 Replace the panicking expect by tracked Errors 2021-06-15 11:51:32 +02:00
f0e804afd5 Rename the FieldIdMapMissingEntry from_db_name field into process 2021-06-15 11:13:04 +02:00
28c004aa2c Prefer using constant for the database names 2021-06-15 11:13:04 +02:00
312c2d1d8e Use the Error enum everywhere in the project 2021-06-14 16:58:38 +02:00
ca78cb5aca Introduce more variants to the error module enums 2021-06-14 16:58:38 +02:00
456541e921 Implement the Display trait on the Error type 2021-06-14 16:48:51 +02:00
44c353fafd Introduce some way to construct an Error 2021-06-14 16:48:51 +02:00
23fcf7920e Introduce a basic version of the InternalError struct 2021-06-14 16:48:51 +02:00
d2b1ecc885 Remove a lot of serialization unreachable errors 2021-06-14 16:48:51 +02:00
65b1d09d55 Move the obkv merging functions into the merge_function module 2021-06-14 16:48:51 +02:00
ab727e428b Remove the docid_word_positions_merge method that must never be called 2021-06-14 16:48:51 +02:00
93a8633f18 Remove the documents_merge method that must never be called 2021-06-14 16:48:51 +02:00
cfc7314bd1 Prefer using an explicit merge function name 2021-06-14 16:48:50 +02:00
93978ec38a Serializing a RoaringBitmap into a Vec cannot fail 2021-06-14 16:48:50 +02:00
ff9414a6ba Use the out of the compute_primary_key_pair function 2021-06-14 16:48:50 +02:00
f4cab080a6 Update milli/src/search/query_tree.rs
Co-authored-by: Clément Renault <clement@meilisearch.com>
2021-06-10 11:30:51 +02:00
36715f571c Update milli/src/search/criteria/proximity.rs
Co-authored-by: Clément Renault <clement@meilisearch.com>
2021-06-10 11:30:33 +02:00
e923a3ed6a Replace Consecutive by Phrase in query tree
Replace Consecutive by Phrase in query tree in order to remove theorical bugs,
due of the Consecutive enum type.
2021-06-10 11:16:16 +02:00
dc64e139b9 Update version for the next release (v0.3.1) 2021-06-09 14:39:21 +02:00
afb4133bd2 Merge #212 #222 #223
212: Introduce integration test on criteria r=Kerollmops a=ManyTheFish

- add pre-ranked dataset
- test each criterion 1 by 1
- test all criteria in several order

222: Move the `UpdateStore` into the http-ui crate r=Kerollmops a=Kerollmops

We no more need to have the `UpdateStore` inside of the mill crate as this is the job of the caller to stack the updates and sequentially give them to milli.

223: Update dataset links r=Kerollmops a=curquiza



Co-authored-by: many <maxime@meilisearch.com>
Co-authored-by: Many <legendre.maxime.isn@gmail.com>
Co-authored-by: Kerollmops <clement@meilisearch.com>
Co-authored-by: Clémentine Urquizar <clementine@meilisearch.com>
2021-06-09 08:47:19 +00:00
6faa87302c Merge #220
220: Make hard separators split phrase query r=Kerollmops a=ManyTheFish

hard separators will now split a phrase query as two sequential phrases (double-quoted strings):

the query `"Radioactive (Imagine Dragons)"` would be considered equivalent to `"Radioactive" "Imagine Dragons"` which as the little disadvantage of not keeping the order of the two (or more) separate phrases.

Fix #208

Co-authored-by: many <maxime@meilisearch.com>
Co-authored-by: Many <legendre.maxime.isn@gmail.com>
2021-06-09 08:22:58 +00:00
f4ff30e99d Update milli/tests/search/mod.rs
Co-authored-by: Clément Renault <clement@meilisearch.com>
2021-06-09 10:12:24 +02:00
ab696f6a23 Update milli/tests/search/query_criteria.rs
Co-authored-by: Clément Renault <clement@meilisearch.com>
2021-06-09 10:12:17 +02:00
0bf4f3f48a Modify a test to check that criteria additions change the fields ids map 2021-06-08 18:14:34 +02:00
82df524e09 Make sure that we register the field when setting criteria 2021-06-08 18:14:33 +02:00
103dddba2f Move the UpdateStore into the http-ui crate 2021-06-08 17:59:51 +02:00
faf148d297 Update milli/src/search/query_tree.rs
Co-authored-by: Clément Renault <clement@meilisearch.com>
2021-06-08 17:52:37 +02:00
133ab98260 Use the index primary key when deleting documents 2021-06-08 17:33:29 +02:00
b489d699ce Make hard separators split phrase query
hard separators will now split a phrase query as double double-quotes

Fix #208
2021-06-08 17:29:38 +02:00
afb09c914d Update milli/tests/search/query_criteria.rs
Co-authored-by: Clément Renault <clement@meilisearch.com>
2021-06-08 16:53:56 +02:00
b64cd2a3e3 Resolve PR comments 2021-06-08 14:14:34 +02:00
1fcc5f73ac Factorize tests using macro_rules 2021-06-08 12:33:02 +02:00
10882bcbce Introduce integration test on criteria 2021-06-03 14:44:53 +02:00
a32236c80c Merge #211
211: Update Cargo.toml for next release v0.3.0 r=Kerollmops a=curquiza



Co-authored-by: Clémentine Urquizar <clementine@meilisearch.com>
2021-06-03 10:42:52 +00:00
3b2b3aeea9 Update Cargo.toml for next release v0.3.0 2021-06-03 12:24:27 +02:00
39ed133f9f Merge #193
193: Fix primary key behavior r=Kerollmops a=MarinPostma

this pr:
- Adds early returns on empty document additions, avoiding error messages to be returned when adding no documents and no primary key was set.
- Changes the primary key inference logic to match that of legacy meilisearch.

close #194 

Co-authored-by: Marin Postma <postma.marin@protonmail.com>
Co-authored-by: marin postma <postma.marin@protonmail.com>
2021-06-03 10:24:21 +00:00
57898d8a90 fix silent deserialize error 2021-06-03 10:42:55 +02:00
834504aec0 Merge #204
204: Decorrelate Distinct, Asc/Desc, Filterable fields from the faceted fields r=Kerollmops a=Kerollmops

This PR decorrelates the fields that need to be stored in facet databases (big inverted indexes for fast access) from the filterable fields, the previously named faceted fields are now named filterable fields and are the union of the distinct attribute, all the Asc/Desc criteria and, the filterable fields.

I added two tests to make sure that the engine was correctly generating the faceted databases when a distinct attribute or an Asc/Desc criteria were added, and one to make sure that it was impossible to filter on a non-filterable field even if it was a faceted one.

Note that the `AttributesForFacetting` has also been renamed into `FilterableAttributes`. But it will be the Transplant's job to do that on the API, this change is only visible to the milli's library users.

- Related to https://github.com/meilisearch/transplant/issues/187.
- Fixes #161 by returning the documents that don't have the Asc/Desc field at the end of the bucket.
- Fixes #168.
- Fixes #152.

Co-authored-by: Kerollmops <clement@meilisearch.com>
Co-authored-by: Marin Postma <postma.marin@protonmail.com>
Co-authored-by: many <maxime@meilisearch.com>
2021-06-02 15:43:39 +00:00
26a9974667 Make asc/desc criterion return resting documents
Fix #161.2
2021-06-02 17:41:48 +02:00