-
Notifications
You must be signed in to change notification settings - Fork 11
Tasks API - Add task cancelation capability #195
Conversation
01546d1 to
7f5435d
Compare
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @alallema, here is a first draft review.
I think the specification can be extremely simplified if we explain all the filters listing and behaviors in one single place; since all tasks endpoints can use them there is no need to repeat that information for every endpoints.
-
I couldn't mark it as a suggestion but in some places, it is mentioned that
dumpCreationis a global task. e.g. SummarizedtaskObject for202 Accepted. It would be worthwhile to make a section listing the types of tasks that are global and therefore have anullindexUid. -
Don't forget to update the
api-keysspecification since we are adding a new actiontasks.cancel
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Guillaume Mourier <[email protected]>
Co-authored-by: Clément Renault <[email protected]>
Co-authored-by: Clément Renault <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
According to our discussion on Slack, we must go with originalFilter because, technically, it is one filter expression and for consistency with the search route.
Co-authored-by: Clément Renault <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me 😃
* Describes task deletion feature additions * Update open-api.yml * Update telemetry-policies * Update originalQuery to originalFilters * Follow title structure * Introduce review feedback * Branch the right components * Update text/0060-tasks-api.md Co-authored-by: Clément Renault <[email protected]> Co-authored-by: Clément Renault <[email protected]>
* Bump Meilisearch OpenAPI spec to v0.30.0 * Compression Headers (#178) * Start specification * Rename spec file * Rephrase summary * Rephrase receiving a compressed response section * Add links to RFC9910 * Introduce missing_master_key error (#179) * Update error message (#180) * Specify the error variant (#181) * replaces 127.0.0.1 by localhost (#184) * Configuration File Support (#185) * init spec file * Fill-in spec * Fix typing errors * adds errors case * Update text/0185-configuration-file.md Co-authored-by: Clémentine Urquizar - curqui <[email protected]> * Replace config file by configuration file in the error message * Update text/0185-configuration-file.md Co-authored-by: Clémentine Urquizar - curqui <[email protected]> * Update text/0185-configuration-file.md Co-authored-by: Clémentine Urquizar - curqui <[email protected]> * Update text/0185-configuration-file.md Co-authored-by: Clémentine Urquizar - curqui <[email protected]> * Update text/0185-configuration-file.md Co-authored-by: Clémentine Urquizar - curqui <[email protected]> * Add infos.with_configuration_file to telemetry-policies * Update text/0185-configuration-file.md Co-authored-by: Clémentine Urquizar - curqui <[email protected]> * Update text/0185-configuration-file.md Co-authored-by: Tamo <[email protected]> * Update text/0185-configuration-file.md Co-authored-by: Tamo <[email protected]> * Update text/0185-configuration-file.md Co-authored-by: Tamo <[email protected]> Co-authored-by: Clémentine Urquizar - curqui <[email protected]> Co-authored-by: Tamo <[email protected]> * Telemetry - Missing events and options (#186) * wip spec changes * update telemetry * add missing property to the full properties table * Update text/0034-telemetry-policies.md Co-authored-by: Tamo <[email protected]> * Update text/0034-telemetry-policies.md Co-authored-by: Tamo <[email protected]> * Add distrinct_attribute.set property, Task Seen becomes an aggregated event, add missing sub settings properties to Settings Updated event * Add requests.total_received property to Tasks Seen event * add missing ranking rules metrics * Update text/0034-telemetry-policies.md Co-authored-by: Tamo <[email protected]> * Update text/0034-telemetry-policies.md Co-authored-by: Tamo <[email protected]> * Update text/0034-telemetry-policies.md Co-authored-by: Tamo <[email protected]> * Precise max-index-size option (#187) * Tasks API - Rename `receivedDocumentsIds` by `providedIds` (#188) * Rename receivedDocumentsIds by matchedDocuments * Update open-api.yaml Co-authored-by: Clément Renault <[email protected]> * Update open-api.yaml Co-authored-by: Clément Renault <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Clément Renault <[email protected]> * Add missing env vars, brings consistency (#190) * Swap Indexes API (#192) * Add new spec file as draft file * Add specification file * update spec * draft open-api.yml changes * Add errors * fix typos * Add Indexes Swapped event * duplicate_index_found is synchronous * Apply suggestions from code review Co-authored-by: Clémentine Urquizar - curqui <[email protected]> * Add review suggestions * Precis mention for tasks indexUid target swap in the history * Update open-api.yaml Co-authored-by: Clément Renault <[email protected]> * Update open-api.yaml Co-authored-by: Clément Renault <[email protected]> * Update open-api.yaml Co-authored-by: Clément Renault <[email protected]> * Update text/0061-error-format-and-definitions.md Co-authored-by: Clément Renault <[email protected]> * Update text/0191-swap-indexes-api.md Co-authored-by: Clément Renault <[email protected]> Co-authored-by: Clémentine Urquizar - curqui <[email protected]> Co-authored-by: Clément Renault <[email protected]> * Add snapshotCreation as a new task type to make it visible in the task history (#193) * Tasks API - Add task priority order section (#194) * Add 2.1 Task Priority section * Precise other tasks priority ordering * Search API - Page Selection Component (#196) * Search API - numbered pagination * Improve numbered pagination explaination * Update text/0118-search-api.md * Update text/0118-search-api.md * Apply suggestions from code review * Add links * Update open api * Add a dot at the end of the title * Fix links * Improve page and hitsperpage query params * Refactor pagination guide * Fix wording * Add corner case * Update open-api.yaml Co-authored-by: Guillaume Mourier <[email protected]> * Update open-api.yaml Co-authored-by: Guillaume Mourier <[email protected]> * Update open-api.yaml Co-authored-by: Guillaume Mourier <[email protected]> * Apply wording changes from code review Co-authored-by: Guillaume Mourier <[email protected]> * Apply suggestions from code review Co-authored-by: Guillaume Mourier <[email protected]> Co-authored-by: Bruno Casali <[email protected]> * Fix example * Apply suggestions from code review Co-authored-by: Guillaume Mourier <[email protected]> * Update open-api.yaml * Update text/0118-search-api.md * Update links * Add link to maxtotalhits * Update text/0118-search-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Improve message in page reference * Update text/0118-search-api.md Co-authored-by: Many the fish <[email protected]> * Add telemetry to know the most used search results navigation methods in a batch * Update text/0118-search-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0118-search-api.md Co-authored-by: Guillaume Mourier <[email protected]> Co-authored-by: Guillaume Mourier <[email protected]> Co-authored-by: Bruno Casali <[email protected]> Co-authored-by: Many the fish <[email protected]> * Tasks API - Add task cancelation capability (#195) * Add cancel to task spec * Remove missing error * Fix typo on cancels * Fix IndexUid always null * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Add canceledBy and missing_filters error * Merge 11.1 filter iwth get and 11.2 filter with post * Specified every date filter * Change uid as integer and not as string * Add auto-batching and error * Add new route task/cancel api-key * Add global task note * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Guillaume Mourier <[email protected]> * Update text/0061-error-format-and-definitions.md Co-authored-by: Guillaume Mourier <[email protected]> * Modification due to review * Modification due to review * Modification due to review * Modification due to review * Fix global task link * Fix format link * Add open-api modification * Remove trailing space * Add clarification * Add errors definition * Update open-api.yml * fix task uid query parameter name * Fix collission between url path and query parameters * fmt open-api.yml * Add telemetry details * Add 202_taskCancelation example * Update originalQuery to originalFilters and update missing_task_filter to missing_task_filters * matchedTasks is computed when the task is enqueued * Apply suggestions from code review Co-authored-by: cvermand <[email protected]> * Apply suggestions from code review Co-authored-by: cvermand <[email protected]> * Recall explanation for filter query parameter and mentions that limit and from are valid on * Fix typo in property name * Update query paramters name and related error codes when invalid * Fix missing part of error msg * Precise valid date formats * Add supported format for date filters in open-api.yml * Update open-api.yaml Co-authored-by: Clément Renault <[email protected]> * Update text/0060-tasks-api.md Co-authored-by: Clément Renault <[email protected]> * fix typo * Update open-api.yaml Co-authored-by: Clément Renault <[email protected]> * Update text/0060-tasks-api.md * Update text/0060-tasks-api.md * Tasks API - Add task deletion capability (#198) * Describes task deletion feature additions * Update open-api.yml * Update telemetry-policies * Update originalQuery to originalFilters * Follow title structure * Introduce review feedback * Branch the right components * Update text/0060-tasks-api.md Co-authored-by: Clément Renault <[email protected]> Co-authored-by: Clément Renault <[email protected]> Co-authored-by: Guillaume Mourier <[email protected]> Co-authored-by: cvermand <[email protected]> Co-authored-by: Clément Renault <[email protected]> * Update the dump support table with the dumpv6 (#199) * Settings API - Specify handling of null values when patching settings (#202) * Specify behavior when patching a setting with partial values and null values. - Partial value: the setting is unchanged. - null value: the setting is reset to default. * Settings: Update error messages to accept the null value * Add missing task types * Add canceledTasks details Co-authored-by: Clémentine Urquizar - curqui <[email protected]> Co-authored-by: Tamo <[email protected]> Co-authored-by: Clément Renault <[email protected]> Co-authored-by: cvermand <[email protected]> Co-authored-by: Bruno Casali <[email protected]> Co-authored-by: Many the fish <[email protected]> Co-authored-by: Amélie <[email protected]> Co-authored-by: Louis Dureuil <[email protected]>
🤖 API Diff
Summary
This PR describes changes to welcome the task cancelation feature. It also adds consistency by specifying which task fields are displayed by default to
nullwithin a task resource.Changes
A new endpoint: POST
/tasks/canceltaskCancelationtasks.cancelcanceledIntroduce a new error code
missing_task_filtersuidsfilter. e.g/tasks?uids=1,2,3,4invalid_task_uids_filtercanceledByfilter. e.gtasks?canceledBy=99,100invalid_task_canceled_by_filterIntroduce date filters:
invalid_task_date_filterbeforeEnqueuedAt/afterEnqueuedAtfilter.beforeStartedAt/afterStartedAtfilter.beforeFinishedAt/afterFinishedAtfilter.Task
errorfield is set tonullby default.Task
canceledByfield is set tonullby default.Task
detailssub-fields are set tonullwhen Meilsearch can't know the information depending on the task status. @Kerollmops please check the changes within the spec and suggests precision/correction, if any.Add
Tasks Canceledtelemetry eventuser_agentfiltered_by_uidfiltered_by_index_uidfiltered_by_statusfiltered_by_typefiltered_by_canceled_byfiltered_by_before_enqueued_atfiltered_by_after_enqueued_atfiltered_by_before_started_atfiltered_by_after_started_atfiltered_by_before_finished_atfiltered_by_after_finished_atBreaking Changes⚠️
indexUidquery parameter is renamedindexUidstypequery parameter is renamedtypesstatusquery parameter is renamedstatusesinvalid_task_typeerror is renamedinvalid_task_types_filterinvalid_task_statuserror is renamedinvalid_task_statuses_filterOut Of Scope
Explain in clear way subjects that are out of scope and shouldn't be discussed by the reviewers
Attention To Reviewers
The delete tasks PR will be based on the
cancel-tasks-featurebranch because changes are mostly the same.Misc