Closed geofft closed 1 year ago
It looks like what's going on is that we're hitting this Pokémon exception handler: https://github.com/twosigma/git-meta/blob/9ed0aff5fe99843e07b60a5f6062ef70eac3d7e5/node/lib/util/submodule_rebase_util.js#L183-L187
The exception being ignored is of the form
SubmoduleRebaseUtil
continueSubmodules
Applying 'message'
Submodule s continuing rewrite from ade8295420afaf169f68655d473e02b5ca20bef5 onto 80692b65d57bfa7f3199e7e40745d02a3fd9d64d.
[Error: object not found - no match for id (ade8295420afaf169f68655d473e02b5ca20bef5)] {
errno: -3,
errorFunction: 'Rebase.commit'
}
I don't understand why we'd get "object not found" in this case. It's the same as the thing being rewritten from.
I get the same error bumping nodegit to 0.27, so it's not that.
I dumped the submodule's "status" out of StatusUtil.getRepoStatus
, and I see
Applying 'message'
{"d_commit":{"d_sha":"20a4ca249fc8d04e807d07f4700651e86096f4d0","d_url":"/tmp/git-meta-test2022311-27614-uxptu7.41xm/a"},"d_index":{"d_sha":"8c55b375f7a10e55e30f83e1ff5d99f826597225","d_url":"/tmp/git-meta-test2022311-27614-uxptu7.41xm/a","d_relation":4},"d_workdir":{"d_status":{"d_currentBranchName":null,"d_headCommit":"8c55b375f7a10e55e30f83e1ff5d99f826597225","d_staged":{"q":1},"d_workdir":{},"d_submodules":{},"d_rebase":{"d_headName":"HEAD","d_originalHead":"20a4ca249fc8d04e807d07f4700651e86096f4d0","d_onto":"8c55b375f7a10e55e30f83e1ff5d99f826597225"},"d_sequencerState":null},"d_relation":0}}
Submodule s continuing rewrite from 20a4ca249fc8d04e807d07f4700651e86096f4d0 onto 8c55b375f7a10e55e30f83e1ff5d99f826597225.
[Error: object not found - no match for id (20a4ca249fc8d04e807d07f4700651e86096f4d0)] {
errno: -3,
errorFunction: 'Rebase.commit'
}
It's odd that this is the reported current comit (.d_commit.d_sha
) that it's saying is not found.
This caused CI to fail on #863.