Add request parameter 'cluster_manager_timeout' and deprecate 'master_timeout' - in Snapshot APIs (#2680)
* Deprecate the request parameter `master_timeout` that used in Snapshot APIs which have got the parameter. * Add alternative new request parameter `cluster_manager_timeout`. * Add unit tests. Signed-off-by: Tianli Feng <ftianli@amazon.com>
This commit is contained in:
parent
ba3ed8a9cb
commit
a89b7e6216
|
@ -29,6 +29,9 @@ setup:
|
|||
---
|
||||
"Snapshot/Restore with repository-azure":
|
||||
|
||||
- skip:
|
||||
features: allowed_warnings
|
||||
|
||||
# Get repository
|
||||
- do:
|
||||
snapshot.get_repository:
|
||||
|
@ -169,12 +172,16 @@ setup:
|
|||
|
||||
# Remove the snapshots
|
||||
- do:
|
||||
allowed_warnings:
|
||||
- "Parameter [master_timeout] is deprecated and will be removed in 3.0. To support inclusive language, please use [cluster_manager_timeout] instead."
|
||||
snapshot.delete:
|
||||
repository: repository
|
||||
snapshot: snapshot-two
|
||||
master_timeout: 5m
|
||||
|
||||
- do:
|
||||
allowed_warnings:
|
||||
- "Parameter [master_timeout] is deprecated and will be removed in 3.0. To support inclusive language, please use [cluster_manager_timeout] instead."
|
||||
snapshot.delete:
|
||||
repository: repository
|
||||
snapshot: snapshot-one
|
||||
|
|
|
@ -24,7 +24,15 @@
|
|||
"params": {
|
||||
"master_timeout": {
|
||||
"type" : "time",
|
||||
"description" : "Explicit operation timeout for connection to master node"
|
||||
"description" : "Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
},
|
||||
"timeout": {
|
||||
"type" : "time",
|
||||
|
|
|
@ -32,7 +32,15 @@
|
|||
"params":{
|
||||
"master_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to master node"
|
||||
"description":"Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
}
|
||||
},
|
||||
"body":{
|
||||
|
|
|
@ -29,7 +29,15 @@
|
|||
"params":{
|
||||
"master_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to master node"
|
||||
"description":"Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
},
|
||||
"wait_for_completion":{
|
||||
"type":"boolean",
|
||||
|
|
|
@ -25,7 +25,15 @@
|
|||
"params":{
|
||||
"master_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to master node"
|
||||
"description":"Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
},
|
||||
"timeout":{
|
||||
"type":"time",
|
||||
|
|
|
@ -28,7 +28,15 @@
|
|||
"params":{
|
||||
"master_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to master node"
|
||||
"description":"Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,7 +24,15 @@
|
|||
"params":{
|
||||
"master_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to master node"
|
||||
"description":"Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
},
|
||||
"timeout":{
|
||||
"type":"time",
|
||||
|
|
|
@ -28,7 +28,15 @@
|
|||
"params":{
|
||||
"master_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to master node"
|
||||
"description":"Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
},
|
||||
"ignore_unavailable":{
|
||||
"type":"boolean",
|
||||
|
|
|
@ -30,7 +30,15 @@
|
|||
"params":{
|
||||
"master_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to master node"
|
||||
"description":"Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
},
|
||||
"local":{
|
||||
"type":"boolean",
|
||||
|
|
|
@ -28,7 +28,15 @@
|
|||
"params":{
|
||||
"master_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to master node"
|
||||
"description":"Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
},
|
||||
"wait_for_completion":{
|
||||
"type":"boolean",
|
||||
|
|
|
@ -46,7 +46,15 @@
|
|||
"params":{
|
||||
"master_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to master node"
|
||||
"description":"Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
},
|
||||
"ignore_unavailable":{
|
||||
"type":"boolean",
|
||||
|
|
|
@ -24,7 +24,15 @@
|
|||
"params":{
|
||||
"master_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to master node"
|
||||
"description":"Explicit operation timeout for connection to master node",
|
||||
"deprecated":{
|
||||
"version":"2.0.0",
|
||||
"description":"To support inclusive language, use 'cluster_manager_timeout' instead."
|
||||
}
|
||||
},
|
||||
"cluster_manager_timeout":{
|
||||
"type":"time",
|
||||
"description":"Explicit operation timeout for connection to cluster-manager node"
|
||||
},
|
||||
"timeout":{
|
||||
"type":"time",
|
||||
|
|
|
@ -34,6 +34,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
|
||||
import org.opensearch.action.admin.cluster.repositories.cleanup.CleanupRepositoryRequest;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
import org.opensearch.rest.RestRequest;
|
||||
import org.opensearch.rest.action.RestToXContentListener;
|
||||
|
@ -50,6 +51,8 @@ import static org.opensearch.rest.RestRequest.Method.POST;
|
|||
*/
|
||||
public class RestCleanupRepositoryAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestCleanupRepositoryAction.class);
|
||||
|
||||
@Override
|
||||
public List<Route> routes() {
|
||||
return singletonList(new Route(POST, "/_snapshot/{repository}/_cleanup"));
|
||||
|
@ -64,7 +67,10 @@ public class RestCleanupRepositoryAction extends BaseRestHandler {
|
|||
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
|
||||
CleanupRepositoryRequest cleanupRepositoryRequest = cleanupRepositoryRequest(request.param("repository"));
|
||||
cleanupRepositoryRequest.timeout(request.paramAsTime("timeout", cleanupRepositoryRequest.timeout()));
|
||||
cleanupRepositoryRequest.masterNodeTimeout(request.paramAsTime("master_timeout", cleanupRepositoryRequest.masterNodeTimeout()));
|
||||
cleanupRepositoryRequest.masterNodeTimeout(
|
||||
request.paramAsTime("cluster_manager_timeout", cleanupRepositoryRequest.masterNodeTimeout())
|
||||
);
|
||||
parseDeprecatedMasterTimeoutParameter(cleanupRepositoryRequest, request, deprecationLogger, getName());
|
||||
return channel -> client.admin().cluster().cleanupRepository(cleanupRepositoryRequest, new RestToXContentListener<>(channel));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,6 +35,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
import org.opensearch.action.admin.cluster.snapshots.clone.CloneSnapshotRequest;
|
||||
import org.opensearch.action.support.IndicesOptions;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.common.xcontent.support.XContentMapValues;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
import org.opensearch.rest.RestRequest;
|
||||
|
@ -52,6 +53,8 @@ import static org.opensearch.rest.RestRequest.Method.PUT;
|
|||
*/
|
||||
public class RestCloneSnapshotAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestCloneSnapshotAction.class);
|
||||
|
||||
@Override
|
||||
public List<Route> routes() {
|
||||
return Collections.singletonList(new Route(PUT, "/_snapshot/{repository}/{snapshot}/_clone/{target_snapshot}"));
|
||||
|
@ -71,7 +74,8 @@ public class RestCloneSnapshotAction extends BaseRestHandler {
|
|||
request.param("target_snapshot"),
|
||||
XContentMapValues.nodeStringArrayValue(source.getOrDefault("indices", Collections.emptyList()))
|
||||
);
|
||||
cloneSnapshotRequest.masterNodeTimeout(request.paramAsTime("master_timeout", cloneSnapshotRequest.masterNodeTimeout()));
|
||||
cloneSnapshotRequest.masterNodeTimeout(request.paramAsTime("cluster_manager_timeout", cloneSnapshotRequest.masterNodeTimeout()));
|
||||
parseDeprecatedMasterTimeoutParameter(cloneSnapshotRequest, request, deprecationLogger, getName());
|
||||
cloneSnapshotRequest.indicesOptions(IndicesOptions.fromMap(source, cloneSnapshotRequest.indicesOptions()));
|
||||
return channel -> client.admin().cluster().cloneSnapshot(cloneSnapshotRequest, new RestToXContentListener<>(channel));
|
||||
}
|
||||
|
|
|
@ -34,6 +34,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
|
||||
import org.opensearch.action.admin.cluster.snapshots.create.CreateSnapshotRequest;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
import org.opensearch.rest.RestRequest;
|
||||
import org.opensearch.rest.action.RestToXContentListener;
|
||||
|
@ -52,6 +53,8 @@ import static org.opensearch.rest.RestRequest.Method.PUT;
|
|||
*/
|
||||
public class RestCreateSnapshotAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestCreateSnapshotAction.class);
|
||||
|
||||
@Override
|
||||
public List<Route> routes() {
|
||||
return unmodifiableList(
|
||||
|
@ -68,7 +71,8 @@ public class RestCreateSnapshotAction extends BaseRestHandler {
|
|||
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
|
||||
CreateSnapshotRequest createSnapshotRequest = createSnapshotRequest(request.param("repository"), request.param("snapshot"));
|
||||
request.applyContentParser(p -> createSnapshotRequest.source(p.mapOrdered()));
|
||||
createSnapshotRequest.masterNodeTimeout(request.paramAsTime("master_timeout", createSnapshotRequest.masterNodeTimeout()));
|
||||
createSnapshotRequest.masterNodeTimeout(request.paramAsTime("cluster_manager_timeout", createSnapshotRequest.masterNodeTimeout()));
|
||||
parseDeprecatedMasterTimeoutParameter(createSnapshotRequest, request, deprecationLogger, getName());
|
||||
createSnapshotRequest.waitForCompletion(request.paramAsBoolean("wait_for_completion", false));
|
||||
return channel -> client.admin().cluster().createSnapshot(createSnapshotRequest, new RestToXContentListener<>(channel));
|
||||
}
|
||||
|
|
|
@ -34,6 +34,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
|
||||
import org.opensearch.action.admin.cluster.repositories.delete.DeleteRepositoryRequest;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
import org.opensearch.rest.RestRequest;
|
||||
import org.opensearch.rest.action.RestToXContentListener;
|
||||
|
@ -50,6 +51,8 @@ import static org.opensearch.rest.RestRequest.Method.DELETE;
|
|||
*/
|
||||
public class RestDeleteRepositoryAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestDeleteRepositoryAction.class);
|
||||
|
||||
@Override
|
||||
public List<Route> routes() {
|
||||
return singletonList(new Route(DELETE, "/_snapshot/{repository}"));
|
||||
|
@ -64,7 +67,10 @@ public class RestDeleteRepositoryAction extends BaseRestHandler {
|
|||
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
|
||||
DeleteRepositoryRequest deleteRepositoryRequest = deleteRepositoryRequest(request.param("repository"));
|
||||
deleteRepositoryRequest.timeout(request.paramAsTime("timeout", deleteRepositoryRequest.timeout()));
|
||||
deleteRepositoryRequest.masterNodeTimeout(request.paramAsTime("master_timeout", deleteRepositoryRequest.masterNodeTimeout()));
|
||||
deleteRepositoryRequest.masterNodeTimeout(
|
||||
request.paramAsTime("cluster_manager_timeout", deleteRepositoryRequest.masterNodeTimeout())
|
||||
);
|
||||
parseDeprecatedMasterTimeoutParameter(deleteRepositoryRequest, request, deprecationLogger, getName());
|
||||
return channel -> client.admin().cluster().deleteRepository(deleteRepositoryRequest, new RestToXContentListener<>(channel));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,6 +35,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
import org.opensearch.action.admin.cluster.snapshots.delete.DeleteSnapshotRequest;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.Strings;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
import org.opensearch.rest.RestRequest;
|
||||
import org.opensearch.rest.action.RestToXContentListener;
|
||||
|
@ -51,6 +52,8 @@ import static org.opensearch.rest.RestRequest.Method.DELETE;
|
|||
*/
|
||||
public class RestDeleteSnapshotAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestDeleteSnapshotAction.class);
|
||||
|
||||
@Override
|
||||
public List<Route> routes() {
|
||||
return singletonList(new Route(DELETE, "/_snapshot/{repository}/{snapshot}"));
|
||||
|
@ -67,7 +70,8 @@ public class RestDeleteSnapshotAction extends BaseRestHandler {
|
|||
request.param("repository"),
|
||||
Strings.splitStringByCommaToArray(request.param("snapshot"))
|
||||
);
|
||||
deleteSnapshotRequest.masterNodeTimeout(request.paramAsTime("master_timeout", deleteSnapshotRequest.masterNodeTimeout()));
|
||||
deleteSnapshotRequest.masterNodeTimeout(request.paramAsTime("cluster_manager_timeout", deleteSnapshotRequest.masterNodeTimeout()));
|
||||
parseDeprecatedMasterTimeoutParameter(deleteSnapshotRequest, request, deprecationLogger, getName());
|
||||
return channel -> client.admin().cluster().deleteSnapshot(deleteSnapshotRequest, new RestToXContentListener<>(channel));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,6 +35,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
import org.opensearch.action.admin.cluster.repositories.get.GetRepositoriesRequest;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.Strings;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.common.settings.Settings;
|
||||
import org.opensearch.common.settings.SettingsFilter;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
|
@ -55,6 +56,8 @@ import static org.opensearch.rest.RestRequest.Method.GET;
|
|||
*/
|
||||
public class RestGetRepositoriesAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestGetRepositoriesAction.class);
|
||||
|
||||
private final SettingsFilter settingsFilter;
|
||||
|
||||
public RestGetRepositoriesAction(SettingsFilter settingsFilter) {
|
||||
|
@ -75,7 +78,10 @@ public class RestGetRepositoriesAction extends BaseRestHandler {
|
|||
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
|
||||
final String[] repositories = request.paramAsStringArray("repository", Strings.EMPTY_ARRAY);
|
||||
GetRepositoriesRequest getRepositoriesRequest = getRepositoryRequest(repositories);
|
||||
getRepositoriesRequest.masterNodeTimeout(request.paramAsTime("master_timeout", getRepositoriesRequest.masterNodeTimeout()));
|
||||
getRepositoriesRequest.masterNodeTimeout(
|
||||
request.paramAsTime("cluster_manager_timeout", getRepositoriesRequest.masterNodeTimeout())
|
||||
);
|
||||
parseDeprecatedMasterTimeoutParameter(getRepositoriesRequest, request, deprecationLogger, getName());
|
||||
getRepositoriesRequest.local(request.paramAsBoolean("local", getRepositoriesRequest.local()));
|
||||
settingsFilter.addFilterSettingParams(request);
|
||||
return channel -> client.admin().cluster().getRepositories(getRepositoriesRequest, new RestToXContentListener<>(channel));
|
||||
|
|
|
@ -35,6 +35,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
import org.opensearch.action.admin.cluster.snapshots.get.GetSnapshotsRequest;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.Strings;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
import org.opensearch.rest.RestRequest;
|
||||
import org.opensearch.rest.action.RestToXContentListener;
|
||||
|
@ -51,6 +52,8 @@ import static org.opensearch.rest.RestRequest.Method.GET;
|
|||
*/
|
||||
public class RestGetSnapshotsAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestGetSnapshotsAction.class);
|
||||
|
||||
@Override
|
||||
public List<Route> routes() {
|
||||
return singletonList(new Route(GET, "/_snapshot/{repository}/{snapshot}"));
|
||||
|
@ -69,7 +72,8 @@ public class RestGetSnapshotsAction extends BaseRestHandler {
|
|||
GetSnapshotsRequest getSnapshotsRequest = getSnapshotsRequest(repository).snapshots(snapshots);
|
||||
getSnapshotsRequest.ignoreUnavailable(request.paramAsBoolean("ignore_unavailable", getSnapshotsRequest.ignoreUnavailable()));
|
||||
getSnapshotsRequest.verbose(request.paramAsBoolean("verbose", getSnapshotsRequest.verbose()));
|
||||
getSnapshotsRequest.masterNodeTimeout(request.paramAsTime("master_timeout", getSnapshotsRequest.masterNodeTimeout()));
|
||||
getSnapshotsRequest.masterNodeTimeout(request.paramAsTime("cluster_manager_timeout", getSnapshotsRequest.masterNodeTimeout()));
|
||||
parseDeprecatedMasterTimeoutParameter(getSnapshotsRequest, request, deprecationLogger, getName());
|
||||
return channel -> client.admin().cluster().getSnapshots(getSnapshotsRequest, new RestToXContentListener<>(channel));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,6 +34,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
|
||||
import org.opensearch.action.admin.cluster.repositories.put.PutRepositoryRequest;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.common.xcontent.XContentParser;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
import org.opensearch.rest.RestRequest;
|
||||
|
@ -53,6 +54,8 @@ import static org.opensearch.rest.RestRequest.Method.PUT;
|
|||
*/
|
||||
public class RestPutRepositoryAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestPutRepositoryAction.class);
|
||||
|
||||
@Override
|
||||
public List<Route> routes() {
|
||||
return unmodifiableList(asList(new Route(POST, "/_snapshot/{repository}"), new Route(PUT, "/_snapshot/{repository}")));
|
||||
|
@ -70,7 +73,8 @@ public class RestPutRepositoryAction extends BaseRestHandler {
|
|||
putRepositoryRequest.source(parser.mapOrdered());
|
||||
}
|
||||
putRepositoryRequest.verify(request.paramAsBoolean("verify", true));
|
||||
putRepositoryRequest.masterNodeTimeout(request.paramAsTime("master_timeout", putRepositoryRequest.masterNodeTimeout()));
|
||||
putRepositoryRequest.masterNodeTimeout(request.paramAsTime("cluster_manager_timeout", putRepositoryRequest.masterNodeTimeout()));
|
||||
parseDeprecatedMasterTimeoutParameter(putRepositoryRequest, request, deprecationLogger, getName());
|
||||
putRepositoryRequest.timeout(request.paramAsTime("timeout", putRepositoryRequest.timeout()));
|
||||
return channel -> client.admin().cluster().putRepository(putRepositoryRequest, new RestToXContentListener<>(channel));
|
||||
}
|
||||
|
|
|
@ -34,6 +34,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
|
||||
import org.opensearch.action.admin.cluster.snapshots.restore.RestoreSnapshotRequest;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
import org.opensearch.rest.RestRequest;
|
||||
import org.opensearch.rest.action.RestToXContentListener;
|
||||
|
@ -50,6 +51,8 @@ import static org.opensearch.rest.RestRequest.Method.POST;
|
|||
*/
|
||||
public class RestRestoreSnapshotAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestRestoreSnapshotAction.class);
|
||||
|
||||
@Override
|
||||
public List<Route> routes() {
|
||||
return singletonList(new Route(POST, "/_snapshot/{repository}/{snapshot}/_restore"));
|
||||
|
@ -63,7 +66,10 @@ public class RestRestoreSnapshotAction extends BaseRestHandler {
|
|||
@Override
|
||||
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
|
||||
RestoreSnapshotRequest restoreSnapshotRequest = restoreSnapshotRequest(request.param("repository"), request.param("snapshot"));
|
||||
restoreSnapshotRequest.masterNodeTimeout(request.paramAsTime("master_timeout", restoreSnapshotRequest.masterNodeTimeout()));
|
||||
restoreSnapshotRequest.masterNodeTimeout(
|
||||
request.paramAsTime("cluster_manager_timeout", restoreSnapshotRequest.masterNodeTimeout())
|
||||
);
|
||||
parseDeprecatedMasterTimeoutParameter(restoreSnapshotRequest, request, deprecationLogger, getName());
|
||||
restoreSnapshotRequest.waitForCompletion(request.paramAsBoolean("wait_for_completion", false));
|
||||
request.applyContentParser(p -> restoreSnapshotRequest.source(p.mapOrdered()));
|
||||
return channel -> client.admin().cluster().restoreSnapshot(restoreSnapshotRequest, new RestToXContentListener<>(channel));
|
||||
|
|
|
@ -35,6 +35,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
import org.opensearch.action.admin.cluster.snapshots.status.SnapshotsStatusRequest;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.Strings;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
import org.opensearch.rest.RestRequest;
|
||||
import org.opensearch.rest.action.RestToXContentListener;
|
||||
|
@ -52,6 +53,8 @@ import static org.opensearch.rest.RestRequest.Method.GET;
|
|||
*/
|
||||
public class RestSnapshotsStatusAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestSnapshotsStatusAction.class);
|
||||
|
||||
@Override
|
||||
public List<Route> routes() {
|
||||
return unmodifiableList(
|
||||
|
@ -78,7 +81,10 @@ public class RestSnapshotsStatusAction extends BaseRestHandler {
|
|||
SnapshotsStatusRequest snapshotsStatusRequest = snapshotsStatusRequest(repository).snapshots(snapshots);
|
||||
snapshotsStatusRequest.ignoreUnavailable(request.paramAsBoolean("ignore_unavailable", snapshotsStatusRequest.ignoreUnavailable()));
|
||||
|
||||
snapshotsStatusRequest.masterNodeTimeout(request.paramAsTime("master_timeout", snapshotsStatusRequest.masterNodeTimeout()));
|
||||
snapshotsStatusRequest.masterNodeTimeout(
|
||||
request.paramAsTime("cluster_manager_timeout", snapshotsStatusRequest.masterNodeTimeout())
|
||||
);
|
||||
parseDeprecatedMasterTimeoutParameter(snapshotsStatusRequest, request, deprecationLogger, getName());
|
||||
return channel -> client.admin().cluster().snapshotsStatus(snapshotsStatusRequest, new RestToXContentListener<>(channel));
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,6 +34,7 @@ package org.opensearch.rest.action.admin.cluster;
|
|||
|
||||
import org.opensearch.action.admin.cluster.repositories.verify.VerifyRepositoryRequest;
|
||||
import org.opensearch.client.node.NodeClient;
|
||||
import org.opensearch.common.logging.DeprecationLogger;
|
||||
import org.opensearch.rest.BaseRestHandler;
|
||||
import org.opensearch.rest.RestRequest;
|
||||
import org.opensearch.rest.action.RestToXContentListener;
|
||||
|
@ -47,6 +48,8 @@ import static org.opensearch.rest.RestRequest.Method.POST;
|
|||
|
||||
public class RestVerifyRepositoryAction extends BaseRestHandler {
|
||||
|
||||
private static final DeprecationLogger deprecationLogger = DeprecationLogger.getLogger(RestVerifyRepositoryAction.class);
|
||||
|
||||
@Override
|
||||
public List<Route> routes() {
|
||||
return singletonList(new Route(POST, "/_snapshot/{repository}/_verify"));
|
||||
|
@ -60,7 +63,10 @@ public class RestVerifyRepositoryAction extends BaseRestHandler {
|
|||
@Override
|
||||
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
|
||||
VerifyRepositoryRequest verifyRepositoryRequest = verifyRepositoryRequest(request.param("repository"));
|
||||
verifyRepositoryRequest.masterNodeTimeout(request.paramAsTime("master_timeout", verifyRepositoryRequest.masterNodeTimeout()));
|
||||
verifyRepositoryRequest.masterNodeTimeout(
|
||||
request.paramAsTime("cluster_manager_timeout", verifyRepositoryRequest.masterNodeTimeout())
|
||||
);
|
||||
parseDeprecatedMasterTimeoutParameter(verifyRepositoryRequest, request, deprecationLogger, getName());
|
||||
verifyRepositoryRequest.timeout(request.paramAsTime("timeout", verifyRepositoryRequest.timeout()));
|
||||
return channel -> client.admin().cluster().verifyRepository(verifyRepositoryRequest, new RestToXContentListener<>(channel));
|
||||
}
|
||||
|
|
|
@ -52,6 +52,17 @@ import org.opensearch.rest.action.admin.indices.RestPutComposableIndexTemplateAc
|
|||
import org.opensearch.rest.action.admin.indices.RestPutIndexTemplateAction;
|
||||
import org.opensearch.rest.action.admin.indices.RestSimulateIndexTemplateAction;
|
||||
import org.opensearch.rest.action.admin.indices.RestSimulateTemplateAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestCleanupRepositoryAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestCloneSnapshotAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestCreateSnapshotAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestDeleteRepositoryAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestDeleteSnapshotAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestGetRepositoriesAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestGetSnapshotsAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestPutRepositoryAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestRestoreSnapshotAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestSnapshotsStatusAction;
|
||||
import org.opensearch.rest.action.admin.cluster.RestVerifyRepositoryAction;
|
||||
import org.opensearch.rest.action.cat.RestAllocationAction;
|
||||
import org.opensearch.rest.action.cat.RestRepositoriesAction;
|
||||
import org.opensearch.rest.action.cat.RestThreadPoolAction;
|
||||
|
@ -517,6 +528,90 @@ public class RenamedTimeoutRequestParameterTests extends OpenSearchTestCase {
|
|||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testCleanupRepository() {
|
||||
RestCleanupRepositoryAction action = new RestCleanupRepositoryAction();
|
||||
Exception e = assertThrows(OpenSearchParseException.class, () -> action.prepareRequest(getRestRequestWithBothParams(), client));
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testCloneSnapshot() {
|
||||
RestCloneSnapshotAction action = new RestCloneSnapshotAction();
|
||||
Exception e = assertThrows(
|
||||
OpenSearchParseException.class,
|
||||
() -> action.prepareRequest(getRestRequestWithBodyWithBothParams(), client)
|
||||
);
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testCreateSnapshot() {
|
||||
RestCreateSnapshotAction action = new RestCreateSnapshotAction();
|
||||
Exception e = assertThrows(OpenSearchParseException.class, () -> action.prepareRequest(getRestRequestWithBothParams(), client));
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testDeleteRepository() {
|
||||
RestDeleteRepositoryAction action = new RestDeleteRepositoryAction();
|
||||
Exception e = assertThrows(OpenSearchParseException.class, () -> action.prepareRequest(getRestRequestWithBothParams(), client));
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testDeleteSnapshot() {
|
||||
RestDeleteSnapshotAction action = new RestDeleteSnapshotAction();
|
||||
Exception e = assertThrows(OpenSearchParseException.class, () -> action.prepareRequest(getRestRequestWithBothParams(), client));
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testGetRepositories() {
|
||||
final SettingsFilter filter = new SettingsFilter(Collections.singleton("foo.filtered"));
|
||||
RestGetRepositoriesAction action = new RestGetRepositoriesAction(filter);
|
||||
Exception e = assertThrows(OpenSearchParseException.class, () -> action.prepareRequest(getRestRequestWithBothParams(), client));
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testGetSnapshots() {
|
||||
RestGetSnapshotsAction action = new RestGetSnapshotsAction();
|
||||
Exception e = assertThrows(OpenSearchParseException.class, () -> action.prepareRequest(getRestRequestWithBothParams(), client));
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testPutRepository() {
|
||||
RestPutRepositoryAction action = new RestPutRepositoryAction();
|
||||
Exception e = assertThrows(
|
||||
OpenSearchParseException.class,
|
||||
() -> action.prepareRequest(getRestRequestWithBodyWithBothParams(), client)
|
||||
);
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testRestoreSnapshot() {
|
||||
RestRestoreSnapshotAction action = new RestRestoreSnapshotAction();
|
||||
Exception e = assertThrows(OpenSearchParseException.class, () -> action.prepareRequest(getRestRequestWithBothParams(), client));
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testSnapshotsStatus() {
|
||||
RestSnapshotsStatusAction action = new RestSnapshotsStatusAction();
|
||||
Exception e = assertThrows(OpenSearchParseException.class, () -> action.prepareRequest(getRestRequestWithBothParams(), client));
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
public void testVerifyRepository() {
|
||||
RestVerifyRepositoryAction action = new RestVerifyRepositoryAction();
|
||||
Exception e = assertThrows(OpenSearchParseException.class, () -> action.prepareRequest(getRestRequestWithBothParams(), client));
|
||||
assertThat(e.getMessage(), containsString(DUPLICATE_PARAMETER_ERROR_MESSAGE));
|
||||
assertWarnings(MASTER_TIMEOUT_DEPRECATED_MESSAGE);
|
||||
}
|
||||
|
||||
private MasterNodeRequest getMasterNodeRequest() {
|
||||
return new MasterNodeRequest() {
|
||||
@Override
|
||||
|
|
Loading…
Reference in New Issue