Remove prefer_v2_templates query string parameter (#56545)

This commit removes the `prefer_v2_templates` flag and setting. This was a brief setting that
allowed specifying whether V1 or V2 template should be used when an index is created. It has been
removed in favor of V2 templates always having priority.

Relates to #53101
Resolves #56528

This is not a breaking change because this flag was never in a released version.
This commit is contained in:
Lee Hinman 2020-05-11 14:56:42 -06:00 committed by GitHub
parent 659edb92ff
commit 1337b35572
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
37 changed files with 32 additions and 526 deletions

View File

@ -117,9 +117,6 @@ final class IndicesRequestConverters {
parameters.withTimeout(createIndexRequest.timeout());
parameters.withMasterTimeout(createIndexRequest.masterNodeTimeout());
parameters.withWaitForActiveShards(createIndexRequest.waitForActiveShards());
if (createIndexRequest.preferV2Templates() != null) {
parameters.putParam(IndexMetadata.PREFER_V2_TEMPLATES_FLAG, Boolean.toString(createIndexRequest.preferV2Templates()));
}
request.addParameters(parameters.asMap());
request.setEntity(RequestConverters.createEntity(createIndexRequest, RequestConverters.REQUEST_BODY_CONTENT_TYPE));
return request;

View File

@ -56,7 +56,6 @@ import org.elasticsearch.client.indices.AnalyzeRequest;
import org.elasticsearch.client.security.RefreshPolicy;
import org.elasticsearch.client.tasks.TaskId;
import org.elasticsearch.cluster.health.ClusterHealthStatus;
import org.elasticsearch.cluster.metadata.IndexMetadata;
import org.elasticsearch.common.Nullable;
import org.elasticsearch.common.Priority;
import org.elasticsearch.common.Strings;
@ -134,9 +133,6 @@ final class RequestConverters {
parameters.withRefreshPolicy(bulkRequest.getRefreshPolicy());
parameters.withPipeline(bulkRequest.pipeline());
parameters.withRouting(bulkRequest.routing());
if (bulkRequest.preferV2Templates() != null) {
parameters.putParam(IndexMetadata.PREFER_V2_TEMPLATES_FLAG, Boolean.toString(bulkRequest.preferV2Templates()));
}
// Bulk API only supports newline delimited JSON or Smile. Before executing
// the bulk, we need to check that all requests have the same content-type
// and this content-type is supported by the Bulk API.
@ -350,9 +346,6 @@ final class RequestConverters {
parameters.withPipeline(indexRequest.getPipeline());
parameters.withRefreshPolicy(indexRequest.getRefreshPolicy());
parameters.withWaitForActiveShards(indexRequest.waitForActiveShards());
if (indexRequest.preferV2Templates() != null) {
parameters.putParam(IndexMetadata.PREFER_V2_TEMPLATES_FLAG, Boolean.toString(indexRequest.preferV2Templates()));
}
BytesRef source = indexRequest.source().toBytesRef();
ContentType contentType = createContentType(indexRequest.getContentType());
@ -381,9 +374,6 @@ final class RequestConverters {
parameters.withRetryOnConflict(updateRequest.retryOnConflict());
parameters.withVersion(updateRequest.version());
parameters.withVersionType(updateRequest.versionType());
if (updateRequest.preferV2Templates() != null) {
parameters.putParam(IndexMetadata.PREFER_V2_TEMPLATES_FLAG, Boolean.toString(updateRequest.preferV2Templates()));
}
// The Java API allows update requests with different content types
// set for the partial document and the upsert document. This client

View File

@ -25,7 +25,6 @@ import org.elasticsearch.action.admin.indices.alias.Alias;
import org.elasticsearch.action.support.ActiveShardCount;
import org.elasticsearch.client.TimedRequest;
import org.elasticsearch.client.Validatable;
import org.elasticsearch.common.Nullable;
import org.elasticsearch.common.ParseField;
import org.elasticsearch.common.Strings;
import org.elasticsearch.common.bytes.BytesArray;
@ -63,7 +62,6 @@ public class CreateIndexRequest extends TimedRequest implements Validatable, ToX
private BytesReference mappings;
private XContentType mappingsXContentType;
private Boolean preferV2Templates;
private final Set<Alias> aliases = new HashSet<>();
@ -267,16 +265,6 @@ public class CreateIndexRequest extends TimedRequest implements Validatable, ToX
return this;
}
public CreateIndexRequest preferV2Templates(Boolean preferV2Templates) {
this.preferV2Templates = preferV2Templates;
return this;
}
@Nullable
public Boolean preferV2Templates() {
return this.preferV2Templates;
}
/**
* Sets the settings and mappings as a single source.
*

View File

@ -385,7 +385,6 @@ Returns:
"settings": {
"index.number_of_replicas": "1",
"index.number_of_shards": "1",
"index.prefer_v2_templates": "false",
"index.creation_date": "1474389951325",
"index.uuid": "n6gzFZTgS664GUfx0Xrpjw",
"index.version.created": ...,
@ -422,8 +421,7 @@ Returns:
"version": {
"created": ...
},
"provided_name" : "twitter",
"prefer_v2_templates": "false"
"provided_name" : "twitter"
}
}
}

View File

@ -9,11 +9,9 @@ This documentation is about V2 (version 2) index templates. For V1 templates ple
[NOTE]
====
In {es} 7.8 the `prefer_v2_templates` querystring parameter was introduced to the index, update,
bulk, and create index APIs to allow configuring whether to favor V2 or V1 index templates. In 7.x
the default value for this parameter is `false` meaning that the <<indices-templates-v1,V1 index
templates>> take precedence. In 8.x the default value for the parameter is `true` meaning that V2
index templates take precedence (V1 templates may still match if no V2 template matches).
In {es} 7.8 V2 templates were introduced. When a V2 index template matches a given index it always
takes precedence over a V1 template. If no V2 index template matches, a V1 template may still match
and be applied.
====
An index template is a way to tell {es} how to configure an index when it is created. Templates are

View File

@ -9,11 +9,9 @@ replaced by V2 templates. For information about V2 templates, see <<indices-temp
[NOTE]
====
In {es} 7.8 the `prefer_v2_templates` querystring parameter was introduced to the index, update,
bulk, and create index APIs to allow configuring whether to favor V2 or V1 index templates. In 7.x
the default value for this parameter is `false` meaning that the V1 index templates take precedence.
In 8.x the default value for the parameter is `true` meaning that <<indices-templates,V2 index
templates>> take precedence (V1 templates may still match if no V2 template matches).
In {es} 7.8 V2 templates were introduced. When a V2 index template matches a given index it always
takes precedence over a V1 template. If no V2 index template matches, a V1 template may still match
and be applied.
====
Creates or updates an index template.

View File

@ -87,10 +87,6 @@
"pipeline":{
"type":"string",
"description":"The pipeline id to preprocess incoming documents with"
},
"prefer_v2_templates": {
"type": "boolean",
"description": "favor V2 templates instead of V1 templates during automatic index creation"
}
},
"body":{

View File

@ -90,10 +90,6 @@
"pipeline":{
"type":"string",
"description":"The pipeline id to preprocess incoming documents with"
},
"prefer_v2_templates": {
"type": "boolean",
"description": "favor V2 templates instead of V1 templates during automatic index creation"
}
},
"body":{

View File

@ -139,10 +139,6 @@
"pipeline":{
"type":"string",
"description":"The pipeline id to preprocess incoming documents with"
},
"prefer_v2_templates": {
"type": "boolean",
"description": "favor V2 templates instead of V1 templates during automatic index creation"
}
},
"body":{

View File

@ -37,10 +37,6 @@
"master_timeout":{
"type":"time",
"description":"Specify timeout for connection to master"
},
"prefer_v2_templates": {
"type": "boolean",
"description": "favor V2 templates instead of V1 templates during index creation"
}
},
"body":{

View File

@ -57,10 +57,6 @@
"wait_for_active_shards":{
"type":"string",
"description":"Set the number of active shards to wait for on the newly created rollover index before the operation returns."
},
"prefer_v2_templates": {
"type": "boolean",
"description": "favor V2 templates instead of V1 templates during automatic index creation"
}
},
"body":{

View File

@ -99,10 +99,6 @@
"if_primary_term":{
"type":"number",
"description":"only perform the update operation if the last operation that has changed the document has the specified primary term"
},
"prefer_v2_templates": {
"type": "boolean",
"description": "favor V2 templates instead of V1 templates during automatic index creation"
}
},
"body":{

View File

@ -61,7 +61,6 @@
- do:
indices.create:
index: bar-baz
prefer_v2_templates: true
body:
settings:
index.priority: 17
@ -121,7 +120,6 @@
- do:
indices.create:
prefer_v2_templates: true
index: bar-baz
- do:
@ -166,7 +164,6 @@
- do:
indices.create:
prefer_v2_templates: true
index: bazfoo
- do:
@ -196,7 +193,6 @@
- do:
indices.create:
prefer_v2_templates: true
index: eggplant
- do:
@ -204,32 +200,3 @@
index: eggplant
- match: {eggplant.settings.index.number_of_shards: "3"}
---
"Version 1 templates are preferred if the flag is set":
- skip:
version: " - 7.7.99"
reason: "index template v2 API unavailable before 7.8"
features: allowed_warnings
- do:
allowed_warnings:
- "index template [my-template] has index patterns [eggplant] matching patterns from existing older templates [global] with patterns (global => [*]); this template [my-template] will take precedence during new index creation"
indices.put_index_template:
name: my-template
body:
index_patterns: ["eggplant"]
template:
settings:
number_of_replicas: 2
- do:
indices.create:
prefer_v2_templates: false
index: eggplant
- do:
indices.get:
index: eggplant
- match: {eggplant.settings.index.number_of_replicas: "1"}

View File

@ -1,256 +0,0 @@
/*
* 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.indices.template;
import org.elasticsearch.action.admin.indices.alias.Alias;
import org.elasticsearch.action.admin.indices.create.CreateIndexRequest;
import org.elasticsearch.action.admin.indices.rollover.RolloverRequest;
import org.elasticsearch.action.admin.indices.settings.get.GetSettingsResponse;
import org.elasticsearch.action.admin.indices.template.delete.DeleteIndexTemplateV2Action;
import org.elasticsearch.action.admin.indices.template.put.PutIndexTemplateV2Action;
import org.elasticsearch.action.bulk.BulkRequest;
import org.elasticsearch.action.index.IndexRequest;
import org.elasticsearch.action.update.UpdateRequest;
import org.elasticsearch.cluster.metadata.IndexTemplateV2;
import org.elasticsearch.cluster.metadata.Template;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.test.ESSingleNodeTestCase;
import org.junit.After;
import org.junit.Before;
import java.util.Collections;
import static org.elasticsearch.test.hamcrest.ElasticsearchAssertions.assertAcked;
import static org.hamcrest.Matchers.equalTo;
public class TemplatePreferenceIT extends ESSingleNodeTestCase {
private static final String INDEX = "index";
@Before
public void setup() throws Exception {
assertAcked(client().admin().indices().preparePutTemplate("v1")
.setOrder(10)
.setSettings(Settings.builder()
.put("index.priority", 15)
.put("index.soft_deletes.enabled", true)
.build())
.setPatterns(Collections.singletonList(INDEX + "*")).get());
Template v2Settings = new Template(Settings.builder()
.put("index.priority", 23)
.build(), null, null);
IndexTemplateV2 v2template = new IndexTemplateV2(Collections.singletonList(INDEX + "*"), v2Settings, null, null, null, null);
PutIndexTemplateV2Action.Request request = new PutIndexTemplateV2Action.Request("v2");
request.indexTemplate(v2template);
assertAcked(client().execute(PutIndexTemplateV2Action.INSTANCE, request).get());
}
@After
public void cleanup() throws Exception {
assertAcked(client().admin().indices().prepareDeleteTemplate("v1").get());
assertAcked(client().execute(DeleteIndexTemplateV2Action.INSTANCE, new DeleteIndexTemplateV2Action.Request("v2")).get());
}
public void testCreateIndexPreference() throws Exception {
client().admin().indices().prepareCreate(INDEX).get();
assertUsedV1();
client().admin().indices().create(new CreateIndexRequest(INDEX).preferV2Templates(false)).get();
assertUsedV1();
client().admin().indices().create(new CreateIndexRequest(INDEX).preferV2Templates(true)).get();
assertUsedV2();
}
public void testIndexingRequestPreference() throws Exception {
client().index(new IndexRequest(INDEX).source("foo", "bar")).get();
assertUsedV1();
client().index(new IndexRequest(INDEX).source("foo", "bar").preferV2Templates(false)).get();
assertUsedV1();
client().index(new IndexRequest(INDEX).source("foo", "bar").preferV2Templates(true)).get();
assertUsedV2();
client().update(new UpdateRequest(INDEX, "1").doc("foo", "bar").docAsUpsert(true)).get();
assertUsedV1();
client().update(new UpdateRequest(INDEX, "1").doc("foo", "bar").docAsUpsert(true).preferV2Templates(false)).get();
assertUsedV1();
client().update(new UpdateRequest(INDEX, "1").doc("foo", "bar").docAsUpsert(true).preferV2Templates(true)).get();
assertUsedV2();
client().bulk(new BulkRequest(INDEX).add(new IndexRequest(INDEX).source("foo", "bar"))).get();
assertUsedV1();
client().bulk(new BulkRequest(INDEX).add(new IndexRequest(INDEX).source("foo", "bar")).preferV2Templates(false)).get();
assertUsedV1();
client().bulk(new BulkRequest(INDEX).add(new IndexRequest(INDEX).source("foo", "bar")).preferV2Templates(true)).get();
assertUsedV2();
}
public void testRolloverMaintainsSetting() throws Exception {
{
client().admin().indices().prepareCreate(INDEX + "-1")
.addAlias(new Alias("alias").writeIndex(true))
.get();
client().admin().indices().prepareRolloverIndex("alias").get();
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX + "-000002").get();
assertThat("expected index to use V1 template and have priority of 15",
resp.getSetting(INDEX + "-000002", "index.priority"), equalTo("15"));
client().admin().indices().prepareDelete(INDEX + "*").get();
}
{
client().admin().indices().prepareCreate(INDEX + "-1")
.addAlias(new Alias("alias").writeIndex(true))
.get();
RolloverRequest request = new RolloverRequest("alias", INDEX + "-000002");
request.getCreateIndexRequest().preferV2Templates(false);
client().admin().indices().rolloverIndex(request).get();
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX + "-000002").get();
assertThat("expected index to use V1 template and have priority of 15",
resp.getSetting(INDEX + "-000002", "index.priority"), equalTo("15"));
client().admin().indices().prepareDelete(INDEX + "*").get();
}
{
client().admin().indices().prepareCreate(INDEX + "-1")
.addAlias(new Alias("alias").writeIndex(true))
.get();
RolloverRequest request = new RolloverRequest("alias", INDEX + "-000002");
request.getCreateIndexRequest().preferV2Templates(true);
client().admin().indices().rolloverIndex(request).get();
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX + "-000002").get();
assertThat("expected index to use V2 template and have priority of 23",
resp.getSetting(INDEX + "-000002", "index.priority"), equalTo("23"));
client().admin().indices().prepareDelete(INDEX + "*").get();
}
{
client().admin().indices().create(new CreateIndexRequest(INDEX + "-1")
.alias(new Alias("alias").writeIndex(true))
.preferV2Templates(false))
.get();
client().admin().indices().prepareRolloverIndex("alias").get();
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX + "-000002").get();
assertThat("expected index to use V1 template and have priority of 15",
resp.getSetting(INDEX + "-000002", "index.priority"), equalTo("15"));
client().admin().indices().prepareDelete(INDEX + "*").get();
}
{
client().admin().indices().create(new CreateIndexRequest(INDEX + "-1")
.alias(new Alias("alias").writeIndex(true))
.preferV2Templates(false))
.get();
RolloverRequest request = new RolloverRequest("alias", INDEX + "-000002");
request.getCreateIndexRequest().preferV2Templates(false);
client().admin().indices().rolloverIndex(request).get();
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX + "-000002").get();
assertThat("expected index to use V1 template and have priority of 15",
resp.getSetting(INDEX + "-000002", "index.priority"), equalTo("15"));
client().admin().indices().prepareDelete(INDEX + "*").get();
}
{
client().admin().indices().create(new CreateIndexRequest(INDEX + "-1")
.alias(new Alias("alias").writeIndex(true))
.preferV2Templates(false))
.get();
RolloverRequest request = new RolloverRequest("alias", INDEX + "-000002");
request.getCreateIndexRequest().preferV2Templates(true);
client().admin().indices().rolloverIndex(request).get();
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX + "-000002").get();
assertThat("expected index to use V2 template and have priority of 23",
resp.getSetting(INDEX + "-000002", "index.priority"), equalTo("23"));
client().admin().indices().prepareDelete(INDEX + "*").get();
}
{
client().admin().indices().create(new CreateIndexRequest(INDEX + "-1")
.alias(new Alias("alias").writeIndex(true))
.preferV2Templates(true))
.get();
client().admin().indices().prepareRolloverIndex("alias").get();
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX + "-000002").get();
assertThat("expected index to use V2 template and have priority of 23",
resp.getSetting(INDEX + "-000002", "index.priority"), equalTo("23"));
client().admin().indices().prepareDelete(INDEX + "*").get();
}
{
client().admin().indices().create(new CreateIndexRequest(INDEX + "-1")
.alias(new Alias("alias").writeIndex(true))
.preferV2Templates(true))
.get();
RolloverRequest request = new RolloverRequest("alias", INDEX + "-000002");
request.getCreateIndexRequest().preferV2Templates(false);
client().admin().indices().rolloverIndex(request).get();
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX + "-000002").get();
assertThat("expected index to use V1 template and have priority of 15",
resp.getSetting(INDEX + "-000002", "index.priority"), equalTo("15"));
client().admin().indices().prepareDelete(INDEX + "*").get();
}
{
client().admin().indices().create(new CreateIndexRequest(INDEX + "-1")
.alias(new Alias("alias").writeIndex(true))
.preferV2Templates(true))
.get();
RolloverRequest request = new RolloverRequest("alias", INDEX + "-000002");
request.getCreateIndexRequest().preferV2Templates(true);
client().admin().indices().rolloverIndex(request).get();
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX + "-000002").get();
assertThat("expected index to use V2 template and have priority of 23",
resp.getSetting(INDEX + "-000002", "index.priority"), equalTo("23"));
client().admin().indices().prepareDelete(INDEX + "*").get();
}
assertWarnings("index [index-000002] matches multiple v1 templates [one_shard_index_template, " +
"random-soft-deletes-template, v1], v2 index templates will only match a single index template");
}
private void assertUsedV1() {
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX).get();
assertThat("expected index to use V1 template and have priority of 15",
resp.getSetting(INDEX, "index.priority"), equalTo("15"));
client().admin().indices().prepareDelete(INDEX).get();
}
private void assertUsedV2() {
GetSettingsResponse resp = client().admin().indices().prepareGetSettings().setIndices(INDEX).get();
assertThat("expected index to use V2 template and have priority of 23",
resp.getSetting(INDEX, "index.priority"), equalTo("23"));
client().admin().indices().prepareDelete(INDEX).get();
}
}

View File

@ -25,7 +25,6 @@ import org.elasticsearch.action.support.ActiveShardCount;
import org.elasticsearch.cluster.ack.ClusterStateUpdateRequest;
import org.elasticsearch.cluster.block.ClusterBlock;
import org.elasticsearch.cluster.metadata.IndexMetadata;
import org.elasticsearch.common.Nullable;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.index.Index;
@ -45,7 +44,6 @@ public class CreateIndexClusterStateUpdateRequest extends ClusterStateUpdateRequ
private Index recoverFrom;
private ResizeType resizeType;
private boolean copySettings;
private Boolean preferV2Templates;
private Settings settings = Settings.Builder.EMPTY_SETTINGS;
@ -98,11 +96,6 @@ public class CreateIndexClusterStateUpdateRequest extends ClusterStateUpdateRequ
return this;
}
public CreateIndexClusterStateUpdateRequest preferV2Templates(@Nullable Boolean preferV2Templates) {
this.preferV2Templates = preferV2Templates;
return this;
}
public String cause() {
return cause;
}
@ -153,9 +146,4 @@ public class CreateIndexClusterStateUpdateRequest extends ClusterStateUpdateRequ
public boolean copySettings() {
return copySettings;
}
@Nullable
public Boolean preferV2Templates() {
return preferV2Templates;
}
}

View File

@ -29,7 +29,6 @@ import org.elasticsearch.action.admin.indices.mapping.put.PutMappingRequest;
import org.elasticsearch.action.support.ActiveShardCount;
import org.elasticsearch.action.support.IndicesOptions;
import org.elasticsearch.action.support.master.AcknowledgedRequest;
import org.elasticsearch.common.Nullable;
import org.elasticsearch.common.ParseField;
import org.elasticsearch.common.Strings;
import org.elasticsearch.common.bytes.BytesArray;
@ -84,8 +83,6 @@ public class CreateIndexRequest extends AcknowledgedRequest<CreateIndexRequest>
private final Map<String, String> mappings = new HashMap<>();
private Boolean preferV2Templates;
private final Set<Alias> aliases = new HashSet<>();
private ActiveShardCount waitForActiveShards = ActiveShardCount.DEFAULT;
@ -121,9 +118,6 @@ public class CreateIndexRequest extends AcknowledgedRequest<CreateIndexRequest>
in.readBoolean(); // updateAllTypes
}
waitForActiveShards = ActiveShardCount.readFrom(in);
if (in.getVersion().onOrAfter(Version.V_7_8_0)) {
preferV2Templates = in.readOptionalBoolean();
}
}
public CreateIndexRequest() {
@ -175,16 +169,6 @@ public class CreateIndexRequest extends AcknowledgedRequest<CreateIndexRequest>
return this;
}
public CreateIndexRequest preferV2Templates(@Nullable Boolean preferV2Templates) {
this.preferV2Templates = preferV2Templates;
return this;
}
@Nullable
public Boolean preferV2Templates() {
return this.preferV2Templates;
}
/**
* The settings to create the index with.
*/
@ -499,9 +483,6 @@ public class CreateIndexRequest extends AcknowledgedRequest<CreateIndexRequest>
out.writeBoolean(true); // updateAllTypes
}
waitForActiveShards.writeTo(out);
if (out.getVersion().onOrAfter(Version.V_7_8_0)) {
out.writeOptionalBoolean(preferV2Templates);
}
}
@Override

View File

@ -87,7 +87,6 @@ public class TransportCreateIndexAction extends TransportMasterNodeAction<Create
.ackTimeout(request.timeout()).masterNodeTimeout(request.masterNodeTimeout())
.settings(request.settings()).mappings(request.mappings())
.aliases(request.aliases())
.preferV2Templates(request.preferV2Templates())
.waitForActiveShards(request.waitForActiveShards());
createIndexService.createIndex(updateRequest, ActionListener.map(listener, response ->

View File

@ -201,8 +201,7 @@ public class MetadataRolloverService {
.settings(b.build())
.aliases(createIndexRequest.aliases())
.waitForActiveShards(ActiveShardCount.NONE) // not waiting for shards here, will wait on the alias switch operation
.mappings(createIndexRequest.mappings())
.preferV2Templates(createIndexRequest.preferV2Templates());
.mappings(createIndexRequest.mappings());
}
/**

View File

@ -40,7 +40,6 @@ import org.elasticsearch.cluster.service.ClusterService;
import org.elasticsearch.common.Nullable;
import org.elasticsearch.common.inject.Inject;
import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.common.settings.Settings;
import org.elasticsearch.common.unit.ByteSizeValue;
import org.elasticsearch.index.shard.DocsStats;
import org.elasticsearch.tasks.Task;
@ -135,13 +134,6 @@ public class TransportRolloverAction extends TransportMasterNodeAction<RolloverR
+ rolloverIndexName + "]", new ClusterStateUpdateTask() {
@Override
public ClusterState execute(ClusterState currentState) throws Exception {
// If they haven't explicitly specified whether to use V2 or V1 templates, inherit their preference
// from the existing index (the source index) settings.
if (rolloverRequest.getCreateIndexRequest().preferV2Templates() == null) {
Settings originalIndexSettings = currentState.metadata().index(sourceIndexName).getSettings();
rolloverRequest.getCreateIndexRequest()
.preferV2Templates(IndexMetadata.PREFER_V2_TEMPLATES_SETTING.get(originalIndexSettings));
}
MetadataRolloverService.RolloverResult rolloverResult = rolloverService.rolloverClusterState(currentState,
rolloverRequest.getRolloverTarget(), rolloverRequest.getNewIndexName(),
rolloverRequest.getCreateIndexRequest(), metConditions, false);

View File

@ -19,7 +19,6 @@
package org.elasticsearch.action.bulk;
import org.elasticsearch.Version;
import org.elasticsearch.action.ActionRequest;
import org.elasticsearch.action.ActionRequestValidationException;
import org.elasticsearch.action.CompositeIndicesRequest;
@ -76,7 +75,6 @@ public class BulkRequest extends ActionRequest implements CompositeIndicesReques
private String globalRouting;
private String globalIndex;
private String globalType;
private Boolean preferV2Templates;
private long sizeInBytes = 0;
@ -91,9 +89,6 @@ public class BulkRequest extends ActionRequest implements CompositeIndicesReques
}
refreshPolicy = RefreshPolicy.readFrom(in);
timeout = in.readTimeValue();
if (in.getVersion().onOrAfter(Version.V_7_8_0)) {
this.preferV2Templates = in.readOptionalBoolean();
}
}
public BulkRequest(@Nullable String globalIndex) {
@ -212,16 +207,6 @@ public class BulkRequest extends ActionRequest implements CompositeIndicesReques
return this.requests;
}
public BulkRequest preferV2Templates(@Nullable Boolean preferV2Templates) {
this.preferV2Templates = preferV2Templates;
return this;
}
@Nullable
public Boolean preferV2Templates() {
return this.preferV2Templates;
}
/**
* The number of actions in the bulk request.
*/
@ -424,9 +409,6 @@ public class BulkRequest extends ActionRequest implements CompositeIndicesReques
}
refreshPolicy.writeTo(out);
out.writeTimeValue(timeout);
if (out.getVersion().onOrAfter(Version.V_7_8_0)) {
out.writeOptionalBoolean(preferV2Templates);
}
}
@Override

View File

@ -169,9 +169,7 @@ public class TransportBulkAction extends HandledTransportAction<BulkRequest, Bul
IndexRequest indexRequest = getIndexWriteRequest(actionRequest);
if (indexRequest != null) {
// Each index request needs to be evaluated, because this method also modifies the IndexRequest
boolean preferV2Templates = bulkRequest.preferV2Templates() == null ?
IndexMetadata.PREFER_V2_TEMPLATES_SETTING.getDefault(Settings.EMPTY) : bulkRequest.preferV2Templates();
boolean indexRequestHasPipeline = resolvePipelines(actionRequest, indexRequest, preferV2Templates, metadata);
boolean indexRequestHasPipeline = resolvePipelines(actionRequest, indexRequest, metadata);
hasIndexRequestsWithPipelines |= indexRequestHasPipeline;
}
@ -242,7 +240,7 @@ public class TransportBulkAction extends HandledTransportAction<BulkRequest, Bul
} else {
final AtomicInteger counter = new AtomicInteger(autoCreateIndices.size());
for (String index : autoCreateIndices) {
createIndex(index, bulkRequest.preferV2Templates(), bulkRequest.timeout(), minNodeVersion,
createIndex(index, bulkRequest.timeout(), minNodeVersion,
new ActionListener<CreateIndexResponse>() {
@Override
public void onResponse(CreateIndexResponse result) {
@ -278,8 +276,7 @@ public class TransportBulkAction extends HandledTransportAction<BulkRequest, Bul
}
}
static boolean resolvePipelines(final DocWriteRequest<?> originalRequest, final IndexRequest indexRequest,
final boolean preferV2Templates, final Metadata metadata) {
static boolean resolvePipelines(final DocWriteRequest<?> originalRequest, final IndexRequest indexRequest, final Metadata metadata) {
if (indexRequest.isPipelineResolved() == false) {
final String requestPipeline = indexRequest.getPipeline();
indexRequest.setPipeline(IngestService.NOOP_PIPELINE_NAME);
@ -319,7 +316,7 @@ public class TransportBulkAction extends HandledTransportAction<BulkRequest, Bul
// templates to look for pipelines in either a matching V2 template (which takes
// precedence), or if a V2 template does not match, any V1 templates
String v2Template = MetadataIndexTemplateService.findV2Template(metadata, indexRequest.index(), false);
if (v2Template != null && preferV2Templates) {
if (v2Template != null) {
Settings settings = MetadataIndexTemplateService.resolveSettings(metadata, v2Template);
if (defaultPipeline == null && IndexSettings.DEFAULT_PIPELINE.exists(settings)) {
defaultPipeline = IndexSettings.DEFAULT_PIPELINE.get(settings);
@ -388,7 +385,6 @@ public class TransportBulkAction extends HandledTransportAction<BulkRequest, Bul
}
void createIndex(String index,
Boolean preferV2Templates,
TimeValue timeout,
Version minNodeVersion,
ActionListener<CreateIndexResponse> listener) {
@ -396,7 +392,6 @@ public class TransportBulkAction extends HandledTransportAction<BulkRequest, Bul
createIndexRequest.index(index);
createIndexRequest.cause("auto(bulk api)");
createIndexRequest.masterNodeTimeout(timeout);
createIndexRequest.preferV2Templates(preferV2Templates);
if (minNodeVersion.onOrAfter(Version.V_7_8_0)) {
client.execute(AutoCreateAction.INSTANCE, createIndexRequest, listener);
} else {

View File

@ -22,7 +22,6 @@ package org.elasticsearch.action.bulk;
import org.elasticsearch.action.ActionListener;
import org.elasticsearch.action.DocWriteRequest;
import org.elasticsearch.action.DocWriteResponse;
import org.elasticsearch.action.index.IndexRequest;
import org.elasticsearch.action.support.ActionFilters;
import org.elasticsearch.action.support.HandledTransportAction;
import org.elasticsearch.action.support.WriteRequest;
@ -73,9 +72,6 @@ public abstract class TransportSingleItemBulkWriteAction<
bulkRequest.setRefreshPolicy(request.getRefreshPolicy());
bulkRequest.timeout(request.timeout());
bulkRequest.waitForActiveShards(request.waitForActiveShards());
if (request instanceof IndexRequest) {
bulkRequest.preferV2Templates(((IndexRequest) request).preferV2Templates());
}
request.setRefreshPolicy(WriteRequest.RefreshPolicy.NONE);
return bulkRequest;
}

View File

@ -117,7 +117,6 @@ public class IndexRequest extends ReplicatedWriteRequest<IndexRequest> implement
private boolean isRetry = false;
private long ifSeqNo = UNASSIGNED_SEQ_NO;
private long ifPrimaryTerm = UNASSIGNED_PRIMARY_TERM;
private Boolean preferV2Templates;
public IndexRequest(StreamInput in) throws IOException {
super(in);
@ -156,9 +155,6 @@ public class IndexRequest extends ReplicatedWriteRequest<IndexRequest> implement
ifSeqNo = UNASSIGNED_SEQ_NO;
ifPrimaryTerm = UNASSIGNED_PRIMARY_TERM;
}
if (in.getVersion().onOrAfter(Version.V_7_8_0)) {
this.preferV2Templates = in.readOptionalBoolean();
}
}
public IndexRequest() {
@ -643,16 +639,6 @@ public class IndexRequest extends ReplicatedWriteRequest<IndexRequest> implement
return ifSeqNo;
}
public IndexRequest preferV2Templates(@Nullable Boolean preferV2Templates) {
this.preferV2Templates = preferV2Templates;
return this;
}
@Nullable
public Boolean preferV2Templates() {
return this.preferV2Templates;
}
/**
* If set, only perform this indexing request if the document was last modification was assigned this primary term.
*
@ -756,9 +742,6 @@ public class IndexRequest extends ReplicatedWriteRequest<IndexRequest> implement
"sequence number based compare and write is not supported until all nodes are on version 7.0 or higher. " +
"Stream version [" + out.getVersion() + "]");
}
if (out.getVersion().onOrAfter(Version.V_7_8_0)) {
out.writeOptionalBoolean(preferV2Templates);
}
}
@Override

View File

@ -120,7 +120,6 @@ public class TransportUpdateAction extends TransportInstanceSingleOperationActio
client.admin().indices().create(new CreateIndexRequest()
.index(request.index())
.cause("auto(update api)")
.preferV2Templates(request.preferV2Templates())
.masterNodeTimeout(request.timeout()), new ActionListener<CreateIndexResponse>() {
@Override
public void onResponse(CreateIndexResponse result) {

View File

@ -122,7 +122,6 @@ public class UpdateRequest extends InstanceShardOperationRequest<UpdateRequest>
private boolean scriptedUpsert = false;
private boolean docAsUpsert = false;
private boolean detectNoop = true;
private Boolean preferV2Templates;
@Nullable
private IndexRequest doc;
@ -169,9 +168,6 @@ public class UpdateRequest extends InstanceShardOperationRequest<UpdateRequest>
ifPrimaryTerm = in.readVLong();
detectNoop = in.readBoolean();
scriptedUpsert = in.readBoolean();
if (in.getVersion().onOrAfter(Version.V_7_8_0)) {
preferV2Templates = in.readOptionalBoolean();
}
}
public UpdateRequest(String index, String id) {
@ -873,16 +869,6 @@ public class UpdateRequest extends InstanceShardOperationRequest<UpdateRequest>
return this;
}
@Nullable
public Boolean preferV2Templates() {
return this.preferV2Templates;
}
public UpdateRequest preferV2Templates(@Nullable Boolean preferV2Templates) {
this.preferV2Templates = preferV2Templates;
return this;
}
@Override
public void writeTo(StreamOutput out) throws IOException {
super.writeTo(out);
@ -936,9 +922,6 @@ public class UpdateRequest extends InstanceShardOperationRequest<UpdateRequest>
out.writeVLong(ifPrimaryTerm);
out.writeBoolean(detectNoop);
out.writeBoolean(scriptedUpsert);
if (out.getVersion().onOrAfter(Version.V_7_8_0)) {
out.writeOptionalBoolean(preferV2Templates);
}
}
@Override

View File

@ -246,11 +246,6 @@ public class IndexMetadata implements Diffable<IndexMetadata>, ToXContentFragmen
Setting.simpleString(key, value -> IP_VALIDATOR.accept(key, value), Property.Dynamic, Property.IndexScope));
public static final Setting.AffixSetting<String> INDEX_ROUTING_INITIAL_RECOVERY_GROUP_SETTING =
Setting.prefixKeySetting("index.routing.allocation.initial_recovery.", key -> Setting.simpleString(key));
// this is only setable internally not a registered setting!!
public static final String PREFER_V2_TEMPLATES_FLAG = "prefer_v2_templates";
public static final String SETTING_PREFER_V2_TEMPLATES = "index." + PREFER_V2_TEMPLATES_FLAG;
public static final Setting<Boolean> PREFER_V2_TEMPLATES_SETTING = Setting.boolSetting(SETTING_PREFER_V2_TEMPLATES, false,
Property.Dynamic, Property.IndexScope);
/**
* The number of active shard copies to check for before proceeding with a write operation.

View File

@ -327,19 +327,14 @@ public class MetadataCreateIndexService {
// Check to see if a v2 template matched
final String v2Template = MetadataIndexTemplateService.findV2Template(currentState.metadata(),
request.index(), isHiddenFromRequest == null ? false : isHiddenFromRequest);
final boolean preferV2Templates = resolvePreferV2Templates(request);
if (v2Template != null && preferV2Templates) {
if (v2Template != null) {
// If a v2 template was found, it takes precedence over all v1 templates, so create
// the index using that template and the request's specified settings
return applyCreateIndexRequestWithV2Template(currentState, request, silent, v2Template, metadataTransformer);
} else {
if (v2Template != null) {
logger.debug("ignoring matching index template [{}] as [prefer_v2_templates] is set to false", v2Template);
}
// A v2 template wasn't found (or is not preferred), check the v1 templates, in the
// event no templates are found creation still works using the request's specified
// index settings
// A v2 template wasn't found, check the v1 templates, in the event no templates are
// found creation still works using the request's specified index settings
final List<IndexTemplateMetadata> v1Templates = MetadataIndexTemplateService.findV1Templates(currentState.metadata(),
request.index(), isHiddenFromRequest);
@ -354,11 +349,6 @@ public class MetadataCreateIndexService {
}
}
private static boolean resolvePreferV2Templates(CreateIndexClusterStateUpdateRequest request) {
return request.preferV2Templates() == null ?
IndexMetadata.PREFER_V2_TEMPLATES_SETTING.get(request.settings()) : request.preferV2Templates();
}
public ClusterState applyCreateIndexRequest(ClusterState currentState, CreateIndexClusterStateUpdateRequest request,
boolean silent) throws Exception {
return applyCreateIndexRequest(currentState, request, silent, null);
@ -428,8 +418,7 @@ public class MetadataCreateIndexService {
private IndexMetadata buildAndValidateTemporaryIndexMetadata(final ClusterState currentState,
final Settings aggregatedIndexSettings,
final CreateIndexClusterStateUpdateRequest request,
final int routingNumShards,
final boolean preferV2Templates) {
final int routingNumShards) {
final boolean isHiddenAfterTemplates = IndexMetadata.INDEX_HIDDEN_SETTING.get(aggregatedIndexSettings);
validateDotIndex(request.index(), currentState, isHiddenAfterTemplates);
@ -437,12 +426,6 @@ public class MetadataCreateIndexService {
// remove the setting it's temporary and is only relevant once we create the index
final Settings.Builder settingsBuilder = Settings.builder().put(aggregatedIndexSettings);
settingsBuilder.remove(IndexMetadata.INDEX_NUMBER_OF_ROUTING_SHARDS_SETTING.getKey());
// This setting was added in 7.8, so we can only add it if all nodes are 7.8+, otherwise
// the nodes can throw an error about "unknown setting [index.prefer_v2_templates]" when
// they go to create the index
if (currentState.nodes().mastersFirstStream().allMatch(dn -> dn.getVersion().onOrAfter(Version.V_7_8_0))) {
settingsBuilder.put(IndexMetadata.PREFER_V2_TEMPLATES_SETTING.getKey(), preferV2Templates);
}
final Settings indexSettings = settingsBuilder.build();
final IndexMetadata.Builder tmpImdBuilder = IndexMetadata.builder(request.index());
@ -482,8 +465,7 @@ public class MetadataCreateIndexService {
aggregateIndexSettings(currentState, request, MetadataIndexTemplateService.resolveSettings(templates), mappings,
null, settings, indexScopedSettings);
int routingNumShards = getIndexNumberOfRoutingShards(aggregatedIndexSettings, null);
IndexMetadata tmpImd = buildAndValidateTemporaryIndexMetadata(currentState, aggregatedIndexSettings, request, routingNumShards,
resolvePreferV2Templates(request));
IndexMetadata tmpImd = buildAndValidateTemporaryIndexMetadata(currentState, aggregatedIndexSettings, request, routingNumShards);
return applyCreateIndexWithTemporaryService(currentState, request, silent, null, tmpImd, mappings,
indexService -> resolveAndValidateAliases(request.index(), request.aliases(),
@ -517,8 +499,7 @@ public class MetadataCreateIndexService {
MetadataIndexTemplateService.resolveSettings(currentState.metadata(), templateName),
mappings, null, settings, indexScopedSettings);
int routingNumShards = getIndexNumberOfRoutingShards(aggregatedIndexSettings, null);
IndexMetadata tmpImd = buildAndValidateTemporaryIndexMetadata(currentState, aggregatedIndexSettings, request, routingNumShards,
resolvePreferV2Templates(request));
IndexMetadata tmpImd = buildAndValidateTemporaryIndexMetadata(currentState, aggregatedIndexSettings, request, routingNumShards);
return applyCreateIndexWithTemporaryService(currentState, request, silent, null, tmpImd, mappings,
indexService -> resolveAndValidateAliases(request.index(), request.aliases(),
@ -559,8 +540,7 @@ public class MetadataCreateIndexService {
final Settings aggregatedIndexSettings =
aggregateIndexSettings(currentState, request, Settings.EMPTY, mappings, sourceMetadata, settings, indexScopedSettings);
final int routingNumShards = getIndexNumberOfRoutingShards(aggregatedIndexSettings, sourceMetadata);
IndexMetadata tmpImd = buildAndValidateTemporaryIndexMetadata(currentState, aggregatedIndexSettings, request, routingNumShards,
IndexMetadata.PREFER_V2_TEMPLATES_SETTING.get(sourceMetadata.getSettings()));
IndexMetadata tmpImd = buildAndValidateTemporaryIndexMetadata(currentState, aggregatedIndexSettings, request, routingNumShards);
return applyCreateIndexWithTemporaryService(currentState, request, silent, sourceMetadata, tmpImd, mappings,
indexService -> resolveAndValidateAliases(request.index(), request.aliases(), Collections.emptyList(),

View File

@ -82,7 +82,6 @@ public final class IndexScopedSettings extends AbstractScopedSettings {
IndexMetadata.INDEX_DATA_PATH_SETTING,
IndexMetadata.INDEX_FORMAT_SETTING,
IndexMetadata.INDEX_HIDDEN_SETTING,
IndexMetadata.PREFER_V2_TEMPLATES_SETTING,
SearchSlowLog.INDEX_SEARCH_SLOWLOG_THRESHOLD_FETCH_DEBUG_SETTING,
SearchSlowLog.INDEX_SEARCH_SLOWLOG_THRESHOLD_FETCH_WARN_SETTING,
SearchSlowLog.INDEX_SEARCH_SLOWLOG_THRESHOLD_FETCH_INFO_SETTING,

View File

@ -23,8 +23,6 @@ import org.apache.logging.log4j.LogManager;
import org.elasticsearch.action.admin.indices.create.CreateIndexRequest;
import org.elasticsearch.action.support.ActiveShardCount;
import org.elasticsearch.client.node.NodeClient;
import org.elasticsearch.cluster.metadata.IndexMetadata;
import org.elasticsearch.common.Nullable;
import org.elasticsearch.common.logging.DeprecationLogger;
import org.elasticsearch.common.xcontent.LoggingDeprecationHandler;
import org.elasticsearch.common.xcontent.XContentHelper;
@ -58,11 +56,6 @@ public class RestCreateIndexAction extends BaseRestHandler {
return "create_index_action";
}
@Nullable
public static Boolean preferV2Templates(final RestRequest request) {
return request.paramAsBoolean(IndexMetadata.PREFER_V2_TEMPLATES_FLAG, null);
}
@Override
public RestChannelConsumer prepareRequest(final RestRequest request, final NodeClient client) throws IOException {
final boolean includeTypeName = request.paramAsBoolean(INCLUDE_TYPE_NAME_PARAMETER,
@ -73,7 +66,6 @@ public class RestCreateIndexAction extends BaseRestHandler {
}
CreateIndexRequest createIndexRequest = new CreateIndexRequest(request.param("index"));
createIndexRequest.preferV2Templates(preferV2Templates(request));
if (request.hasContent()) {
Map<String, Object> sourceAsMap = XContentHelper.convertToMap(request.requiredContent(), false,

View File

@ -67,7 +67,6 @@ public class RestRolloverIndexAction extends BaseRestHandler {
rolloverIndexRequest.masterNodeTimeout(request.paramAsTime("master_timeout", rolloverIndexRequest.masterNodeTimeout()));
rolloverIndexRequest.getCreateIndexRequest().waitForActiveShards(
ActiveShardCount.parseString(request.param("wait_for_active_shards")));
rolloverIndexRequest.getCreateIndexRequest().preferV2Templates(RestCreateIndexAction.preferV2Templates(request));
return channel -> client.admin().indices().rolloverIndex(rolloverIndexRequest, new RestToXContentListener<>(channel));
}
}

View File

@ -31,7 +31,6 @@ import org.elasticsearch.index.mapper.MapperService;
import org.elasticsearch.rest.BaseRestHandler;
import org.elasticsearch.rest.RestRequest;
import org.elasticsearch.rest.action.RestStatusToXContentListener;
import org.elasticsearch.rest.action.admin.indices.RestCreateIndexAction;
import org.elasticsearch.rest.action.search.RestSearchAction;
import org.elasticsearch.search.fetch.subphase.FetchSourceContext;
@ -101,7 +100,6 @@ public class RestBulkAction extends BaseRestHandler {
bulkRequest.setRefreshPolicy(request.param("refresh"));
bulkRequest.add(request.requiredContent(), defaultIndex, defaultType, defaultRouting,
defaultFetchSourceContext, defaultPipeline, allowExplicitIndex, request.getXContentType());
bulkRequest.preferV2Templates(RestCreateIndexAction.preferV2Templates(request));
return channel -> client.bulk(bulkRequest, new RestStatusToXContentListener<>(channel));
}

View File

@ -32,7 +32,6 @@ import org.elasticsearch.rest.BaseRestHandler;
import org.elasticsearch.rest.RestRequest;
import org.elasticsearch.rest.action.RestActions;
import org.elasticsearch.rest.action.RestStatusToXContentListener;
import org.elasticsearch.rest.action.admin.indices.RestCreateIndexAction;
import java.io.IOException;
import java.util.List;
@ -146,7 +145,6 @@ public class RestIndexAction extends BaseRestHandler {
indexRequest.versionType(VersionType.fromString(request.param("version_type"), indexRequest.versionType()));
indexRequest.setIfSeqNo(request.paramAsLong("if_seq_no", indexRequest.ifSeqNo()));
indexRequest.setIfPrimaryTerm(request.paramAsLong("if_primary_term", indexRequest.ifPrimaryTerm()));
indexRequest.preferV2Templates(RestCreateIndexAction.preferV2Templates(request));
String sOpType = request.param("op_type");
String waitForActiveShards = request.param("wait_for_active_shards");
if (waitForActiveShards != null) {

View File

@ -31,7 +31,6 @@ import org.elasticsearch.rest.BaseRestHandler;
import org.elasticsearch.rest.RestRequest;
import org.elasticsearch.rest.action.RestActions;
import org.elasticsearch.rest.action.RestStatusToXContentListener;
import org.elasticsearch.rest.action.admin.indices.RestCreateIndexAction;
import org.elasticsearch.search.fetch.subphase.FetchSourceContext;
import java.io.IOException;
@ -75,7 +74,6 @@ public class RestUpdateAction extends BaseRestHandler {
updateRequest.routing(request.param("routing"));
updateRequest.timeout(request.paramAsTime("timeout", updateRequest.timeout()));
updateRequest.setRefreshPolicy(request.param("refresh"));
updateRequest.preferV2Templates(RestCreateIndexAction.preferV2Templates(request));
String waitForActiveShards = request.param("wait_for_active_shards");
if (waitForActiveShards != null) {
updateRequest.waitForActiveShards(ActiveShardCount.parseString(waitForActiveShards));

View File

@ -138,8 +138,7 @@ public class TransportBulkActionIndicesThatCannotBeCreatedTests extends ESTestCa
}
@Override
void createIndex(String index, Boolean preferV2Templates,
TimeValue timeout, Version minNodeVersion, ActionListener<CreateIndexResponse> listener) {
void createIndex(String index, TimeValue timeout, Version minNodeVersion, ActionListener<CreateIndexResponse> listener) {
// If we try to create an index just immediately assume it worked
listener.onResponse(new CreateIndexResponse(true, true, index) {});
}

View File

@ -157,9 +157,7 @@ public class TransportBulkActionIngestTests extends ESTestCase {
}
@Override
void createIndex(String index, Boolean preferV2Templates,
TimeValue timeout, Version minNodeVersion,
ActionListener<CreateIndexResponse> listener) {
void createIndex(String index, TimeValue timeout, Version minNodeVersion, ActionListener<CreateIndexResponse> listener) {
indexCreated = true;
listener.onResponse(null);
}
@ -592,7 +590,6 @@ public class TransportBulkActionIngestTests extends ESTestCase {
when(state.getMetadata()).thenReturn(metadata);
IndexRequest indexRequest = new IndexRequest("missing_index").id("id");
indexRequest.preferV2Templates(true);
indexRequest.source(Collections.emptyMap());
AtomicBoolean responseCalled = new AtomicBoolean(false);
AtomicBoolean failureCalled = new AtomicBoolean(false);

View File

@ -82,8 +82,7 @@ public class TransportBulkActionTests extends ESTestCase {
}
@Override
void createIndex(String index, Boolean preferV2Templates,
TimeValue timeout, Version minNodeVersion, ActionListener<CreateIndexResponse> listener) {
void createIndex(String index, TimeValue timeout, Version minNodeVersion, ActionListener<CreateIndexResponse> listener) {
indexCreated = true;
listener.onResponse(null);
}
@ -179,14 +178,14 @@ public class TransportBulkActionTests extends ESTestCase {
// index name matches with IDM:
IndexRequest indexRequest = new IndexRequest("idx");
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, false, metadata);
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, metadata);
assertThat(result, is(true));
assertThat(indexRequest.isPipelineResolved(), is(true));
assertThat(indexRequest.getPipeline(), equalTo("default-pipeline"));
// alias name matches with IDM:
indexRequest = new IndexRequest("alias");
result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, false, metadata);
result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, metadata);
assertThat(result, is(true));
assertThat(indexRequest.isPipelineResolved(), is(true));
assertThat(indexRequest.getPipeline(), equalTo("default-pipeline"));
@ -197,7 +196,7 @@ public class TransportBulkActionTests extends ESTestCase {
.settings(settings(Version.CURRENT).put(IndexSettings.DEFAULT_PIPELINE.getKey(), "default-pipeline"));
metadata = Metadata.builder().put(templateBuilder).build();
indexRequest = new IndexRequest("idx");
result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, false, metadata);
result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, metadata);
assertThat(result, is(true));
assertThat(indexRequest.isPipelineResolved(), is(true));
assertThat(indexRequest.getPipeline(), equalTo("default-pipeline"));
@ -213,7 +212,7 @@ public class TransportBulkActionTests extends ESTestCase {
// index name matches with IDM:
IndexRequest indexRequest = new IndexRequest("idx");
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, false, metadata);
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, metadata);
assertThat(result, is(true));
assertThat(indexRequest.isPipelineResolved(), is(true));
assertThat(indexRequest.getPipeline(), equalTo("_none"));
@ -221,7 +220,7 @@ public class TransportBulkActionTests extends ESTestCase {
// alias name matches with IDM:
indexRequest = new IndexRequest("alias");
result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, false, metadata);
result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, metadata);
assertThat(result, is(true));
assertThat(indexRequest.isPipelineResolved(), is(true));
assertThat(indexRequest.getPipeline(), equalTo("_none"));
@ -233,7 +232,7 @@ public class TransportBulkActionTests extends ESTestCase {
.settings(settings(Version.CURRENT).put(IndexSettings.FINAL_PIPELINE.getKey(), "final-pipeline"));
metadata = Metadata.builder().put(templateBuilder).build();
indexRequest = new IndexRequest("idx");
result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, false, metadata);
result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, metadata);
assertThat(result, is(true));
assertThat(indexRequest.isPipelineResolved(), is(true));
assertThat(indexRequest.getPipeline(), equalTo("_none"));
@ -245,7 +244,7 @@ public class TransportBulkActionTests extends ESTestCase {
{
Metadata metadata = Metadata.builder().build();
IndexRequest indexRequest = new IndexRequest("idx");
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, false, metadata);
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, metadata);
assertThat(result, is(false));
assertThat(indexRequest.isPipelineResolved(), is(true));
assertThat(indexRequest.getPipeline(), equalTo(IngestService.NOOP_PIPELINE_NAME));
@ -255,7 +254,7 @@ public class TransportBulkActionTests extends ESTestCase {
{
Metadata metadata = Metadata.builder().build();
IndexRequest indexRequest = new IndexRequest("idx").setPipeline("request-pipeline");
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, false, metadata);
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, metadata);
assertThat(result, is(true));
assertThat(indexRequest.isPipelineResolved(), is(true));
assertThat(indexRequest.getPipeline(), equalTo("request-pipeline"));
@ -269,7 +268,7 @@ public class TransportBulkActionTests extends ESTestCase {
.numberOfReplicas(0);
Metadata metadata = Metadata.builder().put(builder).build();
IndexRequest indexRequest = new IndexRequest("idx").setPipeline("request-pipeline");
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, false, metadata);
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, metadata);
assertThat(result, is(true));
assertThat(indexRequest.isPipelineResolved(), is(true));
assertThat(indexRequest.getPipeline(), equalTo("request-pipeline"));
@ -283,7 +282,7 @@ public class TransportBulkActionTests extends ESTestCase {
.numberOfReplicas(0);
Metadata metadata = Metadata.builder().put(builder).build();
IndexRequest indexRequest = new IndexRequest("idx").setPipeline("request-pipeline");
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, false, metadata);
boolean result = TransportBulkAction.resolvePipelines(indexRequest, indexRequest, metadata);
assertThat(result, is(true));
assertThat(indexRequest.isPipelineResolved(), is(true));
assertThat(indexRequest.getPipeline(), equalTo("request-pipeline"));

View File

@ -369,7 +369,6 @@ public class TransportResumeFollowAction extends TransportMasterNodeAction<Resum
nonReplicatedSettings.add(IndexMetadata.INDEX_PRIORITY_SETTING);
nonReplicatedSettings.add(IndexMetadata.SETTING_WAIT_FOR_ACTIVE_SHARDS);
nonReplicatedSettings.add(IndexMetadata.INDEX_HIDDEN_SETTING);
nonReplicatedSettings.add(IndexMetadata.PREFER_V2_TEMPLATES_SETTING);
nonReplicatedSettings.add(EnableAllocationDecider.INDEX_ROUTING_REBALANCE_ENABLE_SETTING);
nonReplicatedSettings.add(EnableAllocationDecider.INDEX_ROUTING_ALLOCATION_ENABLE_SETTING);