diff --git a/src/main/asciidoc/reference/elasticsearch-migration-guide-5.0-5.1.adoc b/src/main/asciidoc/reference/elasticsearch-migration-guide-5.0-5.1.adoc new file mode 100644 index 000000000..113b2643a --- /dev/null +++ b/src/main/asciidoc/reference/elasticsearch-migration-guide-5.0-5.1.adoc @@ -0,0 +1,11 @@ +[[elasticsearch-migration-guide-5.0-5.1]] += Upgrading from 5.0.x to 5.1.x + +This section describes breaking changes from version 5.0.x to 5.1.x and how removed features can be replaced by new introduced features. + +[[elasticsearch-migration-guide-5.0-5.1.breaking-changes]] +== Breaking Changes + +In the `org.springframework.data.elasticsearch.core.index.AliasData` class, which is used for alias information +returned from Elasticsearch, the property `filter` (of type `Document`) is replaced by `filterQuery` which is of type +`org.springframework.data.elasticsearch.core.query.Query`. diff --git a/src/main/java/org/springframework/data/elasticsearch/client/elc/ResponseConverter.java b/src/main/java/org/springframework/data/elasticsearch/client/elc/ResponseConverter.java index 5cfbb080b..3e5c9f3a1 100644 --- a/src/main/java/org/springframework/data/elasticsearch/client/elc/ResponseConverter.java +++ b/src/main/java/org/springframework/data/elasticsearch/client/elc/ResponseConverter.java @@ -15,7 +15,7 @@ */ package org.springframework.data.elasticsearch.client.elc; -import static org.springframework.data.elasticsearch.client.elc.JsonUtils.*; +import static org.springframework.data.elasticsearch.client.elc.JsonUtils.toJson; import co.elastic.clients.elasticsearch._types.BulkIndexByScrollFailure; import co.elastic.clients.elasticsearch._types.ErrorCause; @@ -26,7 +26,16 @@ import co.elastic.clients.elasticsearch.core.UpdateByQueryResponse; import co.elastic.clients.elasticsearch.core.mget.MultiGetError; import co.elastic.clients.elasticsearch.core.mget.MultiGetResponseItem; -import co.elastic.clients.elasticsearch.indices.*; +import co.elastic.clients.elasticsearch.indices.Alias; +import co.elastic.clients.elasticsearch.indices.AliasDefinition; +import co.elastic.clients.elasticsearch.indices.GetAliasResponse; +import co.elastic.clients.elasticsearch.indices.GetIndexResponse; +import co.elastic.clients.elasticsearch.indices.GetIndicesSettingsResponse; +import co.elastic.clients.elasticsearch.indices.GetMappingResponse; +import co.elastic.clients.elasticsearch.indices.GetTemplateResponse; +import co.elastic.clients.elasticsearch.indices.IndexSettings; +import co.elastic.clients.elasticsearch.indices.IndexState; +import co.elastic.clients.elasticsearch.indices.TemplateMapping; import co.elastic.clients.elasticsearch.indices.get_mapping.IndexMappingRecord; import co.elastic.clients.json.JsonpMapper; @@ -51,6 +60,7 @@ import org.springframework.data.elasticsearch.core.index.TemplateData; import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates; import org.springframework.data.elasticsearch.core.query.ByQueryResponse; +import org.springframework.data.elasticsearch.core.query.StringQuery; import org.springframework.data.elasticsearch.core.reindex.ReindexResponse; import org.springframework.data.elasticsearch.support.DefaultStringObjectMap; import org.springframework.lang.Nullable; @@ -190,18 +200,19 @@ public Map> indicesGetAliasData(GetAliasResponse getAlias } private AliasData indicesGetAliasData(String aliasName, Alias alias) { + Query filter = alias.filter(); String filterJson = filter != null ? toJson(filter, jsonpMapper) : null; - Document filterDocument = filterJson != null ? Document.parse(filterJson) : null; - return AliasData.of(aliasName, filterDocument, alias.indexRouting(), alias.searchRouting(), alias.isWriteIndex(), + var filterQuery = filterJson != null ? StringQuery.builder(filterJson).build() : null; + return AliasData.of(aliasName, filterQuery, alias.indexRouting(), alias.searchRouting(), alias.isWriteIndex(), alias.isHidden()); } private AliasData indicesGetAliasData(String aliasName, AliasDefinition alias) { Query filter = alias.filter(); String filterJson = filter != null ? toJson(filter, jsonpMapper) : null; - Document filterDocument = filterJson != null ? Document.parse(filterJson) : null; - return AliasData.of(aliasName, filterDocument, alias.indexRouting(), alias.searchRouting(), alias.isWriteIndex(), + var filterQuery = filterJson != null ? StringQuery.builder(filterJson).build() : null; + return AliasData.of(aliasName, filterQuery, alias.indexRouting(), alias.searchRouting(), alias.isWriteIndex(), null); } @@ -280,7 +291,7 @@ public ReindexResponse reindexResponse(co.elastic.clients.elasticsearch.core.Rei .withThrottledMillis(reindexResponse.throttledMillis()) // .withRequestsPerSecond(reindexResponse.requestsPerSecond()) // .withThrottledUntilMillis(reindexResponse.throttledUntilMillis()) // - .withFailures(failures) // + .withFailures(failures) // .build(); } diff --git a/src/main/java/org/springframework/data/elasticsearch/client/erhlc/ResponseConverter.java b/src/main/java/org/springframework/data/elasticsearch/client/erhlc/ResponseConverter.java index 618ccadea..f82aaeaa0 100644 --- a/src/main/java/org/springframework/data/elasticsearch/client/erhlc/ResponseConverter.java +++ b/src/main/java/org/springframework/data/elasticsearch/client/erhlc/ResponseConverter.java @@ -48,6 +48,8 @@ import org.springframework.data.elasticsearch.core.index.Settings; import org.springframework.data.elasticsearch.core.index.TemplateData; import org.springframework.data.elasticsearch.core.query.ByQueryResponse; +import org.springframework.data.elasticsearch.core.query.Query; +import org.springframework.data.elasticsearch.core.query.StringQuery; import org.springframework.data.elasticsearch.core.reindex.ReindexResponse; import org.springframework.lang.Nullable; import org.springframework.util.Assert; @@ -78,14 +80,12 @@ public static Map> aliasDatas(Map