Reindex-from-remote: Fail on manual slicing param#137275
Merged
PeteGillinElastic merged 2 commits intoelastic:mainfrom Oct 29, 2025
Merged
Reindex-from-remote: Fail on manual slicing param#137275PeteGillinElastic merged 2 commits intoelastic:mainfrom
PeteGillinElastic merged 2 commits intoelastic:mainfrom
Conversation
When the `_reindex` API is used with a remote source (`source.remote` is set in the request body), neither manual slicing (via `source.slice` in the request body) nor automatic slicing (via the `slices` URL parameter) are supported. Prior to this change, on sending a request with a remote source and manual slicing enabled, the manual slicing specification would be ignored, and the complete source would be reindexed without slicing. After this change, the API will return a response with an HTTP code 400 (Bad Request) instead. The new behaviour more correctly indicates to the user that the requested functionality is not available, rather than silently ignoring part of their request. Note that: - Prior to this change, sending a request with a remote source and *automatic* slicing enabled already resulted in the correct 400 response. - The [docs](https://www.elastic.co/docs/reference/elasticsearch/rest-apis/reindex-indices#docs-reindex-slice) already correctly stated "Reindexing from remote clusters does not support manual or automatic slicing." - As a drive-by, this change also adds a unit test for the validation with the `slices` parameter set to `auto`. (Previously, only the case where it was set to a number greater than 1 was tested.) Closes elastic#136269
Collaborator
|
Pinging @elastic/es-data-management (Team:Data Management) |
Collaborator
|
Hi @PeteGillinElastic, I've created a changelog YAML for you. |
samxbr
approved these changes
Oct 28, 2025
This was referenced Oct 29, 2025
PeteGillinElastic
added a commit
to PeteGillinElastic/elasticsearch
that referenced
this pull request
Oct 29, 2025
When the `_reindex` API is used with a remote source (`source.remote` is set in the request body), neither manual slicing (via `source.slice` in the request body) nor automatic slicing (via the `slices` URL parameter) are supported. Prior to this change, on sending a request with a remote source and manual slicing enabled, the manual slicing specification would be ignored, and the complete source would be reindexed without slicing. After this change, the API will return a response with an HTTP code 400 (Bad Request) instead. The new behaviour more correctly indicates to the user that the requested functionality is not available, rather than silently ignoring part of their request. Note that: - Prior to this change, sending a request with a remote source and *automatic* slicing enabled already resulted in the correct 400 response. - The [docs](https://www.elastic.co/docs/reference/elasticsearch/rest-apis/reindex-indices#docs-reindex-slice) already correctly stated "Reindexing from remote clusters does not support manual or automatic slicing." - As a drive-by, this change also adds a unit test for the validation with the `slices` parameter set to `auto`. (Previously, only the case where it was set to a number greater than 1 was tested.) Closes elastic#136269
Collaborator
PeteGillinElastic
added a commit
to PeteGillinElastic/elasticsearch
that referenced
this pull request
Oct 29, 2025
When the `_reindex` API is used with a remote source (`source.remote` is set in the request body), neither manual slicing (via `source.slice` in the request body) nor automatic slicing (via the `slices` URL parameter) are supported. Prior to this change, on sending a request with a remote source and manual slicing enabled, the manual slicing specification would be ignored, and the complete source would be reindexed without slicing. After this change, the API will return a response with an HTTP code 400 (Bad Request) instead. The new behaviour more correctly indicates to the user that the requested functionality is not available, rather than silently ignoring part of their request. Note that: - Prior to this change, sending a request with a remote source and *automatic* slicing enabled already resulted in the correct 400 response. - The [docs](https://www.elastic.co/docs/reference/elasticsearch/rest-apis/reindex-indices#docs-reindex-slice) already correctly stated "Reindexing from remote clusters does not support manual or automatic slicing." - As a drive-by, this change also adds a unit test for the validation with the `slices` parameter set to `auto`. (Previously, only the case where it was set to a number greater than 1 was tested.) Closes elastic#136269
elasticsearchmachine
pushed a commit
that referenced
this pull request
Oct 29, 2025
When the `_reindex` API is used with a remote source (`source.remote` is set in the request body), neither manual slicing (via `source.slice` in the request body) nor automatic slicing (via the `slices` URL parameter) are supported. Prior to this change, on sending a request with a remote source and manual slicing enabled, the manual slicing specification would be ignored, and the complete source would be reindexed without slicing. After this change, the API will return a response with an HTTP code 400 (Bad Request) instead. The new behaviour more correctly indicates to the user that the requested functionality is not available, rather than silently ignoring part of their request. Note that: - Prior to this change, sending a request with a remote source and *automatic* slicing enabled already resulted in the correct 400 response. - The [docs](https://www.elastic.co/docs/reference/elasticsearch/rest-apis/reindex-indices#docs-reindex-slice) already correctly stated "Reindexing from remote clusters does not support manual or automatic slicing." - As a drive-by, this change also adds a unit test for the validation with the `slices` parameter set to `auto`. (Previously, only the case where it was set to a number greater than 1 was tested.) Closes #136269
elasticsearchmachine
pushed a commit
that referenced
this pull request
Oct 29, 2025
When the `_reindex` API is used with a remote source (`source.remote` is set in the request body), neither manual slicing (via `source.slice` in the request body) nor automatic slicing (via the `slices` URL parameter) are supported. Prior to this change, on sending a request with a remote source and manual slicing enabled, the manual slicing specification would be ignored, and the complete source would be reindexed without slicing. After this change, the API will return a response with an HTTP code 400 (Bad Request) instead. The new behaviour more correctly indicates to the user that the requested functionality is not available, rather than silently ignoring part of their request. Note that: - Prior to this change, sending a request with a remote source and *automatic* slicing enabled already resulted in the correct 400 response. - The [docs](https://www.elastic.co/docs/reference/elasticsearch/rest-apis/reindex-indices#docs-reindex-slice) already correctly stated "Reindexing from remote clusters does not support manual or automatic slicing." - As a drive-by, this change also adds a unit test for the validation with the `slices` parameter set to `auto`. (Previously, only the case where it was set to a number greater than 1 was tested.) Closes #136269
elasticsearchmachine
pushed a commit
that referenced
this pull request
Oct 29, 2025
When the `_reindex` API is used with a remote source (`source.remote` is set in the request body), neither manual slicing (via `source.slice` in the request body) nor automatic slicing (via the `slices` URL parameter) are supported. Prior to this change, on sending a request with a remote source and manual slicing enabled, the manual slicing specification would be ignored, and the complete source would be reindexed without slicing. After this change, the API will return a response with an HTTP code 400 (Bad Request) instead. The new behaviour more correctly indicates to the user that the requested functionality is not available, rather than silently ignoring part of their request. Note that: - Prior to this change, sending a request with a remote source and *automatic* slicing enabled already resulted in the correct 400 response. - The [docs](https://www.elastic.co/docs/reference/elasticsearch/rest-apis/reindex-indices#docs-reindex-slice) already correctly stated "Reindexing from remote clusters does not support manual or automatic slicing." - As a drive-by, this change also adds a unit test for the validation with the `slices` parameter set to `auto`. (Previously, only the case where it was set to a number greater than 1 was tested.) Closes #136269
chrisparrinello
pushed a commit
to chrisparrinello/elasticsearch
that referenced
this pull request
Nov 3, 2025
When the `_reindex` API is used with a remote source (`source.remote` is set in the request body), neither manual slicing (via `source.slice` in the request body) nor automatic slicing (via the `slices` URL parameter) are supported. Prior to this change, on sending a request with a remote source and manual slicing enabled, the manual slicing specification would be ignored, and the complete source would be reindexed without slicing. After this change, the API will return a response with an HTTP code 400 (Bad Request) instead. The new behaviour more correctly indicates to the user that the requested functionality is not available, rather than silently ignoring part of their request. Note that: - Prior to this change, sending a request with a remote source and *automatic* slicing enabled already resulted in the correct 400 response. - The [docs](https://www.elastic.co/docs/reference/elasticsearch/rest-apis/reindex-indices#docs-reindex-slice) already correctly stated "Reindexing from remote clusters does not support manual or automatic slicing." - As a drive-by, this change also adds a unit test for the validation with the `slices` parameter set to `auto`. (Previously, only the case where it was set to a number greater than 1 was tested.) Closes elastic#136269
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
When the
_reindexAPI is used with a remote source (source.remoteis set in the request body), neither manual slicing (viasource.slicein the request body) nor automatic slicing (via theslicesURL parameter) are supported.Prior to this change, on sending a request with a remote source and manual slicing enabled, the manual slicing specification would be ignored, and the complete source would be reindexed without slicing. After this change, the API will return a response with an HTTP code 400 (Bad Request) instead.
The new behaviour more correctly indicates to the user that the requested functionality is not available, rather than silently ignoring part of their request.
Note that:
Prior to this change, sending a request with a remote source and automatic slicing enabled already resulted in the correct 400 response.
The docs already correctly stated "Reindexing from remote clusters does not support manual or automatic slicing."
As a drive-by, this change also adds a unit test for the validation with the
slicesparameter set toauto. (Previously, only the case where it was set to a number greater than 1 was tested.)Closes #136269
gradle check?