From c634b78b4d7c4f6ef59e46c94162893e42de6f73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20K=C3=B6ster?= Date: Wed, 8 Jun 2022 11:51:23 +0200 Subject: [PATCH] fix: fixed bug in needrun computation of jobs downsteam of checkpoints (#1704) * fix: fixed bug in needrun computation of jobs downsteam of checkpoints * more fine grained removal from DAG._reason --- snakemake/dag.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/snakemake/dag.py b/snakemake/dag.py index 0204da631..3af3031a2 100755 --- a/snakemake/dag.py +++ b/snakemake/dag.py @@ -1157,7 +1157,6 @@ def update_needrun(job): # depending jobs of jobs that are needrun as a prior # can be skipped continue - if update_needrun(job): queue.append(job) masked.update(self.bfs(self.depending, job)) @@ -1703,10 +1702,11 @@ def delete_job(self, job, recursive=True, add_dependencies=False): if not depending and recursive: self.delete_job(job_) del self.dependencies[job] + if job in self._reason: + del self._reason[job] if job in self._needrun: self._len -= 1 self._needrun.remove(job) - del self._reason[job] if job in self._finished: self._finished.remove(job) if job in self._dynamic: