From 9e2618e2815b896a8422f406c8ecb093245e9de5 Mon Sep 17 00:00:00 2001 From: Ruslan Kuprieiev Date: Thu, 30 Apr 2020 15:50:53 +0300 Subject: [PATCH] serialize: use checksums that are already saved `get_checksum()` recomputes the checksum which might not match the pre-recorded one. `checksum` is the one that was `save()`ed during run and it is the one that should be used in the lockfile. --- dvc/serialize.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/dvc/serialize.py b/dvc/serialize.py index bc0bd8d3c6..976a8fa773 100644 --- a/dvc/serialize.py +++ b/dvc/serialize.py @@ -89,11 +89,10 @@ def to_lockfile(stage: "PipelineStage") -> dict: res = {"cmd": stage.cmd} params, deps = get_params_deps(stage) deps = [ - {"path": dep.def_path, dep.checksum_type: dep.get_checksum()} - for dep in deps + {"path": dep.def_path, dep.checksum_type: dep.checksum} for dep in deps ] outs = [ - {"path": out.def_path, out.checksum_type: out.get_checksum()} + {"path": out.def_path, out.checksum_type: out.checksum} for out in stage.outs ] if deps: