[Bug 5315] New: histedit --continue: abort: 00changelog.i at 88170a8325f3: no node!
mercurial-bugs at selenic.com
mercurial-bugs at selenic.com
Fri Jul 29 15:43:12 UTC 2016
https://bz.mercurial-scm.org/show_bug.cgi?id=5315
Bug ID: 5315
Summary: histedit --continue: abort:
00changelog.i at 88170a8325f3: no node!
Product: Mercurial
Version: unspecified
Hardware: PC
OS: Linux
Status: UNCONFIRMED
Severity: feature
Priority: wish
Component: histedit
Assignee: bugzilla at selenic.com
Reporter: ethan.glasser.camp at gmail.com
CC: mercurial-devel at selenic.com
I was at the end of a histedit when I got the above message. I asked on IRC and
they helped me through recovery using hg unbundle on the commit (which I
happened to have in .hg/strip-backup), after which point the hg histedit
--continue worked. Here is the full traceback:
> hg --debug --traceback histedit --continue
automatically setting Bugzilla API Key auth https://reviewboard-hg.mozilla.org
Traceback (most recent call last):
File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 191, in
_runcatch
return _dispatch(req)
File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 924, in
_dispatch
cmdpats, cmdoptions)
File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 681, in
runcommand
ret = _runcommand(ui, options, cmd, d)
File "/usr/lib64/python2.7/site-packages/mercurial/extensions.py", line 195,
in closure
return func(*(args + a), **kw)
File "/usr/lib64/python2.7/site-packages/hgext/pager.py", line 143, in
pagecmd
return orig(ui, options, cmd, cmdfunc)
File "/usr/lib64/python2.7/site-packages/mercurial/extensions.py", line 195,
in closure
return func(*(args + a), **kw)
File "/usr/lib64/python2.7/site-packages/hgext/color.py", line 518, in
colorcmd
return orig(ui_, opts, cmd, cmdfunc)
File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 1055,
in _runcommand
return checkargs()
File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 1015,
in checkargs
return cmdfunc()
File "/usr/lib64/python2.7/site-packages/mercurial/dispatch.py", line 921, in
<lambda>
d = lambda: util.checksignature(func)(ui, *args, **cmdoptions)
File "/usr/lib64/python2.7/site-packages/mercurial/util.py", line 991, in
check
return func(*args, **kwargs)
File "/usr/lib64/python2.7/site-packages/hgext/histedit.py", line 972, in
histedit
_histedit(ui, repo, state, *freeargs, **opts)
File "/usr/lib64/python2.7/site-packages/hgext/histedit.py", line 1172, in
_histedit
mapping, tmpnodes, created, ntm = processreplacement(state)
File "/usr/lib64/python2.7/site-packages/hgext/histedit.py", line 1411, in
processreplacement
newtopmost = sorted(new, key=state.repo.changelog.rev)[-1]
File "/usr/lib64/python2.7/site-packages/mercurial/changelog.py", line 209,
in rev
r = super(changelog, self).rev(node)
File "/usr/lib64/python2.7/site-packages/mercurial/revlog.py", line 360, in
rev
raise LookupError(node, self.indexfile, _('no node'))
LookupError: 00changelog.i at 88170a8325f3: no node
abort: 00changelog.i at 88170a8325f3: no node!
I'm not exactly sure how I caused the commit to go missing in the first place.
I am not using evolve or mq extensions and I did not issue any strip or prune
commands myself. As best as I can remember, the things I did just before this
happened were as follows:
I was doing a histedit of a seven-commit series. I thought commit 4 was OK and
I had chosen to "edit" commit 5, but when I was running the tests I discovered
that I had a bug in commit 4 caused by a missing import. I added the import to
the file that it wasn't in, and all my tests (including the ones from commit 5)
started passing. Then I did a hg commit file-that-was-missing-the-import.js
--amend, and then hg histedit --continue to save the remaining changes as
commit 5.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Mercurial-devel
mailing list