Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Upgrade Assistant] First iteration of batch reindex docs #59887

Merged
merged 3 commits into from
Mar 20, 2020
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions docs/api/upgrade-assistant.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,17 @@ The following upgrade assistant APIs are available:

* <<start-resume-reindex, Start or resume reindex API>> to start a new reindex or resume a paused reindex

* <<batch-start-resume-reindex, Batch start or resume reindex API>> to start or resume multiple reindex tasks

* <<batch-reindex-queue, Batch reindex queue API>> to check the current reindex batch queue

* <<check-reindex-status, Check reindex status API>> to check the status of the reindex operation

* <<cancel-reindex, Cancel reindex API>> to cancel reindexes that are waiting for the Elasticsearch reindex task to complete

include::upgrade-assistant/status.asciidoc[]
include::upgrade-assistant/reindexing.asciidoc[]
include::upgrade-assistant/batch_reindexing.asciidoc[]
include::upgrade-assistant/batch_queue.asciidoc[]
include::upgrade-assistant/check_reindex_status.asciidoc[]
include::upgrade-assistant/cancel_reindex.asciidoc[]
68 changes: 68 additions & 0 deletions docs/api/upgrade-assistant/batch_queue.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
[[batch-reindex-queue]]
=== Batch reindex queue API
++++
<titleabbrev>Batch reindex queue</titleabbrev>
++++

Check the current reindex batch queue.
jloleysens marked this conversation as resolved.
Show resolved Hide resolved

experimental["The underlying Upgrade Assistant concepts are stable, but the APIs for managing Upgrade Assistant are experimental."]
jloleysens marked this conversation as resolved.
Show resolved Hide resolved

[[batch-reindex-queue-request]]
==== Request

`GET /api/upgrade_assistant/reindex/batch/queue`

[[batch-reindex-queue-request-codes]]
==== Response code

`200`::
Indicates a successful call.

[[batch-reindex-queue-example]]
==== Example

The API returns the following:

[source,js]
--------------------------------------------------
{
"queue": [ <1>
{
"indexName": "index1",
"newIndexName": "reindexed-v8-index2",
"status": 3,
"lastCompletedStep": 0,
"locked": null,
"reindexTaskId": null,
"reindexTaskPercComplete": null,
"errorMessage": null,
"runningReindexCount": null,
"reindexOptions": {
"queueSettings": {
"queuedAt": 1583406985489
}
}
},
{
"indexName": "index2",
"newIndexName": "reindexed-v8-index2",
"status": 3,
"lastCompletedStep": 0,
"locked": null,
"reindexTaskId": null,
"reindexTaskPercComplete": null,
"errorMessage": null,
"runningReindexCount": null,
"reindexOptions": {
"queueSettings": {
"queuedAt": 1583406987334
}
}
}
]
}
--------------------------------------------------

<1> Items in this array indicate reindex tasks at a given point in time
jloleysens marked this conversation as resolved.
Show resolved Hide resolved

81 changes: 81 additions & 0 deletions docs/api/upgrade-assistant/batch_reindexing.asciidoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
[[batch-start-resume-reindex]]
=== Batch start or resume reindex API
++++
<titleabbrev>Batch start or resume reindex</titleabbrev>
++++

Enables starting or resuming multiple reindexing tasks in one request. Additionally, reindexing tasks started or resumed
jloleysens marked this conversation as resolved.
Show resolved Hide resolved
jloleysens marked this conversation as resolved.
Show resolved Hide resolved
via the batch endpoint will be placed on a queue and executed one-by-one which ensures that minimal cluster resources
jloleysens marked this conversation as resolved.
Show resolved Hide resolved
are consumed over time.

experimental["The underlying Upgrade Assistant concepts are stable, but the APIs for managing Upgrade Assistant are experimental."]
jloleysens marked this conversation as resolved.
Show resolved Hide resolved

[[batch-start-resume-reindex-request]]
==== Request

`POST /api/upgrade_assistant/reindex/batch`

[[batch-start-resume-reindex-request-body]]
==== Request body

`indexNames`::
(Required, array) The list of index names to be reindexed.

[[batch-start-resume-reindex-codes]]
==== Response code

`200`::
Indicates a successful call.

[[batch-start-resume-example]]
==== Example

[source,js]
--------------------------------------------------
POST /api/upgrade_assistant/reindex/batch
{
"indexNames": [ <1>
"index1",
"index2"
]
}
--------------------------------------------------
<1> The order in which the indices are provided here determines the order in which the reindex tasks will be executed.

The API returns the following which is similar to the <<start-resume-reindex, start or resume endpoint>>:
jloleysens marked this conversation as resolved.
Show resolved Hide resolved

[source,js]
--------------------------------------------------
{
"enqueued": [ <1>
{
"indexName": "index1",
"newIndexName": "reindexed-v8-index1",
"status": 3,
"lastCompletedStep": 0,
"locked": null,
"reindexTaskId": null,
"reindexTaskPercComplete": null,
"errorMessage": null,
"runningReindexCount": null,
"reindexOptions": { <2>
"queueSettings": {
"queuedAt": 1583406985489 <3>
}
}
}
],
"errors": [ <4>
{
"indexName": "index2",
"message": "Something went wrong!"
}
]
}
--------------------------------------------------

<1> A list of reindex operations created, the order in the array indicates the order in which tasks will be executed.
<2> Presence of this key indicates that the reindex job will occur in the batch.
<3> A Unix timestamp of when the reindex task was placed in the queue.
<4> A list of errors that may have occurred preventing the reindex task from being created.