tests/test-excessive-merge.t
author Augie Fackler <augie@google.com>
Tue, 20 Jan 2015 13:38:07 -0500
changeset 24018 26d6a6a78c1d
parent 17132 b87acfda5268
child 30155 b7a966ce89ed
permissions -rw-r--r--
obsolete: use parsers.fm1readmarker if it exists for a ~38% perf win This moves perfloadmarkers on my linux workstation (63494 markers from mpm, crew, and myself) performance from ! wall 0.357657 comb 0.360000 user 0.350000 sys 0.010000 (best of 28) to ! wall 0.222345 comb 0.220000 user 0.210000 sys 0.010000 (best of 41) which is a pretty good improvement. On my BSD machine, which is ancient and slow, before: ! wall 3.584964 comb 3.578125 user 3.539062 sys 0.039062 (best of 3) after: ! wall 2.267974 comb 2.265625 user 2.195312 sys 0.070312 (best of 5) I feel like we could do better by moving the whole generator function into C, but I didn't want to tackle that right away.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
     1
  $ hg init
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     2
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
     3
  $ echo foo > a
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
     4
  $ echo foo > b
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
     5
  $ hg add a b
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
     6
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
     7
  $ hg ci -m "test"
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
     8
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
     9
  $ echo blah > a
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    10
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    11
  $ hg ci -m "branch a"
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    12
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    13
  $ hg co 0
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    14
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    15
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    16
  $ echo blah > b
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    17
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    18
  $ hg ci -m "branch b"
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    19
  created new head
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    20
  $ HGMERGE=true hg merge 1
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    21
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    22
  (branch merge, don't forget to commit)
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    23
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    24
  $ hg ci -m "merge b/a -> blah"
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    25
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    26
  $ hg co 1
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    27
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    28
  $ HGMERGE=true hg merge 2
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    29
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    30
  (branch merge, don't forget to commit)
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    31
  $ hg ci -m "merge a/b -> blah"
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    32
  created new head
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    33
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    34
  $ hg log
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    35
  changeset:   4:2ee31f665a86
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    36
  tag:         tip
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    37
  parent:      1:96155394af80
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    38
  parent:      2:92cc4c306b19
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    39
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    40
  date:        Thu Jan 01 00:00:00 1970 +0000
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    41
  summary:     merge a/b -> blah
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    42
  
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    43
  changeset:   3:e16a66a37edd
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    44
  parent:      2:92cc4c306b19
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    45
  parent:      1:96155394af80
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    46
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    47
  date:        Thu Jan 01 00:00:00 1970 +0000
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    48
  summary:     merge b/a -> blah
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    49
  
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    50
  changeset:   2:92cc4c306b19
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    51
  parent:      0:5e0375449e74
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    52
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    53
  date:        Thu Jan 01 00:00:00 1970 +0000
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    54
  summary:     branch b
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    55
  
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    56
  changeset:   1:96155394af80
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    57
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    58
  date:        Thu Jan 01 00:00:00 1970 +0000
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    59
  summary:     branch a
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    60
  
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    61
  changeset:   0:5e0375449e74
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    62
  user:        test
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11974
diff changeset
    63
  date:        Thu Jan 01 00:00:00 1970 +0000
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    64
  summary:     test
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    65
  
14323
a79fea6b3e77 debugindex etc.: add --changelog and --manifest options
Sune Foldager <cryo@cyanite.org>
parents: 14182
diff changeset
    66
  $ hg debugindex --changelog
17132
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 14323
diff changeset
    67
     rev    offset  length  ..... linkrev nodeid       p1           p2 (re)
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 14323
diff changeset
    68
       0         0      60  .....       0 5e0375449e74 000000000000 000000000000 (re)
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 14323
diff changeset
    69
       1        60      62  .....       1 96155394af80 5e0375449e74 000000000000 (re)
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 14323
diff changeset
    70
       2       122      62  .....       2 92cc4c306b19 5e0375449e74 000000000000 (re)
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 14323
diff changeset
    71
       3       184      69  .....       3 e16a66a37edd 92cc4c306b19 96155394af80 (re)
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 14323
diff changeset
    72
       4       253      29  .....       4 2ee31f665a86 96155394af80 92cc4c306b19 (re)
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    73
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    74
revision 1
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    75
  $ hg manifest --debug 1
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    76
  79d7492df40aa0fa093ec4209be78043c181f094 644   a
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    77
  2ed2a3912a0b24502043eae84ee4b279c18b90dd 644   b
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    78
revision 2
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    79
  $ hg manifest --debug 2
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    80
  2ed2a3912a0b24502043eae84ee4b279c18b90dd 644   a
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    81
  79d7492df40aa0fa093ec4209be78043c181f094 644   b
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    82
revision 3
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    83
  $ hg manifest --debug 3
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    84
  79d7492df40aa0fa093ec4209be78043c181f094 644   a
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    85
  79d7492df40aa0fa093ec4209be78043c181f094 644   b
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    86
revision 4
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    87
  $ hg manifest --debug 4
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    88
  79d7492df40aa0fa093ec4209be78043c181f094 644   a
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    89
  79d7492df40aa0fa093ec4209be78043c181f094 644   b
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    90
14182
ec5886db9dc6 tests: fix deprecated use of hg debugdata/debugindex
Sune Foldager <cryo@cyanite.org>
parents: 12156
diff changeset
    91
  $ hg debugindex a
17132
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 14323
diff changeset
    92
     rev    offset  length  ..... linkrev nodeid       p1           p2 (re)
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 14323
diff changeset
    93
       0         0       5  .....       0 2ed2a3912a0b 000000000000 000000000000 (re)
b87acfda5268 tests: reduce spurious failures when run with generaldelta
Bryan O'Sullivan <bryano@fb.com>
parents: 14323
diff changeset
    94
       1         5       6  .....       1 79d7492df40a 2ed2a3912a0b 000000000000 (re)
1716
ef8cd889a78b Refactor excessive merge detection, add test
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
    95
11974
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    96
  $ hg verify
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    97
  checking changesets
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    98
  checking manifests
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
    99
  crosschecking files in changesets and manifests
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
   100
  checking files
ccd581c66284 tests: unify test-excessive-merge
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 3853
diff changeset
   101
  2 files, 5 changesets, 4 total revisions