diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EntityRepository.java b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EntityRepository.java index d882b14fa32..254fef7bc02 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EntityRepository.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/EntityRepository.java @@ -4156,7 +4156,11 @@ public abstract class EntityRepository { if (targetFQN != null) { TagLabel tagLabel = tagFQNLabelMap.get(tagWithHash.getTagFQN()); - tagsMap.computeIfAbsent(targetFQN, k -> new ArrayList<>()).add(tagLabel); + if (tagLabel != null) { + tagsMap.computeIfAbsent(targetFQN, k -> new ArrayList<>()).add(tagLabel); + } else { + LOG.warn("Missing TagLabel for TagFQN in batch Fetch Tags: {}", tagWithHash.getTagFQN()); + } } } diff --git a/openmetadata-service/src/main/java/org/openmetadata/service/resources/tags/TagLabelUtil.java b/openmetadata-service/src/main/java/org/openmetadata/service/resources/tags/TagLabelUtil.java index fdd952882f8..9d22764e042 100644 --- a/openmetadata-service/src/main/java/org/openmetadata/service/resources/tags/TagLabelUtil.java +++ b/openmetadata-service/src/main/java/org/openmetadata/service/resources/tags/TagLabelUtil.java @@ -23,6 +23,7 @@ import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Set; import java.util.TreeSet; import java.util.stream.Collectors; @@ -105,14 +106,18 @@ public class TagLabelUtil { return tagLabels; } - // Filter out all the derived tags List filteredTags = - tagLabels.stream().filter(tag -> tag.getLabelType() != TagLabel.LabelType.DERIVED).toList(); + tagLabels.stream() + .filter(Objects::nonNull) + .filter(tag -> tag.getLabelType() != TagLabel.LabelType.DERIVED) + .toList(); List updatedTagLabels = new ArrayList<>(); EntityUtil.mergeTags(updatedTagLabels, filteredTags); for (TagLabel tagLabel : tagLabels) { - EntityUtil.mergeTags(updatedTagLabels, getDerivedTags(tagLabel)); + if (tagLabel != null) { + EntityUtil.mergeTags(updatedTagLabels, getDerivedTags(tagLabel)); + } } updatedTagLabels.sort(compareTagLabel); return updatedTagLabels;