0465ba4a05
Intern more values
2023-03-20 09:41:56 +01:00
2099991dd1
Continue documenting and cleaning up the code
2023-03-20 09:41:56 +01:00
c232cdabf5
Add documentation
2023-03-20 09:41:56 +01:00
4e266211bf
Small code reorganisation
2023-03-20 09:41:56 +01:00
57fa689131
Cargo fmt
2023-03-20 09:41:56 +01:00
10626dddfc
Add a few more optimisations to new search algorithms
2023-03-20 09:41:56 +01:00
9051065c22
Apply a few optimisations for graph-based ranking rules
2023-03-20 09:41:56 +01:00
e8c76cf7bf
Intern all strings and phrases in the search logic
2023-03-20 09:41:56 +01:00
3f1729a17f
Update new search test
2023-03-20 09:41:56 +01:00
cab2b6bcda
Fix: computation of initial universe, code organisation
2023-03-20 09:41:56 +01:00
c4979a2fda
Fix code visibility issue + unimplemented detail in proximity rule
2023-03-20 09:41:56 +01:00
23931f8a4f
Fix small bug in visual logger of search algo
2023-03-20 09:41:56 +01:00
aa414565bb
Fix proximity graph edge builder to include all proximities
2023-03-20 09:41:56 +01:00
1db152046e
WIP on split words and synonyms support
2023-03-20 09:41:56 +01:00
c27ea2677f
Rewrite cheapest path algorithm and empty path cache
...
It is now much simpler and has much better performance.
2023-03-20 09:41:56 +01:00
caa1e1b923
Add typo ranking rule to new search impl
2023-03-20 09:41:56 +01:00
71f18e4379
Add sort ranking rule to new search impl
2023-03-20 09:41:56 +01:00
600e3dd1c5
Remove warnings
2023-03-20 09:41:56 +01:00
362eb0de86
Add support for filters
2023-03-20 09:41:56 +01:00
998d46ac10
Add support for search offset and limit
2023-03-20 09:41:56 +01:00
6c85c0d95e
Fix more bugs + visual empty path cache logging
2023-03-20 09:41:56 +01:00
0e1fbbf7c6
Fix bugs in query graph's "remove word" and "cheapest paths" algos
2023-03-20 09:41:56 +01:00
6806640ef0
Fix d2 description of paths map
2023-03-20 09:41:56 +01:00
173e37584c
Improve the visual/detailed search logger
2023-03-20 09:41:55 +01:00
6ba4d5e987
Add a search logger
2023-03-20 09:41:55 +01:00
dd12d44134
Support swapped word pairs in new proximity ranking rule impl
2023-03-20 09:41:55 +01:00
a61495d660
Update Cargo.toml (commit to be deleted later)
2023-03-20 09:41:55 +01:00
c8e251bf24
Remove noise in codebase
2023-03-20 09:41:55 +01:00
a938fbde4a
Use a cache when resolving the query graph
2023-03-20 09:41:55 +01:00
dcf3f1d18a
Remove EdgeIndex and NodeIndex types, prefer u32 instead
2023-03-20 09:41:55 +01:00
66d0c63694
Add some documentation and use bitmaps instead of hashmaps when possible
2023-03-20 09:41:55 +01:00
132191360b
Introduce the sort ranking rule working with the new search structures
2023-03-20 09:41:55 +01:00
345c99d5bd
Introduce the words ranking rule working with the new search structures
2023-03-20 09:41:55 +01:00
89d696c1e3
Introduce the proximity ranking rule as a graph-based ranking rule
2023-03-20 09:41:55 +01:00
c645853529
Introduce a generic graph-based ranking rule
2023-03-20 09:41:55 +01:00
a70ab8b072
Introduce a function to find the K shortest paths in a graph
2023-03-20 09:41:55 +01:00
48aae76b15
Introduce a function to find the docids of a set of paths in a graph
2023-03-20 09:41:55 +01:00
23bf572dea
Introduce cache structures used with ranking rule graphs
2023-03-20 09:41:55 +01:00
864f6410ed
Introduce a structure to represent a set of graph paths efficiently
2023-03-20 09:41:55 +01:00
c9bf6bb2fa
Introduce a structure to implement ranking rules with graph algorithms
2023-03-20 09:41:55 +01:00
46249ea901
Implement a function to find a QueryGraph's docids
2023-03-20 09:41:55 +01:00
ce0d1e0e13
Introduce a common way to manage the coordination between ranking rules
2023-03-20 09:41:55 +01:00
5065d8b0c1
Introduce a DatabaseCache to memorize the addresses of LMDB values
2023-03-20 09:41:55 +01:00
a83007c013
Introduce structure to represent search queries as graphs
2023-03-20 09:41:55 +01:00
79e0a6dd4e
Introduce a new search module, eventually meant to replace the old one
...
The code here does not compile, because I am merely splitting one giant
commit into smaller ones where each commit explains a single file.
2023-03-20 09:41:55 +01:00
2d88089129
Remove unused term matching strategies
2023-03-20 09:41:55 +01:00
1d937f831b
Temporarily remove codegen-units - 1
2023-03-20 09:41:55 +01:00
6c659dc12f
Use MiMalloc in milli tests
2023-03-20 09:41:37 +01:00
70c906d4b4
Merge #3576
...
3576: Add boolean support for csv documents r=irevoire a=irevoire
Fixes https://github.com/meilisearch/meilisearch/issues/3572
## What does this PR do?
Add support for the boolean types in csv documents.
The type definition is `boolean` and the possible values are
- `true` for true
- `false` for false
- ` ` for null
Here is an example:
```csv
#id,cute:boolean
0,true
1,false
2,
```
Co-authored-by: Tamo <tamo@meilisearch.com >
2023-03-14 12:28:12 +00:00
0f33a65468
makes kero happy
2023-03-13 16:51:11 +01:00