D7972: recover: don't verify by default
valentin.gatienbaron (Valentin Gatien-Baron)
phabricator at mercurial-scm.org
Wed Jan 22 19:50:25 UTC 2020
valentin.gatienbaron created this revision.
Herald added subscribers: mercurial-devel, mjpieters.
Herald added a reviewer: hg-reviewers.
REVISION SUMMARY
The reason is:
- it's not that hard to trigger interrupted transactions: just run out of disk space
- it takes forever to verify on large repos. Before --no-verify, I told people to C-c hg recover when the progress bar showed up. Now I tell them to pass --no-verify.
- I don't remember a single case where the verification step was useful
This is technically a change of behavior. Perhaps this would be better
suited for tweakdefaults?
REPOSITORY
rHG Mercurial
BRANCH
default
REVISION DETAIL
https://phab.mercurial-scm.org/D7972
AFFECTED FILES
mercurial/commands.py
tests/test-fncache.t
tests/test-journal-exists.t
tests/test-repair-strip.t
tests/test-rollback.t
CHANGE DETAILS
diff --git a/tests/test-rollback.t b/tests/test-rollback.t
--- a/tests/test-rollback.t
+++ b/tests/test-rollback.t
@@ -190,7 +190,7 @@
corrupt journal test
$ echo "foo" > .hg/store/journal
- $ hg recover
+ $ hg recover --verify
rolling back interrupted transaction
couldn't read journal entry 'foo\n'!
checking changesets
diff --git a/tests/test-repair-strip.t b/tests/test-repair-strip.t
--- a/tests/test-repair-strip.t
+++ b/tests/test-repair-strip.t
@@ -25,7 +25,9 @@
> else
> echo "(no journal)"
> fi
- > ls .hg/store/journal >/dev/null 2>&1 && hg recover
+ > if ls .hg/store/journal >/dev/null 2>&1; then
+ > hg recover --verify
+ > fi
> ls .hg/strip-backup/* >/dev/null 2>&1 && hg unbundle -q .hg/strip-backup/*
> rm -rf .hg/strip-backup
> }
diff --git a/tests/test-journal-exists.t b/tests/test-journal-exists.t
--- a/tests/test-journal-exists.t
+++ b/tests/test-journal-exists.t
@@ -15,11 +15,7 @@
$ hg recover
rolling back interrupted transaction
- checking changesets
- checking manifests
- crosschecking files in changesets and manifests
- checking files
- checked 1 changesets with 1 changes to 1 files
+ (verify step skipped, run `hg verify` to check your repository content)
recover, explicit verify
diff --git a/tests/test-fncache.t b/tests/test-fncache.t
--- a/tests/test-fncache.t
+++ b/tests/test-fncache.t
@@ -356,7 +356,7 @@
$ cat .hg/store/fncache | sort
data/y.i
data/z.i
- $ hg recover
+ $ hg recover --verify
rolling back interrupted transaction
checking changesets
checking manifests
diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -5671,7 +5671,7 @@
@command(
b'recover',
- [(b'', b'verify', True, b"run `hg verify` after successful recover"),],
+ [(b'', b'verify', False, b"run `hg verify` after successful recover"),],
helpcategory=command.CATEGORY_MAINTENANCE,
)
def recover(ui, repo, **opts):
To: valentin.gatienbaron, #hg-reviewers
Cc: mjpieters, mercurial-devel
More information about the Mercurial-devel
mailing list