Deprecate type exists requests. (#34663)
This commit is contained in:
parent
52fc502b7e
commit
fbb9ac34f9
|
@ -1,6 +1,8 @@
|
|||
[[indices-types-exists]]
|
||||
== Types Exists
|
||||
|
||||
deprecated[7.0.0, Types are deprecated and are in the process of being removed. See <<removal-of-types>>.]
|
||||
|
||||
Used to check if a type/types exists in an index/indices.
|
||||
|
||||
[source,js]
|
||||
|
@ -9,6 +11,7 @@ HEAD twitter/_mapping/tweet
|
|||
--------------------------------------------------
|
||||
// CONSOLE
|
||||
// TEST[setup:twitter]
|
||||
// TEST[warning:Type exists requests are deprecated, as types have been deprecated.]
|
||||
|
||||
The HTTP status code indicates if the type exists or not. A `404` means
|
||||
it does not exist, and `200` means it does.
|
||||
|
|
|
@ -1,39 +0,0 @@
|
|||
---
|
||||
"Exists type":
|
||||
- do:
|
||||
indices.create:
|
||||
index: test_1
|
||||
body:
|
||||
mappings:
|
||||
type_1: {}
|
||||
|
||||
- do:
|
||||
indices.exists_type:
|
||||
index: test_2
|
||||
type: type_1
|
||||
|
||||
- is_false: ''
|
||||
|
||||
- do:
|
||||
indices.exists_type:
|
||||
index: test_1
|
||||
type: type_3
|
||||
|
||||
- is_false: ''
|
||||
|
||||
- do:
|
||||
indices.exists_type:
|
||||
index: test_1
|
||||
type: type_1
|
||||
|
||||
- is_true: ''
|
||||
---
|
||||
"Exists type with local flag":
|
||||
|
||||
- do:
|
||||
indices.exists_type:
|
||||
index: test_1
|
||||
type: type_1
|
||||
local: true
|
||||
|
||||
- is_false: ''
|
|
@ -26,6 +26,7 @@ import org.elasticsearch.common.Strings;
|
|||
/**
|
||||
* A builder for {@link TypesExistsRequest}.
|
||||
*/
|
||||
@Deprecated
|
||||
public class TypesExistsRequestBuilder extends MasterNodeReadOperationRequestBuilder<TypesExistsRequest, TypesExistsResponse, TypesExistsRequestBuilder> {
|
||||
|
||||
/**
|
||||
|
|
|
@ -147,24 +147,31 @@ public interface IndicesAdminClient extends ElasticsearchClient {
|
|||
|
||||
|
||||
/**
|
||||
* Types Exists.
|
||||
* Types exists.
|
||||
*
|
||||
* @deprecated Types are deprecated and are in the process of being removed.
|
||||
* @param request The types exists request
|
||||
* @return The result future
|
||||
*/
|
||||
@Deprecated
|
||||
ActionFuture<TypesExistsResponse> typesExists(TypesExistsRequest request);
|
||||
|
||||
/**
|
||||
* Types exists
|
||||
* Types exists.
|
||||
*
|
||||
* @deprecated Types are deprecated and are in the process of being removed.
|
||||
* @param request The types exists
|
||||
* @param listener A listener to be notified with a result
|
||||
*/
|
||||
@Deprecated
|
||||
void typesExists(TypesExistsRequest request, ActionListener<TypesExistsResponse> listener);
|
||||
|
||||
/**
|
||||
* Indices exists.
|
||||
* Types exists.
|
||||
*
|
||||
* @deprecated Types are deprecated and are in the process of being removed.
|
||||
*/
|
||||
@Deprecated
|
||||
TypesExistsRequestBuilder prepareTypesExists(String... index);
|
||||
|
||||
/**
|
||||
|
|
|
@ -1256,6 +1256,7 @@ public abstract class AbstractClient extends AbstractComponent implements Client
|
|||
return new IndicesExistsRequestBuilder(this, IndicesExistsAction.INSTANCE, indices);
|
||||
}
|
||||
|
||||
@Deprecated
|
||||
@Override
|
||||
public ActionFuture<TypesExistsResponse> typesExists(TypesExistsRequest request) {
|
||||
return execute(TypesExistsAction.INSTANCE, request);
|
||||
|
|
|
@ -76,6 +76,10 @@ public class RestGetMappingAction extends BaseRestHandler {
|
|||
|
||||
@Override
|
||||
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
|
||||
if (request.method().equals(HEAD)) {
|
||||
deprecationLogger.deprecated("Type exists requests are deprecated, as types have been deprecated.");
|
||||
}
|
||||
|
||||
final boolean includeTypeName = request.paramAsBoolean("include_type_name", true);
|
||||
final String[] indices = Strings.splitStringByCommaToArray(request.param("index"));
|
||||
final String[] types = request.paramAsStringArrayOrEmptyIfAll("type");
|
||||
|
|
|
@ -0,0 +1,49 @@
|
|||
/*
|
||||
* Licensed to Elasticsearch under one or more contributor
|
||||
* license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright
|
||||
* ownership. Elasticsearch licenses this file to you under
|
||||
* the Apache License, Version 2.0 (the "License"); you may
|
||||
* not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
package org.elasticsearch.rest.action.admin.indices;
|
||||
|
||||
import org.elasticsearch.client.node.NodeClient;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.rest.RestController;
|
||||
import org.elasticsearch.rest.RestRequest;
|
||||
import org.elasticsearch.test.ESTestCase;
|
||||
import org.elasticsearch.test.rest.FakeRestRequest;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import static org.mockito.Mockito.mock;
|
||||
|
||||
public class RestGetMappingActionTests extends ESTestCase {
|
||||
|
||||
public void testTypeExistsDeprecation() throws Exception {
|
||||
Map<String, String> params = new HashMap<>();
|
||||
params.put("type", "_doc");
|
||||
RestRequest request = new FakeRestRequest.Builder(xContentRegistry())
|
||||
.withMethod(RestRequest.Method.HEAD)
|
||||
.withParams(params)
|
||||
.build();
|
||||
|
||||
RestGetMappingAction handler = new RestGetMappingAction(Settings.EMPTY, mock(RestController.class));
|
||||
handler.prepareRequest(request, mock(NodeClient.class));
|
||||
|
||||
assertWarnings("Type exists requests are deprecated, as types have been deprecated.");
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue