Mercurial > hg
annotate tests/test-exchange-obsmarkers-case-B5.t @ 47010:76ae43d5b1db stable
repoview: fix memory leak of filtered repo classes
The leak occurs in long-running server processes with
extensions, and is measured at 110kB per request.
Before this change, the contents of the `_filteredrepotypes`
cache are not properly garbage collected, despite it begin
a `WeakKeyDictionary`.
Extensions have a tendency to generate a new repository class
for each `localrepo` instantiation. Server processes based
on `hgwebdir_mod` will instantiate a new `localrepo` for each
HTTP request that involves a repository.
As a result, with a testing process that repeatedly opens a
repository with several extensions activated
(`topic` notably among them), we see a steady increase in
resident memory of 110kB per repository instantiation before this
change. This is also true, if we call `gc.collect()` at each
instantiation, like `hgwebdir_mod` does, or not.
The cause of the leak is that the *values* aren't weak references.
This change uses `weakref.ref` for the values, and this makes
in our measurements the resident size increase drop to 5kB per
repository instantiation, with no explicit call of `gc.collect()`
at all.
There is currently no reason to believe that this remaining leak
of 5kB is related to or even due to Mercurial core.
We've also seen evidence that `ui.ui` instances weren't properly
garbage collected before the change (with the change, they are).
This could explain why the figures are relatively high.
In theory, the collection of weak references could lead to
much more misses in the cache, so we measured the impact on
the original case that was motivation for introducing that cache
in 7e89bd0cfb86 (see also issue5043): `hg convert` of the
mozilla-central repository. The bad news here is that there is a
major memory leak there, both with and without the present changeset.
There were no more cache misses, and we could see no
more memory leak with this change: the resident size after importing
roughly 100000 changesets was at 12.4GB before, and 12.5GB after.
The small increase is mentioned for completeness only, and we
believe that it should be ignored, at least as long as the main
leak isn't fixed. At less than 1% of the main leak, even finding out
whether it is merely noise would be wasteful.
Original context where this was spotted and first mitigated:
https://foss.heptapod.net/heptapod/heptapod/-/issues/466
The leak reduction was also obtained in Heptapod inner HTTP server,
which amounts to the same as `hgwebdir_mod` for these questions.
The measurements done with Python 3.9, similar figures seen with 3.8.
More work on our side would be needed to give measurements with 2.7,
because of testing server process does not support it.
author | Georges Racinet <georges.racinet@octobus.net> |
---|---|
date | Fri, 23 Apr 2021 18:30:53 +0200 |
parents | 34a46d48d24e |
children |
rev | line source |
---|---|
31917
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
1 ============================================ |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
2 Testing obsolescence markers push: Cases B.5 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
3 ============================================ |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
4 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
5 Mercurial pushes obsolescences markers relevant to the "pushed-set", the set of |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
6 all changesets that requested to be "in sync" after the push (even if they are |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
7 already on both side). |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
8 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
9 This test belongs to a series of tests checking such set is properly computed |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
10 and applied. This does not tests "obsmarkers" discovery capabilities. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
11 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
12 Category B: pruning case |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
13 TestCase 5: Push of a children of changeset which successors is pruned |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
14 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
15 B.5 Push of a children of changeset which successors is pruned |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
16 ============================================================== |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
17 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
18 .. This case Mirror A.4, with pruned changeset successors. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
19 .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
20 .. {{{ |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
21 .. C ◔ |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
22 .. | |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
23 .. B⇠ø⇠⊗ B' |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
24 .. | | |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
25 .. A ø⇠○ A' |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
26 .. |/ |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
27 .. ● |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
28 .. }}} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
29 .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
30 .. Marker exist from: |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
31 .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
32 .. * `A ø⇠○ A'` |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
33 .. * `B ø⇠○ B'` |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
34 .. * chain from B |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
35 .. * `B' is pruned` |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
36 .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
37 .. Command run: |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
38 .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
39 .. * hg push -r C |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
40 .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
41 .. Expected exchange: |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
42 .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
43 .. * chain from B |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
44 .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
45 .. Expected exclude: |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
46 .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
47 .. * `A ø⇠○ A'` |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
48 .. * `B ø⇠○ B'` |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
49 .. * `B' prune` |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
50 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
51 Setup |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
52 ----- |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
53 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
54 $ . $TESTDIR/testlib/exchange-obsmarker-util.sh |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
55 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
56 initial |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
57 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
58 $ setuprepos B.5 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
59 creating test repo for test case B.5 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
60 - pulldest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
61 - main |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
62 - pushdest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
63 cd into `main` and proceed with env setup |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
64 $ cd main |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
65 $ mkcommit A0 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
66 $ mkcommit B0 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
67 $ mkcommit C |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
68 $ hg up --quiet 0 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
69 $ mkcommit A1 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
70 created new head |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
71 $ mkcommit B1 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
72 $ hg debugobsolete --hidden `getid 'desc(A0)'` `getid 'desc(A1)'` |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
39480
diff
changeset
|
73 1 new obsolescence markers |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
31917
diff
changeset
|
74 obsoleted 1 changesets |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35508
diff
changeset
|
75 2 new orphan changesets |
31917
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
76 $ hg debugobsolete --hidden aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa `getid 'desc(B0)'` |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
39480
diff
changeset
|
77 1 new obsolescence markers |
31917
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
78 $ hg debugobsolete --hidden `getid 'desc(B0)'` `getid 'desc(B1)'` |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
39480
diff
changeset
|
79 1 new obsolescence markers |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
31917
diff
changeset
|
80 obsoleted 1 changesets |
31917
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
81 $ hg prune -qd '0 0' 'desc(B1)' |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
82 $ hg log -G --hidden |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
83 x 069b05c3876d (draft): B1 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
84 | |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
85 @ e5ea8f9c7314 (draft): A1 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
86 | |
35508
9b3f95d9783d
graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
34661
diff
changeset
|
87 | * 1d0f3cd25300 (draft): C |
31917
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
88 | | |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
89 | x 6e72f0a95b5e (draft): B0 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
90 | | |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
91 | x 28b51eb45704 (draft): A0 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
92 |/ |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
93 o a9bdc8b26820 (public): O |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
94 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
95 $ inspect_obsmarkers |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
96 obsstore content |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
97 ================ |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
98 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
99 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
100 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 069b05c3876d56f62895e853a501ea58ea85f68d 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
101 069b05c3876d56f62895e853a501ea58ea85f68d 0 {e5ea8f9c73143125d36658e90ef70c6d2027a5b7} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
102 $ cd .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
103 $ cd .. |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
104 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
105 Actual Test (explicit push version) |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
106 ----------------------------------- |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
107 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
108 $ dotest B.5 C -f |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
109 ## Running testcase B.5 |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
110 # testing echange of "C" (1d0f3cd25300) |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
111 ## initial state |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
112 # obstore: main |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
113 069b05c3876d56f62895e853a501ea58ea85f68d 0 {e5ea8f9c73143125d36658e90ef70c6d2027a5b7} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
114 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
115 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 069b05c3876d56f62895e853a501ea58ea85f68d 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
116 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
117 # obstore: pushdest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
118 # obstore: pulldest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
119 ## pushing "C" from main to pushdest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
120 pushing to pushdest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
121 searching for changes |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
122 remote: adding changesets |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
123 remote: adding manifests |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
124 remote: adding file changes |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
125 remote: added 3 changesets with 3 changes to 3 files |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
126 remote: 1 new obsolescence markers |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
127 ## post push state |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
128 # obstore: main |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
129 069b05c3876d56f62895e853a501ea58ea85f68d 0 {e5ea8f9c73143125d36658e90ef70c6d2027a5b7} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
130 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
131 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 069b05c3876d56f62895e853a501ea58ea85f68d 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
132 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
133 # obstore: pushdest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
134 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
135 # obstore: pulldest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
136 ## pulling "1d0f3cd25300" from main into pulldest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
137 pulling from main |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
138 searching for changes |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
139 adding changesets |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
140 adding manifests |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
141 adding file changes |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
142 added 3 changesets with 3 changes to 3 files |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
143 1 new obsolescence markers |
39480
89630d0b3e23
phase: report number of non-public changeset alongside the new range
Boris Feld <boris.feld@octobus.net>
parents:
35709
diff
changeset
|
144 new changesets 28b51eb45704:1d0f3cd25300 (3 drafts) |
31917
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
145 (run 'hg update' to get a working copy) |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
146 ## post pull state |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
147 # obstore: main |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
148 069b05c3876d56f62895e853a501ea58ea85f68d 0 {e5ea8f9c73143125d36658e90ef70c6d2027a5b7} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
149 28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
150 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 069b05c3876d56f62895e853a501ea58ea85f68d 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
151 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
152 # obstore: pushdest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
153 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
154 # obstore: pulldest |
e4d1a7e07761
obsolescence: add test case B-5 for obsolescence markers exchange
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
155 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 6e72f0a95b5e01a7504743aa941f69cb1fbef8b0 0 (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |