From 48e20b22e5e59980c20170eb0a757a90ab15c021 Mon Sep 17 00:00:00 2001 From: ZMai <zmai@slb.com> Date: Thu, 20 Apr 2023 19:14:43 -0500 Subject: [PATCH] Should not check whether the alias exist or not when creating alias for kind with major version --- .../osdu/indexer/service/IndexAliasServiceImpl.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/indexer-core/src/main/java/org/opengroup/osdu/indexer/service/IndexAliasServiceImpl.java b/indexer-core/src/main/java/org/opengroup/osdu/indexer/service/IndexAliasServiceImpl.java index 24a88f221..f8b2c4f48 100644 --- a/indexer-core/src/main/java/org/opengroup/osdu/indexer/service/IndexAliasServiceImpl.java +++ b/indexer-core/src/main/java/org/opengroup/osdu/indexer/service/IndexAliasServiceImpl.java @@ -44,6 +44,8 @@ import java.util.stream.Collectors; @Component public class IndexAliasServiceImpl implements IndexAliasService{ + private static final String KIND_COMPLETE_VERSION_PATTERN = "[\\w-\\.\\*]+:[\\w-\\.\\*]+:[\\w-\\.\\*]+:(\\d+\\.\\d+\\.\\d+)$"; + @Inject private ElasticIndexNameResolver elasticIndexNameResolver; @Inject @@ -149,6 +151,10 @@ public class IndexAliasServiceImpl implements IndexAliasService{ private String resolveConcreteIndexName(RestHighLevelClient restClient, String kind) throws IOException { String index = elasticIndexNameResolver.getIndexNameFromKind(kind); + if(!isCompleteVersionKind(kind)) { + return index; + } + GetAliasesRequest request = new GetAliasesRequest(index); GetAliasesResponse response = restClient.indices().getAlias(request, RequestOptions.DEFAULT); if(response.status() == RestStatus.NOT_FOUND) { @@ -182,7 +188,11 @@ public class IndexAliasServiceImpl implements IndexAliasService{ return actualIndex; } } - return null; + return index; + } + + private boolean isCompleteVersionKind(String kind) { + return !Strings.isNullOrEmpty(kind) && kind.matches(KIND_COMPLETE_VERSION_PATTERN); } private List<String> getAllKinds(RestHighLevelClient client) throws IOException { -- GitLab