Skip to content

Commit 88b4d13

Browse files
author
Jonathan P Moraes
authored
Adjusting logic to refine direct lineage (#41)
1 parent 9b815be commit 88b4d13

1 file changed

Lines changed: 9 additions & 9 deletions

File tree

api/src/main/java/marquez/service/LineageService.java

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,9 @@
3333
import marquez.common.models.RunId;
3434
import marquez.db.JobDao;
3535
import marquez.db.LineageDao;
36-
import marquez.db.LineageDao.DatasetSummary;
37-
import marquez.db.LineageDao.JobSummary;
38-
import marquez.db.LineageDao.RunSummary;
3936
import marquez.db.RunDao;
4037
import marquez.db.models.JobRow;
4138
import marquez.service.DelegatingDaos.DelegatingLineageDao;
42-
import marquez.service.LineageService.UpstreamRunLineage;
4339
import marquez.service.models.DatasetData;
4440
import marquez.service.models.Edge;
4541
import marquez.service.models.Graph;
@@ -356,11 +352,15 @@ public Lineage directLineage(NodeId nodeId, int depth) {
356352
if (ds == null) {
357353
continue;
358354
}
359-
// IMPORTANT: Use the string values
360-
Optional<UUID> maybeJob = getJobFromInputOrOutput(
361-
ds.getName().getValue(),
362-
ds.getNamespace().getValue());
363-
maybeJob.ifPresent(nextJobs::add);
355+
// Only follow upstream/downstream direction based on whether the dataset
356+
// is an input or output
357+
if (jd.getInputUuids().contains(dsUuid)) {
358+
// IMPORTANT: Use the string values
359+
Optional<UUID> maybeJob = getJobFromInputOrOutput(
360+
ds.getName().getValue(),
361+
ds.getNamespace().getValue());
362+
maybeJob.ifPresent(nextJobs::add);
363+
}
364364
}
365365
}
366366

0 commit comments

Comments
 (0)