Error in WebRTC DEPS commit
Reported by
akintoye...@gmail.com,
Sep 16 2017
|
|||||||
Issue descriptionChrome Version : 61.0.3163.91 Syncing Chromium repo fails What is the expected result? Expect sync to succeed What happens instead? Got Error -> Error: Command 'git checkout --quiet f17e7774d7316fc4dda87c5e7d759ac33b20a52f' r eturned non-zero exit status 128 in c:\dev\cef61\chromium\src\third_party\webrtc fatal: reference is not a tree: f17e7774d7316fc4dda87c5e7d759ac33b20a52f Checked .\chromium\src\third_party\webrtc git history. f17e7774d7316fc4dda87c5e7d759ac33b20a52f not found. But f17e7774d7316fc4dda87c5e7d759ac33b20a52f is referenced in .\chromium\src\DEPS line 177.
,
Sep 17 2017
Chromium 61.0.3163.92 (not yet published to the release channel) has a DEPS at https://chromium.googlesource.com/chromium/src.git/+/61.0.3163.92/DEPS which references https://chromium.googlesource.com/external/webrtc/trunk/webrtc/+/524b4c74c2369c78e7494a342ebe63a0fd03825b which IS the last commit at the branch-heads/61 branch of the webrtc subtree mirror (the "one more commit compared to the DEPS of 61.0.3163.67" from my previous comment). If the goal is to build a recent version of Chromium, check out 61.0.3163.92 or later and build. If the goal is to create a build based off 61.0.3163.91, then that can only happen once this bug is fixed.
,
Sep 18 2017
I'm guessing this is related to recent changes in the webrtc repos in Issue 611808 .
,
Sep 18 2017
,
Sep 18 2017
Yes, this is definitely due to the migration. This is the problematic commit: https://chromium.googlesource.com/external/webrtc/trunk/webrtc/+/524b4c74c2369c78e7494a342ebe63a0fd03825b It shows up as having landed in webrtc on Aug 28, at 2:30pm Pacific. That's just one hour before the problematic commit (f17e7774...) showed up in chromium's m61 DEPS file: https://chromium.googlesource.com/chromium/src.git/+/8741349cb08d41869b62a531a2d61312cd5963e0 But 524b's commit message says "Cr-Mirrored-From: https://webrtc.googlesource.com/src", which is impossible, since that repo didn't exist back on Aug 28. And the first appearance of 524b in chromium's branch DEPS is on Sept 14th at 11pm: https://chromium.googlesource.com/chromium/src.git/+/5d1c36539a7569669d8263c731a48ff7cf245a2a So it is clear that 524b is a re-written version of f17e that shouldn't exist. Luckily, nothing has landed in webrtc's m61 branch since this bad commit, so we have a chance to rescue this. At this point I think our best option is: 1) Try to recover f17e from someone who already has it in their local checkout 2) Force-push it to webrtc/src/webrtc, overwriting the bad 524b commit 3) Land a set of commits in chromium/src, one for each release tag containing 524b, that set the hash back to the correct f17e. I need help from someone who has been doing m61 work for (1), and I need help from mmoss to sanity-check and help perform (3).
,
Sep 18 2017
The alternative, of course, would be to forego any force-pushing, and simply land a set of commits (like step 3 above) in chromium/src which update all instances of f17e to point to the new 524b instead. Michael, do you think that would be better?
,
Sep 18 2017
re: #6, it looks like there are quite a few more DEPS that reference f17e than 524b, so it would probably be cleaner and faster if we do what you outlined in #5. Let me see if I can find a copy of the old commit somewhere.
,
Sep 18 2017
I do have the old commit, so I'll try to do those steps. I'll also add step 0 and copy the current commit to another branch, to make sure it's still valid until I can get all the release DEPS updated.
,
Sep 18 2017
I can't seem to do step (2). I have access to push branches (I was able to delete and recreate the 61 branch), but when I try to push the old commit, it seems to want to push a whole history of commits, even though everything but that one missing commit is already in the repo. This causes it to fail with: remote: Cannot push more than 10000 commits to refs/heads/61_restore without skip-validation option I've tried to push to both refs/branch-heads/61 branch and a new, temp branch, like refs/heads/61_recover, but they both fail with the same error. Any ideas?
,
Sep 18 2017
Fixed #10 by using "-o skip-validation" when pushing and adding Forge Server ACL (no clue why that's needed, but found it mentioned in the docs).
,
Sep 18 2017
Step (2) https://chromium.googlesource.com/external/webrtc/trunk/webrtc/+log/refs/branch-heads/61 Now both commits exist and should allow any DEPS to work. Should we even bother rewriting the old release DEPS, or just leave the "61_saved" branch around to satisfy the references to 524b4c74c?
,
Sep 20 2017
I'm just going to call this done. If anybody really feels strongly about fixing the old references to 524b4c74c, and getting rid of the "61_saved" branch, feel free to reopen.
,
Sep 21 2017
Michael: I bet that https://bugs.chromium.org/p/chromium/issues/detail?id=766403#c4 is related to this. Can you dig in to that to make sure it is/is not related?
,
Sep 21 2017
Looks like that bug was closed. IIUC, the problem was caused by the host change in the DEPS (webrtc.googlesource vs. chromium.googlesource), not by this bad commit, right? |
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by rob@robwu.nl
, Sep 17 2017Labels: -Pri-3 Pri-0
Status: Untriaged (was: Unconfirmed)