Mercurial > hg
annotate tests/test-empty-group.t @ 34291:1db9abf407c5
revlog: add revmap back to revlog.addgroup
The recent c8b6ed51386b patch removed the linkmapper argument from addgroup, as
part of trying to make addgroup more agnostic from the changegroup format. It
turns out that the changegroup can't resolve linkrevs while iterating over the
deltas, because applying the deltas might affect the linkrev resolution. For
example, when applying a series of changelog entries, the linkmapper just
returns len(cl). If we're iterating over the deltas without applying them to the
changelog, this results in incorrect linkrevs. This was caught by the hgsql
extension, which reads the revisions before applying them.
The fix is to return linknodes as part of the delta iterator, and let the
consumer choose what to do.
Differential Revision: https://phab.mercurial-scm.org/D730
author | Durham Goode <durham@fb.com> |
---|---|
date | Wed, 20 Sep 2017 09:22:22 -0700 |
parents | 301725c3df9a |
children | eb586ed5d8ce |
rev | line source |
---|---|
4659
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
1 # A B |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
2 # |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
3 # 3 4 3 |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
4 # |\/| |\ |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
5 # |/\| | \ |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
6 # 1 2 1 2 |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
7 # \ / \ / |
2339
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
8 # 0 0 |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
9 # |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
10 # if the result of the merge of 1 and 2 |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
11 # is the same in 3 and 4, no new manifest |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
12 # will be created and the manifest group |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
13 # will be empty during the pull |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
14 # |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
15 # (plus we test a failure where outgoing |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
16 # wrongly reported the number of csets) |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
17 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
18 $ hg init a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
19 $ cd a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
20 $ touch init |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
21 $ hg ci -A -m 0 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
22 adding init |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
23 $ touch x y |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
24 $ hg ci -A -m 1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
25 adding x |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
26 adding y |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
27 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
28 $ hg update 0 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
29 0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
30 $ touch x y |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
31 $ hg ci -A -m 2 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
32 adding x |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
33 adding y |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
34 created new head |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
35 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
36 $ hg merge 1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
37 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
38 (branch merge, don't forget to commit) |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
39 $ hg ci -A -m m1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
40 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
41 $ hg update -C 1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
42 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
43 $ hg merge 2 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
44 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
45 (branch merge, don't forget to commit) |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
46 $ hg ci -A -m m2 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
47 created new head |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
48 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
49 $ cd .. |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
50 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
51 $ hg clone -r 3 a b |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
52 adding changesets |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
53 adding manifests |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
54 adding file changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
55 added 4 changesets with 3 changes to 3 files |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
56 updating to branch default |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
57 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
58 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
59 $ hg clone -r 4 a c |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
60 adding changesets |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
61 adding manifests |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
62 adding file changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
63 added 4 changesets with 3 changes to 3 files |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
64 updating to branch default |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
65 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
2339
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
66 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
67 $ hg -R a outgoing b |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
68 comparing with b |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
69 searching for changes |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
12847
diff
changeset
|
70 changeset: 4:1ec3c74fc0e0 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
71 tag: tip |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
72 parent: 1:79f9e10cd04e |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
73 parent: 2:8e1bb01c1a24 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
74 user: test |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
75 date: Thu Jan 01 00:00:00 1970 +0000 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
76 summary: m2 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
77 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
78 $ hg -R a outgoing c |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
79 comparing with c |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
80 searching for changes |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
12847
diff
changeset
|
81 changeset: 3:d15a0c284984 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
82 parent: 2:8e1bb01c1a24 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
83 parent: 1:79f9e10cd04e |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
84 user: test |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
85 date: Thu Jan 01 00:00:00 1970 +0000 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
86 summary: m1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
87 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
88 $ hg -R b outgoing c |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
89 comparing with c |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
90 searching for changes |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
12847
diff
changeset
|
91 changeset: 3:d15a0c284984 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
92 tag: tip |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
93 parent: 2:8e1bb01c1a24 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
94 parent: 1:79f9e10cd04e |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
95 user: test |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
96 date: Thu Jan 01 00:00:00 1970 +0000 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
97 summary: m1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
98 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
99 $ hg -R c outgoing b |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
100 comparing with b |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
101 searching for changes |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
12847
diff
changeset
|
102 changeset: 3:1ec3c74fc0e0 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
103 tag: tip |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
104 parent: 1:79f9e10cd04e |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
105 parent: 2:8e1bb01c1a24 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
106 user: test |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
107 date: Thu Jan 01 00:00:00 1970 +0000 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
108 summary: m2 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
109 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
110 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
111 $ hg -R b pull a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
112 pulling from a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
113 searching for changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
114 adding changesets |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
115 adding manifests |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
116 adding file changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
117 added 1 changesets with 0 changes to 0 files (+1 heads) |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
118 (run 'hg heads' to see heads, 'hg merge' to merge) |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
119 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
120 $ hg -R c pull a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
121 pulling from a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
122 searching for changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
123 adding changesets |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
124 adding manifests |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
125 adding file changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
126 added 1 changesets with 0 changes to 0 files (+1 heads) |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
127 (run 'hg heads' to see heads, 'hg merge' to merge) |