From bd12a9791b36275b536ef81cd1ff6a21ec7a0a23 Mon Sep 17 00:00:00 2001 From: hr2904 Date: Tue, 4 Jun 2024 11:29:21 +0530 Subject: [PATCH] fixed the caching logic, by adding the bifurcation for terms and categories --- .../store/graph/v2/preprocessor/PreProcessorUtils.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/preprocessor/PreProcessorUtils.java b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/preprocessor/PreProcessorUtils.java index d2e30931fd..3dd3b26885 100644 --- a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/preprocessor/PreProcessorUtils.java +++ b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/preprocessor/PreProcessorUtils.java @@ -255,15 +255,15 @@ public static void assignNewLexicographicalSortOrder(AtlasEntity entity, String } String lexoRank = ""; String lastLexoRank = ""; + boolean isTerm = entity.getTypeName().equals(ATLAS_GLOSSARY_TERM_TYPENAME) ? true : false; - if(lexoRankCache.containsKey(glossaryQualifiedName + "-" + parentQualifiedName)) { - lastLexoRank = lexoRankCache.get(glossaryQualifiedName + "-" + parentQualifiedName); + if(lexoRankCache.containsKey(entity.getTypeName() + "-" + glossaryQualifiedName + "-" + parentQualifiedName)) { + lastLexoRank = lexoRankCache.get(entity.getTypeName() + "-" + glossaryQualifiedName + "-" + parentQualifiedName); } else { Set attributes = new HashSet<>(); attributes.add(LEXICOGRAPHICAL_SORT_ORDER); List categories = null; - boolean isTerm = entity.getTypeName().equals(ATLAS_GLOSSARY_TERM_TYPENAME) ? true : false; Map dslQuery = generateDSLQueryForLastCategory(glossaryQualifiedName, parentQualifiedName, isTerm); try { IndexSearchParams searchParams = new IndexSearchParams(); @@ -293,7 +293,7 @@ public static void assignNewLexicographicalSortOrder(AtlasEntity entity, String lexoRank = nextLexoRank.toString(); entity.setAttribute(LEXICOGRAPHICAL_SORT_ORDER, lexoRank); - lexoRankCache.put(glossaryQualifiedName + "-" + parentQualifiedName, lexoRank); + lexoRankCache.put(entity.getTypeName() + "-" + glossaryQualifiedName + "-" + parentQualifiedName, lexoRank); RequestContext.get().setLexoRankCache(lexoRankCache); }