annotate tests/test-mq-qsave.t @ 30706:2e4862646f02

repair: speed up stripping of many roots repair.strip() expects a set of root revisions to strip. It then builds the full set of descedants by walking the descandants of each. It is rare that more than a few roots get passed in, but if that happens, it will wastefully walk the changelog for each root. So let's just walk it once. I noticed this because the narrowhg extension was passing not only roots, but all the commits to strip. When there were tens of thousands of commits to strip, this resulted in quadratic behavior with that extension.
author Martin von Zweigbergk <martinvonz@google.com>
date Wed, 04 Jan 2017 10:07:12 -0800
parents b701610f6c56
children 55c6ebd11cb9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12324
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
1 $ echo "[extensions]" >> $HGRCPATH
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
2 $ echo "mq=" >> $HGRCPATH
2817
ff3edd1c1e27 Add basic qsave/qrestore test.
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
3
12324
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
4 $ hg init
2817
ff3edd1c1e27 Add basic qsave/qrestore test.
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
5
12324
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
6 $ echo 'base' > base
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
7 $ hg ci -Ambase
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
8 adding base
2817
ff3edd1c1e27 Add basic qsave/qrestore test.
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
9
12324
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
10 $ hg qnew -mmqbase mqbase
2817
ff3edd1c1e27 Add basic qsave/qrestore test.
Brendan Cully <brendan@kublai.com>
parents:
diff changeset
11
12324
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
12 $ hg qsave
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
13 $ hg qrestore 2
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
14 restoring status: hg patches saved state
b701610f6c56 tests: unify some of test-mq*
Adrian Buehlmann <adrian@cadifra.com>
parents: 2990
diff changeset
15