From 04543722a6f6e2b1eaf7a451ebb1c176862bc346 Mon Sep 17 00:00:00 2001 From: sonika-shah <58761340+sonika-shah@users.noreply.github.com> Date: Tue, 11 Jun 2024 10:06:44 +0530 Subject: [PATCH] Minor: Ensure correct index mapping in Elasticsearch for clusterAlias (#16598) --- .../service/jdbi3/GlossaryTermRepository.java | 8 ++++++-- .../org/openmetadata/service/jdbi3/SystemRepository.java | 4 +++- .../service/search/elasticsearch/ElasticSearchClient.java | 3 ++- .../service/search/opensearch/OpenSearchClient.java | 3 ++- .../service/workflows/searchIndex/ReindexingUtil.java | 5 ++++- 5 files changed, 17 insertions(+), 6 deletions(-) diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/GlossaryTermRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/GlossaryTermRepository.java index 58d72ae2ccd..00329a56063 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/GlossaryTermRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/GlossaryTermRepository.java @@ -27,6 +27,7 @@ import static org.openmetadata.service.exception.CatalogExceptionMessage.notRevi import static org.openmetadata.service.resources.tags.TagLabelUtil.checkMutuallyExclusive; import static org.openmetadata.service.resources.tags.TagLabelUtil.checkMutuallyExclusiveForParentAndSubField; import static org.openmetadata.service.resources.tags.TagLabelUtil.getUniqueTags; +import static org.openmetadata.service.search.SearchClient.GLOBAL_SEARCH_ALIAS; import static org.openmetadata.service.util.EntityUtil.compareEntityReferenceById; import static org.openmetadata.service.util.EntityUtil.compareTagLabel; import static org.openmetadata.service.util.EntityUtil.entityReferenceMatch; @@ -425,7 +426,9 @@ public class GlossaryTermRepository extends EntityRepository { String key = "_source"; SearchRequest searchRequest = new SearchRequest.ElasticSearchRequestBuilder( - String.format("** AND (tags.tagFQN:\"%s\")", glossaryFqn), size, "all") + String.format("** AND (tags.tagFQN:\"%s\")", glossaryFqn), + size, + Entity.getSearchRepository().getIndexOrAliasName(GLOBAL_SEARCH_ALIAS)) .from(0) .fetchSource(true) .trackTotalHits(false) @@ -474,7 +477,8 @@ public class GlossaryTermRepository extends EntityRepository { termFQN); SearchRequest searchRequest = - new SearchRequest.ElasticSearchRequestBuilder("*", size, "all") + new SearchRequest.ElasticSearchRequestBuilder( + "*", size, Entity.getSearchRepository().getIndexOrAliasName(GLOBAL_SEARCH_ALIAS)) .from(0) .queryFilter(queryFilter) .fetchSource(true) diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/SystemRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/SystemRepository.java index 123775bbd0a..89490f0ba55 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/SystemRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/SystemRepository.java @@ -279,7 +279,9 @@ public class SystemRepository { private StepValidation getSearchValidation(OpenMetadataApplicationConfig applicationConfig) { SearchRepository searchRepository = Entity.getSearchRepository(); if (Boolean.TRUE.equals(searchRepository.getSearchClient().isClientAvailable()) - && searchRepository.getSearchClient().indexExists(INDEX_NAME)) { + && searchRepository + .getSearchClient() + .indexExists(Entity.getSearchRepository().getIndexOrAliasName(INDEX_NAME))) { return new StepValidation() .withDescription(ValidationStepDescription.SEARCH.key) .withPassed(Boolean.TRUE) diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/search/elasticsearch/ElasticSearchClient.java b/openmetadata-service/src/main/java/org/openmetadata/service/search/elasticsearch/ElasticSearchClient.java index be21f058e8d..398121bb7bf 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/search/elasticsearch/ElasticSearchClient.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/search/elasticsearch/ElasticSearchClient.java @@ -514,7 +514,8 @@ public class ElasticSearchClient implements SearchClient { @Override public Response getDocByID(String indexName, String entityId) throws IOException { try { - GetRequest request = new GetRequest(indexName, entityId); + GetRequest request = + new GetRequest(Entity.getSearchRepository().getIndexOrAliasName(indexName), entityId); GetResponse response = client.get(request, RequestOptions.DEFAULT); if (response.isExists()) { diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/search/opensearch/OpenSearchClient.java b/openmetadata-service/src/main/java/org/openmetadata/service/search/opensearch/OpenSearchClient.java index 7e565b80f7c..fd75d643048 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/search/opensearch/OpenSearchClient.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/search/opensearch/OpenSearchClient.java @@ -505,7 +505,8 @@ public class OpenSearchClient implements SearchClient { @Override public Response getDocByID(String indexName, String entityId) throws IOException { try { - GetRequest request = new GetRequest(indexName, entityId); + GetRequest request = + new GetRequest(Entity.getSearchRepository().getIndexOrAliasName(indexName), entityId); GetResponse response = client.get(request, RequestOptions.DEFAULT); if (response.isExists()) { diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/workflows/searchIndex/ReindexingUtil.java b/openmetadata-service/src/main/java/org/openmetadata/service/workflows/searchIndex/ReindexingUtil.java index 06f8b697cf5..8e8841fd8f3 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/workflows/searchIndex/ReindexingUtil.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/workflows/searchIndex/ReindexingUtil.java @@ -14,6 +14,7 @@ package org.openmetadata.service.workflows.searchIndex; import static org.openmetadata.service.apps.bundles.searchIndex.SearchIndexApp.TIME_SERIES_ENTITIES; +import static org.openmetadata.service.search.SearchClient.GLOBAL_SEARCH_ALIAS; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.node.ArrayNode; @@ -130,7 +131,9 @@ public class ReindexingUtil { String key = "_source"; SearchRequest searchRequest = new SearchRequest.ElasticSearchRequestBuilder( - String.format("(%s:\"%s\")", matchingKey, sourceFqn), 100, "all") + String.format("(%s:\"%s\")", matchingKey, sourceFqn), + 100, + Entity.getSearchRepository().getIndexOrAliasName(GLOBAL_SEARCH_ALIAS)) .from(from) .fetchSource(true) .trackTotalHits(false)