I just pulled from hg-committed tonight, went to rebase the leftovers, and got this with 4.6 and evolve 8.0: $ hg rebase -b . -d tip --traceback Traceback (most recent call last): File "mercurial\scmutil.pyo", line 160, in callcatch File "mercurial\dispatch.pyo", line 341, in _runcatchfunc File "mercurial\dispatch.pyo", line 971, in _dispatch File "mercurial\dispatch.pyo", line 727, in runcommand File "mercurial\dispatch.pyo", line 979, in _runcommand File "mercurial\dispatch.pyo", line 968, in <lambda> File "mercurial\util.pyo", line 1553, in check File "mercurial\util.pyo", line 1553, in check File "C:/Users/Matt/Projects/hg-evolve/hgext3rd\evolve\__init__.py", line 793, in warnobserrors File "mercurial\util.pyo", line 1553, in check File "mercurial\util.pyo", line 1553, in check File "hgext\mq.pyo", line 3599, in mqcommand File "mercurial\util.pyo", line 1553, in check File "hgext\rebase.pyo", line 830, in rebase File "hgext\rebase.pyo", line 904, in _origrebase File "hgext\rebase.pyo", line 420, in _performrebase File "hgext\rebase.pyo", line 322, in _handleskippingobsolete File "hgext\rebase.pyo", line 1818, in _computeobsoletenotrebased File "hgext\rebase.pyo", line 1818, in <genexpr> RevlogError: RevlogError abort: RevlogError! I assume that this would work if I used -r or -s instead of -b, since I've never seen this before. `hg verify` says everything is OK. The full graph in this range looks like this: $ hg log -r 44426:44436 -G --hidden o changeset: 44436:36ba5dba372d | parent: 44426:16f93a3b8b05 | user: Sushil khanchi <sushilkhanchi97@gmail.com> | date: Wed May 30 14:20:09 2018 +0530 | summary: advanceboundary: add dryrun parameter | | @ changeset: 44435:918bcbf7e619 | | user: Matt Harbison <matt_harbison@yahoo.com> | | date: Sun Jun 03 01:16:49 2018 -0400 | | instability: orphan | | summary: xxx-terse: don't terse away explicit paths (issue5724) | | | x changeset: 44434:dccb37649baa | | user: Matt Harbison <matt_harbison@yahoo.com> | | date: Sat Jun 02 22:18:12 2018 -0400 | | obsolete: rewritten as 44439:51e420a7a41a by Yuya Nishihara <yuya@tcha.org> | | summary: cmdutil: use internal separators when building the terse list | | | x changeset: 44433:c19516ec1321 | | parent: 44427:e134101a72df | | user: Matt Harbison <matt_harbison@yahoo.com> | | date: Sat Jun 02 13:44:44 2018 -0400 | | obsolete: rewritten using evolve as 44438:79c54e7c0c52 by Yuya Nishihara <yuya@tcha.org> | | summary: rebase: prioritize indicating an interrupted rebase over update (issue5838) | | | | x changeset: 44432:a46a6e858b2a | |/ parent: 44427:e134101a72df | | user: Matt Harbison <matt_harbison@yahoo.com> | | date: Sat Jun 02 13:44:44 2018 -0400 | | obsolete: reworded using amend as 44433:c19516ec1321 | | summary: rebase: prioritize indicating an interrupted rebase over update (issue5838) | | | | x changeset: 44431:e90f0e4a2ecd | |/ parent: 44427:e134101a72df | | user: Matt Harbison <matt_harbison@yahoo.com> | | date: Sat Jun 02 13:44:44 2018 -0400 | | obsolete: rewritten using amend as 44432:a46a6e858b2a | | summary: rebase: prioritize indicating an interrupted rebase over update (issue5838) | | | | x changeset: 44430:b7b7fba3f038 | | | user: Matt Harbison <matt_harbison@yahoo.com> | | | date: Sun Jun 03 01:16:49 2018 -0400 | | | obsolete: rebased using evolve as 44435:918bcbf7e619 | | | summary: xxx-terse: don't terse away explicit paths (issue5724) | | | | | x changeset: 44429:8f334d8b909c | | | user: Matt Harbison <matt_harbison@yahoo.com> | | | date: Sat Jun 02 22:18:12 2018 -0400 | | | obsolete: rebased using evolve as 44434:dccb37649baa | | | summary: cmdutil: use internal separators when building the terse list | | | | | x changeset: 44428:64c9e910deec | |/ user: Matt Harbison <matt_harbison@yahoo.com> | | date: Sat Jun 02 13:44:44 2018 -0400 | | obsolete: amended using uncommit as 44431:e90f0e4a2ecd | | summary: rebase: prioritize indicating an interrupted rebase over update (issue5838) | | | x changeset: 44427:e134101a72df |/ user: Matt Harbison <matt_harbison@yahoo.com> | date: Sat Jun 02 13:25:45 2018 -0400 | obsolete: rewritten using amend as 44437:712d6f535fc9 by Yuya Nishihara <yuya@tcha.org> | summary: tests: demonstrate inconsistent messaging around interrupted rebases | o changeset: 44426:16f93a3b8b05 | parent: 44420:22edd5321489 ~ user: Sangeet Kumar Mishra <mail2sangeetmishra@gmail.com> date: Wed May 30 17:37:17 2018 +0530 summary: grep: enable passing wdir as a revision
https://www.mercurial-scm.org/repo/hg/file/4.6/hgext/rebase.py#l1818 Perhaps, it has to filter out unknown nodes.
(In reply to Yuya Nishihara from comment #1) Indeed. I finally figured out a test for it, and I'm letting it run overnight.
Fixed by https://mercurial-scm.org/repo/hg/rev/69d1cafe75f2 Matt Harbison <matt_harbison@yahoo.com> rebase: avoid RevlogError when computing obsoletenotrebased (issue5907) The key to reproducing this seems to be missing an obsolete node that is not an ancestor of the destination. (please test the fix)
Bug was set to TESTING for 7 days, resolving