repro: check for hash mismatch between deleted dependencies and upstream outputs.#9533
Conversation
| if upstream and any( | ||
| dep.fs_path == out.fs_path and dep.hash_info != out.hash_info | ||
| for stage in upstream | ||
| for out in stage.outs | ||
| ): |
There was a problem hiding this comment.
This is not pretty but I don't see any alternative
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #9533 +/- ##
==========================================
+ Coverage 90.55% 90.57% +0.01%
==========================================
Files 470 472 +2
Lines 35939 36013 +74
Branches 5180 5182 +2
==========================================
+ Hits 32545 32619 +74
Misses 2800 2800
Partials 594 594
☔ View full report in Codecov by Sentry. |
|
This works, so not a blocker, but is there a way we can actually have It sounds like something I would expect to be possible, especially with the index changes from @efiop that I thought should make it easy to compare against virtual outputs. |
I think this P.R. should be merged and backported whereas the
I am not sure I follow how the index changes have anything to do with this, as this just involves checking upstream stages in the pipeline |
Okay, I'm fine to do it this way.
I wasn't that familiar with how status works and thought it would be possible. In theory, we could build a virtual index based on the outputs of the It would return a modified status when an upstream stage changed (since the hash of the out will change) without manually comparing upstream stages and changing the status inside repro. |
|
Maybe we can assemble an index from deps and one from outs and then do an index diff? |
|
@daavoo Do you plan to merge as is? If so, can we get someone to take a look so we can unblock it please? |
I did not plan to implement a different solution for the release if this one works. cc @iterative/dvc could you review this? |
…eam outputs. Only if `--allow-missing` is passed. - Create `tests/func/repro` and extract `pull` and `allow_missing` to separate test files. Closes #9530
d15e48c to
03869f4
Compare
|
@skshetry I see you've disabled auto-merge, was that intentional? Sorry, clicked and only then noticed. |
|
I was trying to merge, but noticed that some tests were failing. I have rerun them, waiting for them to be green. :) |
Only if
--allow-missingis passed.tests/func/reproand extractpullandallow_missingto separate test files.Closes #9530