tests/test-issue586.t
author spectral <spectral@google.com>
Thu, 27 Sep 2018 20:16:48 -0700
changeset 39985 731961d972ba
parent 34661 eb586ed5d8ce
permissions -rw-r--r--
treemanifests: remove _loadalllazy in _diff() The benchmarks below use a similar setup as in ee7ee0c516ca and my other recent commits. Yes, in some cases this runs in literally 5% of the time it previously took. before = a6f8ab53 diff --git: repo | N | T | before (mean +- stdev) | after (mean +- stdev) | % of before ------+---+---+------------------------+-----------------------+------------ m-u | | | 1.301 s +- 0.004 s | 1.309 s +- 0.012 s | 100.6% m-u | | x | 1.303 s +- 0.009 s | 1.302 s +- 0.006 s | 99.9% m-u | x | | 1.308 s +- 0.006 s | 1.309 s +- 0.007 s | 100.1% m-u | x | x | 85.7 ms +- 0.6 ms | 86.0 ms +- 0.3 ms | 100.4% l-d-r | | | 197.5 ms +- 0.7 ms | 197.8 ms +- 2.2 ms | 100.2% l-d-r | | x | 199.4 ms +- 0.6 ms | 199.3 ms +- 0.9 ms | 99.9% l-d-r | x | | 86.1 ms +- 0.5 ms | 85.8 ms +- 0.9 ms | 99.7% l-d-r | x | x | 64.4 ms +- 0.4 ms | 64.4 ms +- 0.3 ms | 100.0% diff -c . --git: repo | N | T | before (mean +- stdev) | after (mean +- stdev) | % of before ------+---+---+------------------------+-----------------------+------------ m-u | | | 236.7 ms +- 1.1 ms | 236.5 ms +- 1.3 ms | 99.9% m-u | | x | 158.7 ms +- 1.0 ms | 128.0 ms +- 1.0 ms | 80.7% <-- m-u | x | | 239.7 ms +- 1.8 ms | 238.1 ms +- 1.5 ms | 99.3% m-u | x | x | 132.4 ms +- 0.9 ms | 132.3 ms +- 0.6 ms | 99.9% l-d-r | | | 81.8 ms +- 0.4 ms | 81.8 ms +- 0.3 ms | 100.0% l-d-r | | x | 3.894 s +- 0.017 s | 193.6 ms +- 0.4 ms | 5.0% <-- l-d-r | x | | 106.9 ms +- 0.4 ms | 106.6 ms +- 0.3 ms | 99.7% l-d-r | x | x | 182.7 ms +- 0.8 ms | 183.3 ms +- 0.9 ms | 100.3% rebase -r . --keep -d .^^: repo | N | T | before (mean +- stdev) | after (mean +- stdev) | % of before ------+---+---+------------------------+-----------------------+------------ m-u | | | 5.615 s +- 0.109 s | 5.562 s +- 0.015 s | 99.1% m-u | | x | 5.701 s +- 0.027 s | 5.715 s +- 0.023 s | 100.2% m-u | x | | 5.572 s +- 0.128 s | 5.613 s +- 0.182 s | 100.7% m-u | x | x | 633.3 ms +- 28.7 ms | 636.2 ms +- 13.8 ms | 100.5% l-d-r | | | 666.4 ms +- 17.0 ms | 658.5 ms +- 9.3 ms | 98.8% l-d-r | | x | 6.520 s +- 0.070 s | 6.505 s +- 0.026 s | 99.8% l-d-r | x | | 279.0 ms +- 13.0 ms | 276.5 ms +- 4.7 ms | 99.1% l-d-r | x | x | 1.636 s +- 0.058 s | 1.657 s +- 0.014 s | 101.3% status --change . --copies: repo | N | T | before (mean +- stdev) | after (mean +- stdev) | % of before ------+---+---+------------------------+-----------------------+------------ m-u | | | 218.6 ms +- 1.4 ms | 217.9 ms +- 1.5 ms | 99.7% m-u | | x | 138.5 ms +- 0.4 ms | 108.4 ms +- 0.2 ms | 78.3% <-- m-u | x | | 220.1 ms +- 1.3 ms | 219.7 ms +- 1.5 ms | 99.8% m-u | x | x | 113.2 ms +- 0.4 ms | 112.4 ms +- 0.8 ms | 99.3% l-d-r | | | 80.2 ms +- 0.3 ms | 80.6 ms +- 0.6 ms | 100.5% l-d-r | | x | 3.899 s +- 0.020 s | 194.8 ms +- 4.0 ms | 5.0% <-- l-d-r | x | | 83.4 ms +- 0.8 ms | 83.2 ms +- 0.2 ms | 99.8% l-d-r | x | x | 732.2 ms +- 4.3 ms | 194.9 ms +- 1.0 ms | 26.6% <-- status --copies: repo | N | T | before (mean +- stdev) | after (mean +- stdev) | % of before ------+---+---+------------------------+-----------------------+------------ m-u | | | 1.917 s +- 0.005 s | 1.914 s +- 0.004 s | 99.8% m-u | | x | 1.909 s +- 0.012 s | 1.934 s +- 0.004 s | 101.3% m-u | x | | 1.915 s +- 0.005 s | 1.904 s +- 0.004 s | 99.4% m-u | x | x | 94.8 ms +- 0.3 ms | 94.7 ms +- 0.2 ms | 99.9% l-d-r | | | 593.9 ms +- 1.2 ms | 594.6 ms +- 9.4 ms | 100.1% l-d-r | | x | 595.2 ms +- 3.8 ms | 597.2 ms +- 2.6 ms | 100.3% l-d-r | x | | 182.5 ms +- 1.6 ms | 182.1 ms +- 0.6 ms | 99.8% l-d-r | x | x | 149.6 ms +- 0.9 ms | 149.1 ms +- 0.8 ms | 99.7% update $rev^; ~/src/hg/hg{hg}/hg update $rev: repo | N | T | before (mean +- stdev) | after (mean +- stdev) | % of before ------+---+---+------------------------+-----------------------+------------ m-u | | | 3.121 s +- 0.007 s | 3.129 s +- 0.012 s | 100.3% m-u | | x | 2.972 s +- 0.011 s | 2.981 s +- 0.012 s | 100.3% m-u | x | | 3.144 s +- 0.014 s | 3.141 s +- 0.011 s | 99.9% m-u | x | x | 312.2 ms +- 2.4 ms | 312.3 ms +- 2.1 ms | 100.0% l-d-r | | | 444.4 ms +- 4.3 ms | 446.9 ms +- 5.3 ms | 100.6% l-d-r | | x | 9.159 s +- 0.069 s | 9.182 s +- 0.040 s | 100.3% l-d-r | x | | 254.6 ms +- 1.6 ms | 255.2 ms +- 1.6 ms | 100.2% l-d-r | x | x | 1.525 s +- 0.007 s | 1.577 s +- 0.007 s | 103.4% <--? Differential Revision: https://phab.mercurial-scm.org/D4845
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 11846
diff changeset
     1
Issue586: removing remote files after merge appears to corrupt the
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 11846
diff changeset
     2
dirstate
4535
720ae5085ee3 commit: fix bug where dirstate for removed file is confused
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     3
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
     4
  $ hg init a
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
     5
  $ cd a
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
     6
  $ echo a > a
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
     7
  $ hg ci -Ama
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
     8
  adding a
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
     9
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    10
  $ hg init ../b
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    11
  $ cd ../b
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    12
  $ echo b > b
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    13
  $ hg ci -Amb
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    14
  adding b
4535
720ae5085ee3 commit: fix bug where dirstate for removed file is confused
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    15
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    16
  $ hg pull -f ../a
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    17
  pulling from ../a
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    18
  searching for changes
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    19
  warning: repository is unrelated
13742
7abab875e647 discovery: avoid discovery when local graph is a subset of remote
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 12399
diff changeset
    20
  requesting all changes
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    21
  adding changesets
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    22
  adding manifests
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    23
  adding file changes
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    24
  added 1 changesets with 1 changes to 1 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 28251
diff changeset
    25
  new changesets cb9a9f314b8b
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    26
  (run 'hg heads' to see heads, 'hg merge' to merge)
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    27
  $ hg merge
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    28
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    29
  (branch merge, don't forget to commit)
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    30
  $ hg rm -f a
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    31
  $ hg ci -Amc
4535
720ae5085ee3 commit: fix bug where dirstate for removed file is confused
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    32
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    33
  $ hg st -A
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    34
  C b
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    35
  $ cd ..
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    36
12399
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 11846
diff changeset
    37
Issue1433: Traceback after two unrelated pull, two move, a merge and
4fee1fd3de9a tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents: 11846
diff changeset
    38
a commit (related to issue586)
4535
720ae5085ee3 commit: fix bug where dirstate for removed file is confused
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    39
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    40
create test repos
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    41
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    42
  $ hg init repoa
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    43
  $ touch repoa/a
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    44
  $ hg -R repoa ci -Am adda
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    45
  adding a
7564
f1af59451c0c localrepo: fix bad manifest delta generation (issue1433)
Patrick Mezard <pmezard@gmail.com>
parents: 4535
diff changeset
    46
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    47
  $ hg init repob
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    48
  $ touch repob/b
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    49
  $ hg -R repob ci -Am addb
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    50
  adding b
7564
f1af59451c0c localrepo: fix bad manifest delta generation (issue1433)
Patrick Mezard <pmezard@gmail.com>
parents: 4535
diff changeset
    51
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    52
  $ hg init repoc
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    53
  $ cd repoc
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    54
  $ hg pull ../repoa
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    55
  pulling from ../repoa
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    56
  requesting all changes
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    57
  adding changesets
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    58
  adding manifests
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    59
  adding file changes
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    60
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 28251
diff changeset
    61
  new changesets 7132ab4568ac
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    62
  (run 'hg update' to get a working copy)
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    63
  $ hg update
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    64
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    65
  $ mkdir tst
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    66
  $ hg mv * tst
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    67
  $ hg ci -m "import a in tst"
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    68
  $ hg pull -f ../repob
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    69
  pulling from ../repob
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    70
  searching for changes
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    71
  warning: repository is unrelated
13742
7abab875e647 discovery: avoid discovery when local graph is a subset of remote
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents: 12399
diff changeset
    72
  requesting all changes
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    73
  adding changesets
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    74
  adding manifests
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    75
  adding file changes
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    76
  added 1 changesets with 1 changes to 1 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 28251
diff changeset
    77
  new changesets 5ddceb349652
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    78
  (run 'hg heads' to see heads, 'hg merge' to merge)
7564
f1af59451c0c localrepo: fix bad manifest delta generation (issue1433)
Patrick Mezard <pmezard@gmail.com>
parents: 4535
diff changeset
    79
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    80
merge both repos
7564
f1af59451c0c localrepo: fix bad manifest delta generation (issue1433)
Patrick Mezard <pmezard@gmail.com>
parents: 4535
diff changeset
    81
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    82
  $ hg merge
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    83
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    84
  (branch merge, don't forget to commit)
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    85
  $ mkdir src
7564
f1af59451c0c localrepo: fix bad manifest delta generation (issue1433)
Patrick Mezard <pmezard@gmail.com>
parents: 4535
diff changeset
    86
11846
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    87
move b content
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    88
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    89
  $ hg mv b src
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    90
  $ hg ci -m "import b in src"
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    91
  $ hg manifest
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    92
  src/b
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    93
  tst/a
650402ea4a4f tests: unify test-586
Martin Geisler <mg@lazybytes.net>
parents: 7564
diff changeset
    94
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 13742
diff changeset
    95
  $ cd ..