Cancel an ongoing reindex task
- POST /_reindex/{task_id}/_cancel
If wait_for_completion is true (the default), the response contains the final task state after cancellation.
If wait_for_completion is false, the response contains only acknowledged: true.
This API follows reindex tasks across node-shutdown relocations, so callers can keep using the original task ID throughout the lifetime of the operation. Returned task IDs and timings reflect the original task, not its relocated successor. Relocated task IDs are also supported. They are followed transparently and return the task ID and timings of the original task.
When the task ID cannot be cancelled (unknown ID, non-reindex task, sliced child, finished task, or node left with no stored result), the API returns the following response with a 404 status code:
{
"error": {
"type": "resource_not_found_exception",
"reason": "reindex task [r1A2WoRbTwKZ516z6NEs5A:36619] either not found or completed"
},
"status": 404
}
During a brief handoff window of a node-shutdown relocation, you may receive the response below with a 503 status code. Retry with the same task ID; the retry follows the relocated task transparently.
{
"error": {
"type": "status_exception",
"reason": "cannot cancel task [36619] because it is being relocated"
},
"status": 503
}
Response
-
idstring -
The ID of the reindex task. The value is the ID assigned when the task was first created and remains stable across node-shutdown relocations. Present when
wait_for_completion=true. -
start_time_in_millisnumber -
The time at which the reindex task started, in milliseconds since the Unix epoch.
-
running_timestring -
The elapsed running time of the reindex task, in a human-readable format. Only present when the request includes the
?human=truequery parameter. -
statusobject -
The status of the reindex operation at the time of cancellation.
-
noopsnumberrequired -
The number of documents that were ignored because the script used for the reindex returned a
noopvalue forctx.op. -
requests_per_secondnumberrequired -
The number of requests per second effectively executed during the reindex.
-
retriesobjectrequired -
The number of retries attempted by reindex.
bulkis the number of bulk actions retried andsearchis the number of search actions retried. -
throttled_millisnumberrequired -
Number of milliseconds the request slept to conform to
requests_per_second. -
throttled_until_millisnumberrequired -
This field should always be equal to zero in a
_reindexresponse. It only has meaning when using the Task API, where it indicates the next time (in milliseconds since epoch) a throttled request will be executed again in order to conform torequests_per_second. -
responseobject -
The final result of the reindex operation, if it completed before being cancelled.
-
failuresobject -
Any failures encountered during the reindex. If non-empty, the reindex ended because of these failures.
-
noopsnumber -
The number of documents that were ignored because the script returned a
noopvalue forctx.op. -
requests_per_secondnumber -
The number of requests per second effectively executed during the reindex.