Mercurial > hg
annotate tests/test-unbundlehash.t @ 46472:98e39f04d60e
upgrade: implement partial upgrade for upgrading persistent-nodemap
Upgrading repositories to use persistent nodemap should be fast and easy as it
requires only two things:
1) Updating the requirements
2) Writing a persistent-nodemap on disk
For both of the steps above, we don't need to edit existing revlogs.
This patch makes upgrade only do the above mentioned two steps if we are
only upgarding to use persistent-nodemap feature.
Since `nodemap.persist_nodemap()` assumes that there exists a nodemap file for
the given revlog if we are trying to call it, this patch adds `force` argument
to create a file if does not exist which is true in our upgrade case.
The test changes demonstrate that we no longer write nodemap files for manifest
after upgrade which I think is desirable.
Differential Revision: https://phab.mercurial-scm.org/D9936
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Mon, 01 Feb 2021 00:02:00 +0530 |
parents | b4b7427b5786 |
children |
rev | line source |
---|---|
13942
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
1 Test wire protocol unbundle with hashed heads (capability: unbundlehash) |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
2 |
25374
c2d691542d6a
test: lock test-unbundlehash to bundle1 usage
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22046
diff
changeset
|
3 $ cat << EOF >> $HGRCPATH |
29686
6e375ba01b04
tests: use 'legacy.exchange' option in various bundle1 tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
28996
diff
changeset
|
4 > [devel] |
25374
c2d691542d6a
test: lock test-unbundlehash to bundle1 usage
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22046
diff
changeset
|
5 > # This tests is intended for bundle1 only. |
c2d691542d6a
test: lock test-unbundlehash to bundle1 usage
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22046
diff
changeset
|
6 > # bundle2 carries the head information inside the bundle itself and |
c2d691542d6a
test: lock test-unbundlehash to bundle1 usage
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22046
diff
changeset
|
7 > # always uses 'force' as the heads value. |
29686
6e375ba01b04
tests: use 'legacy.exchange' option in various bundle1 tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
28996
diff
changeset
|
8 > legacy.exchange = bundle1 |
25374
c2d691542d6a
test: lock test-unbundlehash to bundle1 usage
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22046
diff
changeset
|
9 > EOF |
c2d691542d6a
test: lock test-unbundlehash to bundle1 usage
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
22046
diff
changeset
|
10 |
13942
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
11 Create a remote repository. |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
12 |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
13 $ hg init remote |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
14 $ hg serve -R remote --config web.push_ssl=False --config web.allow_push=* -p $HGPORT -d --pid-file=hg1.pid -E error.log -A access.log |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
15 $ cat hg1.pid >> $DAEMON_PIDS |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
16 |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
17 Clone the repository and push a change. |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
18 |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
19 $ hg clone http://localhost:$HGPORT/ local |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
20 no changes found |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
21 updating to branch default |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
22 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
23 $ touch local/README |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
24 $ hg ci -R local -A -m hoge |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
25 adding README |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
26 $ hg push -R local |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
27 pushing to http://localhost:$HGPORT/ |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
28 searching for changes |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
29 remote: adding changesets |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
30 remote: adding manifests |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
31 remote: adding file changes |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
32 remote: added 1 changesets with 1 changes to 1 files |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
33 |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
34 Ensure hashed heads format is used. |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
35 The hash here is always the same since the remote repository only has the null head. |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
36 |
88f0e41d8802
wireproto: allow unbundle with hashed heads parameter (issue2126)
Shuhei Takahashi <takahashi.shuhei@gmail.com>
parents:
diff
changeset
|
37 $ cat access.log | grep unbundle |
28996 | 38 * - - [*] "POST /?cmd=unbundle HTTP/1.1" 200 - x-hgarg-1:heads=686173686564+6768033e216468247bd031a0a2d9876d79818f8f* (glob) |
17539
bc7377160fa7
tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents:
15446
diff
changeset
|
39 |
bc7377160fa7
tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents:
15446
diff
changeset
|
40 Explicitly kill daemons to let the test exit on Windows |
bc7377160fa7
tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents:
15446
diff
changeset
|
41 |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
42 $ killdaemons.py |
17539
bc7377160fa7
tests: enable more server tests on Windows
Patrick Mezard <patrick@mezard.eu>
parents:
15446
diff
changeset
|
43 |