From e388c821c72b46775493901b9ef038bd618c005e Mon Sep 17 00:00:00 2001 From: hr2904 Date: Tue, 28 Jan 2025 17:53:53 +0530 Subject: [PATCH] When fixing hasLineage for an asset, only edge status is being checked but not process status, which is often deleted in current ongoing ticket. This commit fixes that by adding that check --- .../repository/store/graph/v2/AtlasEntityStoreV2.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasEntityStoreV2.java b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasEntityStoreV2.java index f99d1659c2..b48dd18822 100644 --- a/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasEntityStoreV2.java +++ b/repository/src/main/java/org/apache/atlas/repository/store/graph/v2/AtlasEntityStoreV2.java @@ -2698,8 +2698,15 @@ private void repairHasLineageForAsset(AtlasHasLineageRequest request) { while (lineageEdges.hasNext()) { AtlasEdge edge = lineageEdges.next(); if (getStatus(edge) == ACTIVE) { - foundActiveRel = true; - break; + AtlasVertex vertexB = edge.getOutVertex(); + if (vertexB.equals(assetVertex)) { + vertexB = edge.getInVertex(); + } + + if (getStatus(vertexB) == ACTIVE) { + foundActiveRel = true; + break; + } } }