-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
repro: check for hash mismatch between deleted dependencies and upstream outputs. #9533
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.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
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 Lines 590 to 600 in 3e0f2ba
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-missing
is passed.tests/func/repro
and extractpull
andallow_missing
to separate test files.Closes #9530