diff --git a/repository/src/main/java/org/apache/atlas/repository/store/graph/v1/DeleteHandlerV1.java b/repository/src/main/java/org/apache/atlas/repository/store/graph/v1/DeleteHandlerV1.java index bbda02e722..40d0c1b28a 100644 --- a/repository/src/main/java/org/apache/atlas/repository/store/graph/v1/DeleteHandlerV1.java +++ b/repository/src/main/java/org/apache/atlas/repository/store/graph/v1/DeleteHandlerV1.java @@ -1502,7 +1502,6 @@ public void resetHasLineageOnInputOutputDelete(Collection removedEdge boolean isOutputEdge = PROCESS_OUTPUTS.equals(atlasEdge.getLabel()); - AtlasVertex processVertex = atlasEdge.getOutVertex(); AtlasVertex assetVertex = atlasEdge.getInVertex(); String assetEdgeLabel = getLabel(getGuid(assetVertex), atlasEdge.getLabel()); @@ -1514,18 +1513,20 @@ public void resetHasLineageOnInputOutputDelete(Collection removedEdge updateAssetHasLineageStatus(assetVertex, atlasEdge, removedEdges); } } - if (getStatus(processVertex) == ACTIVE && !processVertex.equals(deletedVertex)) { - String edgeLabel = isOutputEdge ? PROCESS_OUTPUTS : PROCESS_INPUTS; - String processId = getGuid(processVertex); - String processEdgeLabel = getLabel(processId,edgeLabel); - boolean processLabelPairAlreadyProcessed = RequestContext.get().isEdgeLabelAlreadyProcessed(processEdgeLabel); + AtlasVertex processVertex = atlasEdge.getOutVertex(); + String processId = getGuid(processVertex); + String edgeLabel = isOutputEdge ? PROCESS_OUTPUTS : PROCESS_INPUTS; + String processEdgeLabel = getLabel(processId, edgeLabel); + boolean processLabelPairAlreadyProcessed = RequestContext.get().isEdgeLabelAlreadyProcessed(processEdgeLabel); - if (processLabelPairAlreadyProcessed) { - continue; - } - RequestContext.get().addEdgeLabel(processEdgeLabel); + if (processLabelPairAlreadyProcessed) { + continue; + } + RequestContext.get().addEdgeLabel(processEdgeLabel); + + if (getStatus(processVertex) == ACTIVE && !processVertex.equals(deletedVertex)) { Iterator edgeIterator = GraphHelper.getActiveEdges(processVertex, edgeLabel, AtlasEdgeDirection.BOTH); boolean activeEdgeFound = false;