Binary file content became empty upon relanding a backed-out revision
Categories
(Conduit :: Lando, defect, P3)
Tracking
(Not tracked)
People
(Reporter: robwu, Unassigned)
Details
(Keywords: conduit-triaged)
Phabricator and/or Lando are not properly keeping track of binary files in a patch.
This was the initial revision, which was backed out for a failure from another patch in the patch stack:
https://phabricator.services.mozilla.com/rMOZILLACENTRAL8b4e286967c0e5b038adf4adcb9faffac5ac9c86
After fixing that other patch (earlier) in the patch stack, I tried to reland the whole patch stack, without further modifications:
https://phabricator.services.mozilla.com/rMOZILLACENTRAL56b2b19a9bc18bcf949bd2e081cb41cad886d91f
This was however backed out again, because somehow the binary file (addons-mlbf.bin) was emptied. I was able to reland after updating the patch from my local checkout, but I didn't expect the binary file to lose its contents in the first place.
I also see other strange things in that Phabricator revision:
- The first landing attempt shows that the diff relative to the previous revision pushed from my local checkout goes from "File size 0B" to "63 KB", despite that previous revision showing a File size of 63KB.
I can also observe this incorrect diff summary in the last diff - https://phabricator.services.mozilla.com/D73159?vs=270122&id=270150#toc - Between the "bad" and "good" (re)landed, the only difference is "File Mode", from 10064 to
null
. There is no apparent change in file content or file size: https://phabricator.services.mozilla.com/D73159?vs=269813&id=270070#toc
Just in case it matters: I pushed my patches with phlay version 0.2.3.
(In reply to Rob Wu [:robwu] from comment #0)
Just in case it matters: I pushed my patches with phlay version 0.2.3.
It's possible that phlay is involved in the issue. Can you please try again using a moz-phab?
Note that phlay is deprecated, and it's recommended that you use moz-phab instead:
From its README:
NOTE This is not an official mozilla project, and is not receiving active development or releases. Occasionally the phabricator configuration will change, and uploads with phlay will fail until it is fixed.
I would generally recommend using the officially maintained moz-phab tool, as it is tested against our specific phabricator config, has more features, and is updated more frequently.
Reporter | ||
Comment 2•5 years ago
|
||
Is there a stage / dev server where I can try the following flow:
- push with moz-phab to Phabricator.
- land with Lando.
- backout somehow.
- reland with Lando.
?
I'm not so keen on using mozilla-central for that.
There's a dev install of Phabricator (https://phabricator-dev.allizom.org/) however there isn't a staging mozilla-central, so there also isn't a staging version of Lando that can be used to land code.
You'd at least be able to check that moz-phab does the right thing when uploading binary files to Phabricator.
Reporter | ||
Comment 4•5 years ago
|
||
(In reply to Byron Jones ‹:glob› 🎈 from comment #3)
There's a dev install of Phabricator (https://phabricator-dev.allizom.org/) however there isn't a staging mozilla-central, so there also isn't a staging version of Lando that can be used to land code.
You'd at least be able to check that moz-phab does the right thing when uploading binary files to Phabricator.
Depends on the definition of "right". I am at least able to send the patch to Lando and get it commited. The only way that phlay could be of relevance here is if it somehow fails to add metadata that becomes relevant upon relanding.
In the bug report I shared links to the exact revisions that exhibit the bug. Basically:
- Diff 3 (pushed by me to Phabricator) - I send this to Lando.
- Diff 4 (generated by Lando upon landing) - backed out
- (ancestor patch in patch stack was updated; this specific patch is not touched however)
- Diff 5 (generated by Lando upon landing attempt #2) - backed out because binary file is empty --- this is the bug
- Diff 6 (pushed by me to Phabricator) - I send this to Lando.
- Diff 7 (generated by Lando upon landing attempt #3) - sticks.
Updated•5 years ago
|
Updated•3 years ago
|
Description
•