5672118bfa
When adding documents, trying to update the primary-key now throw an error
...
While updating the test suite I also noticed an issue with the indexed_documents value of failed task and had to update it.
I also named a bunch of snapshots that had no name sorry 😬
2023-01-23 17:32:13 +01:00
72e2b220ed
Fix tests
2023-01-19 15:48:20 +01:00
e8e7070cc6
improve the error message when no task filter are specified for the cancelation or deletion of tasks
2023-01-19 12:42:08 +01:00
3e5b3df487
Merge #3370 #3373 #3375
...
3370: make the swap indexes not found errors return an IndexNotFound error-code r=irevoire a=irevoire
Fix https://github.com/meilisearch/meilisearch/issues/3368
3373: fix a wrong error code and add tests on the document resource r=irevoire a=irevoire
Fix https://github.com/meilisearch/meilisearch/issues/3371
3375: Avoid deleting all task invalid canceled by r=irevoire a=Kerollmops
Fixes #3369 by making sure that at least one `canceledBy` task filter parameter matches something.
Co-authored-by: Tamo <tamo@meilisearch.com >
Co-authored-by: Kerollmops <clement@meilisearch.com >
2023-01-18 15:21:11 +00:00
e89973f1bf
Do not delete all tasks when no canceled-by matches
2023-01-18 15:50:46 +01:00
57da80900d
make the swap indexes not found errors return an IndexNotFound error code
2023-01-18 14:16:00 +01:00
2bc2e99ff3
Simplify declaration of the error codes
2023-01-11 19:08:39 +01:00
e706628bb1
fix the error code of the swap index route
2023-01-06 14:48:25 +01:00
50ce0409bc
Integrate deserr on the most important routes
2023-01-05 20:48:29 +01:00
2d74678b51
Replace underscores with hyphens in doc link to error code
2023-01-05 10:09:02 +01:00
233372abea
Remove --max-index-size
and --max-task-db-size
2023-01-04 17:20:01 +01:00
9a39c4e40d
Get date from IndexMetaData
2022-12-22 11:46:17 +01:00
0893b175dc
Merge branch 'main' into 2983-forward-date-to-milli
2022-12-21 14:31:19 +01:00
d5978d11e1
Refactor
2022-12-21 14:28:00 +01:00
d8fb506c92
handle most io error instead of tagging everything as an internal
2022-12-19 20:50:40 +01:00
aa03e02fdc
Apply Rustfmt
2022-12-19 19:24:56 +01:00
869d331680
Clippy fixes after updating Rust to v1.66
2022-12-19 14:17:12 +01:00
b4a73f2d74
Remove redundant date-setting
2022-12-16 08:32:44 +01:00
4e175ae882
Replace Index::new_with_creation_dates(...) with Index::new(...)
2022-12-16 08:20:13 +01:00
5a0a0468df
Combine created and added into date
2022-12-16 08:11:12 +01:00
d3eb8d2d5c
Enable create_raw_index(...) to specify time
2022-12-14 10:44:25 +01:00
7b2f2a4f9c
Do only one convertion to u64
2022-12-13 15:31:55 +01:00
7c24fea9f2
Merge branch 'main' into fix-3037
2022-12-13 05:16:03 +08:00
026cf223b3
Update version for the next release (v1.0.0) in Cargo.toml files
2022-12-08 12:20:17 +00:00
717dd36547
Merge branch 'fix-3037' of github.com:jiangbo212/meilisearch into fix-3037
2022-12-07 22:54:16 +08:00
f1de3aa75a
Make the tests use MB to trigger page size issues
2022-12-06 20:10:10 +01:00
e4e4370a3c
Clamp the databases size to the page size
2022-12-06 20:09:49 +01:00
5db7c4057c
Update version for the next release (v0.30.1) in Cargo.toml files
2022-12-06 20:05:46 +01:00
5a770ffe47
test fail fix
2022-12-03 22:48:38 +08:00
bf96b6df93
clippy fix change
2022-11-30 17:59:06 +08:00
9c28632498
Merge branch 'main' into fix-3037
2022-11-30 09:38:01 +08:00
38982d13fe
fix issue 3037
2022-11-30 00:03:22 +08:00
457a473b72
Bring back release-v0.30.0
into release-v0.30.0-temp
(final: into main
) ( #3145 )
...
* Fix error code of the "duplicate index found" error
* Use the content of the ProcessingTasks in the tasks cancelation system
* Change the missing_filters error code into missing_task_filters
* WIP Introduce the invalid_task_uid error code
* Use more precise error codes/message for the task routes
+ Allow star operator in delete/cancel tasks
+ rename originalQuery to originalFilters
+ Display error/canceled_by in task view even when they are = null
+ Rename task filter fields by using their plural forms
+ Prepare an error code for canceledBy filter
+ Only return global tasks if the API key action `index.*` is there
* Add canceledBy task filter
* Update tests following task API changes
* Rename original_query to original_filters everywhere
* Update more insta-snap tests
* Make clippy happy
They're a happy clip now.
* Make rustfmt happy
>:-(
* Fix Index name parsing error message to fit the specification
* Bump milli version to 0.35.1
* Fix the new error messages
* fix the error messages and add tests
* rename the error codes for the sake of consistency
* refactor the way we send the cli informations + add the analytics for the config file and ssl usage
* Apply suggestions from code review
Co-authored-by: Clément Renault <clement@meilisearch.com >
* add a comment over the new infos structure
* reformat, sorry @kero
* Store analytics for the documents deletions
* Add analytics on all the settings
* Spawn threads with names
* Spawn rayon threads with names
* update the distinct attributes to the spec update
* update the analytics on the search route
* implements the analytics on the health and version routes
* Fix task details serialization
* Add the question mark to the task deletion query filter
* Add the question mark to the task cancelation query filter
* Fix tests
* add analytics on the task route
* Add all the missing fields of the new task query type
* Create a new analytics for the task deletion
* Create a new analytics for the task creation
* batch the tasks seen events
* Update the finite pagination analytics
* add the analytics of the swap-indexes route
* Stop removing the DB when failing to read it
* Rename originalFilters into originalFilters
* Rename matchedDocuments into providedIds
* Add `workflow_dispatch` to flaky.yml
* Bump grenad to 0.4.4
* Bump milli to version v0.37.0
* Don't multiply total memory returned by sysinfo anymore
sysinfo now returns bytes rather than KB
* Add a dispatch to the publish binaries workflow
* Fix publish release CI
* Don't use gold but the default linker
* Always display details for the indexDeletion task
* Fix the insta tests
* refactorize the whole test suite
1. Make a call to assert_internally_consistent automatically when snapshoting the scheduler. There is no point in snapshoting something broken and expect the dumb humans to notice.
2. Replace every possible call to assert_internally_consistent by a snapshot of the scheduler. It takes as many lines and ensure we never change something without noticing in any tests ever.
3. Name every snapshots: it's easier to debug when something goes wrong and easier to review in general.
4. Stop skipping breakpoints, it's too easy to miss something. Now you must explicitely show which path is the scheduler supposed to use.
5. Add a timeout on the channel.recv, it eases the process of writing tests, now when something file you get a failure instead of a deadlock.
* rebase on release-v0.30
* makes clippy happy
* update the snapshots after a rebase
* try to remove the flakyness of the failing test
* Add more analytics on the ranking rules positions
* Update the dump test to check for the dumpUid dumpCreation task details
* send the ranking rules as a string because amplitude is too dumb to process an array as a single value
* Display a null dumpUid until we computed the dump itself on disk
* Update tests
* Check if the master key is missing before returning an error
Co-authored-by: Loïc Lecrenier <loic.lecrenier@me.com >
Co-authored-by: bors[bot] <26634292+bors[bot]@users.noreply.github.com>
Co-authored-by: Kerollmops <clement@meilisearch.com >
Co-authored-by: ManyTheFish <many@meilisearch.com >
Co-authored-by: Tamo <tamo@meilisearch.com >
Co-authored-by: Louis Dureuil <louis@meilisearch.com >
2022-11-28 16:27:41 +01:00
0219ef25fe
Moved the struct UuidCodec to a new file
2022-10-31 12:25:19 +05:30
3911fd64b5
Implement Uuid codec for heed
2022-10-30 03:27:30 +05:30
dd1011ba76
Merge #2995
...
2995: merge the settings and do one indexation at the end r=irevoire a=irevoire
Co-authored-by: Irevoire <tamo@meilisearch.com >
2022-10-27 21:24:21 +00:00
20258461a8
Merge #2981 #2996
...
2981: Move index swap error handling from meilisearch-http to index-scheduler r=irevoire a=loiclec
And make index_not_found error asynchronous, since we can't know whether the index will exist by the time the index swap task is processed.
Improve the index-swap test to verify that future tasks are not swapped and to test the new error messages that were introduced.
## Related issue
https://github.com/meilisearch/meilisearch/issues/2973
2996: Get rids of the unecessary tasks when an index_uid is specified r=Kerollmops a=irevoire
Co-authored-by: Loïc Lecrenier <loic.lecrenier@me.com >
Co-authored-by: Tamo <tamo@meilisearch.com >
Co-authored-by: Irevoire <tamo@meilisearch.com >
2022-10-27 19:11:23 +00:00
87cac158c4
Update index-scheduler/src/batch.rs
2022-10-27 18:08:21 +02:00
c9f89d38e3
Merge branch 'main' into index-swap-error-handling
2022-10-27 18:06:45 +02:00
01687c87a2
Get rids of the unecessary tasks when an index_uid is specified
2022-10-27 18:00:04 +02:00
313f204f39
merge the settings and do one indexation at the end
2022-10-27 16:38:21 +02:00
d16ea755d8
Merge #2982
...
2982: Adapt task queries to account for special index swap rules r=irevoire a=loiclec
# Pull Request
## Related issue
Fixes https://github.com/meilisearch/meilisearch/issues/2970
## What does this PR do?
- Replace the `get_tasks` method with a `get_tasks_from_authorized_indexes` which returns the list of tasks matched by the query **from the point of view of the user**. That is, it takes into consideration the list of authorised indexes as well as the special case of `IndexSwap` which should not be returned if an index_uid is specified or if any of its associated indexes are not authorised.
- Adapt the code in other places following this change
- Add some tests
- Also the method `get_task_ids_from_authorized_indexes` now takes a read transaction as argument. This is because we want to make sure that the implementation of `get_tasks_from_authorized_indexes` only uses one read transaction. Otherwise, we could (1) get a list of task ids matching the query, then (2) one of these task ids is deleted by a taskDeletion task, and finally (3) we try to get the `Task`s associated with each returned task ids, and get a `CorruptedTaskQueue` error.
Co-authored-by: Loïc Lecrenier <loic.lecrenier@me.com >
2022-10-27 14:28:04 +00:00
8152ab5dfc
Revert change in initialisation of TempDir for index scheduler tests
2022-10-27 16:26:17 +02:00
2c31d7c50a
Apply review suggestions
2022-10-27 16:24:08 +02:00
68f80dbacf
Update version for the next release (v0.30.0) in Cargo.toml files
2022-10-27 11:35:44 +00:00
4f4fc20acf
Make clippy happy
2022-10-27 13:00:30 +02:00
78ffa00f98
Move index swap error handling from meilisearch-http to index-scheduler
...
And make index_not_found error asynchronous, since we can't know
whether the index will exist by the time the index swap task is
processed.
Improve the index-swap test to verify that future tasks are not swapped
and to test the new error messages that were introduced.
2022-10-27 11:45:38 +02:00
7b93ba40bd
Reimplement task queries to account for special index swap rules
2022-10-27 11:44:51 +02:00
7307c4dacd
fix clippy
2022-10-27 11:35:22 +02:00
33996071ea
fix clippy from the CI
2022-10-27 11:35:21 +02:00