Issue #1582 duplicate

strip -k on tip changeset causes error

Mike Wilkes avatarMike 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.

** 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

    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
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.