Issue #1582 duplicate

strip -k on tip changeset causes error

Mike Wilkes
created an issue

I have started using strip -k to fold, or to put all my changes back into my working directory.

If I do 'hg strip -k -r 1343' in the Output Log where 1343 is the current changeset, the strip does what it's supposed to, but I get the following error dialog.

{{{

!python

Mercurial version (2.0.2). TortoiseHg version (2.2.2) Command: CWD: D:\cppib\workspace\apf Encoding: cp1252 Extensions loaded: mq, mercurial_keyring, rebase Python version: 2.6.6 (r266:84297, Aug 24 2010, 18:13:38) [MSC v.1500 64 bit (AMD64)] Windows version: (5, 2, 3790, 2, 'Service Pack 2') Processor architecture: x64 ** Qt-4.7.4 PyQt-4.8.6 Traceback (most recent call last): File "tortoisehg\hgqt\commit.pyo", line 491, in repositoryChanged File "tortoisehg\hgqt\commit.pyo", line 527, in refresh File "tortoisehg\hgqt\csinfo.pyo", line 411, in update File "tortoisehg\hgqt\csinfo.pyo", line 324, in get_markup File "tortoisehg\hgqt\csinfo.pyo", line 270, in get_markup File "tortoisehg\hgqt\csinfo.pyo", line 210, in get_data File "tortoisehg\hgqt\revpanel.pyo", line 88, in data_func File "mercurial\context.pyo", line 113, in branch File "mercurial\util.pyo", line 239, in get File "mercurial\context.pyo", line 60, in _changeset File "mercurial\changelog.pyo", line 192, in read File "mercurial\revlog.pyo", line 906, in revision File "mercurial\revlog.pyo", line 915, in _checkhash RevlogError: integrity check failed on 00changelog.i:1343

}}}

Comments (4)

  1. Steve Borho
    • changed status to open

    note that there is a dialog for compressing changes.

    what's happening here is that the strip is occuring while the workbench is refreshing and it just gets caught at a bad time. There's not a lot I can do to prevent it; Mercurial's internals do not expect for files to get shorter, and so they throw exceptions from just about anywhere.

    If the repo passes verify, ignore these exceptions.

  2. Mike Wilkes reporter

    I don't see an option for enabling -k (i.e. keep) on the modify history...strip... dialog. Or is it somewhere else?

    I suspected it might be a timing issue, as I don't always see it. If something can be done to 'hide' the issue, great, but not a major item (and I've changed the priority as well).

  3. Log in to comment