Mercurial > hg
annotate tests/test-clone-stream.t @ 51681:522b4d729e89
mmap: populate the mapping by default
Without pre-population, accessing all data through a mmap can result in many
pagefault, reducing performance significantly. If the mmap is prepopulated, the
performance can no longer get slower than a full read.
(See benchmark number below)
In some cases were very few data is read, prepopulating can be overkill and
slower than populating on access (through page fault). So that behavior can be
controlled when the caller can pre-determine the best behavior.
(See benchmark number below)
In addition, testing with populating in a secondary thread yield great result
combining the best of each approach. This might be implemented in later
changesets.
In all cases, using mmap has a great effect on memory usage when many processes
run in parallel on the same machine.
### Benchmarks
# What did I run
A couple of month back I ran a large benchmark campaign to assess the impact of
various approach for using mmap with the revlog (and other files), it
highlighted a few benchmarks that capture the impact of the changes well. So to
validate this change I checked the following:
- log command displaying various revisions
(read the changelog index)
- log command displaying the patch of listed revisions
(read the changelog index, the manifest index and a few files indexes)
- unbundling a few revisions
(read and write changelog, manifest and few files indexes, and walk the graph
to update some cache)
- pushing a few revisions
(read and write changelog, manifest and few files indexes, walk the graph to
update some cache, performs various accesses locally and remotely during
discovery)
Benchmarks were run using the default module policy (c+py) and the rust one. No
significant difference were found between the two implementation, so we will
present result using the default policy (unless otherwise specified).
I ran them on a few repositories :
- mercurial: a "public changeset only" copy of mercurial from 2018-08-01 using
zstd compression and sparse-revlog
- pypy: a copy of pypy from 2018-08-01 using zstd compression and sparse-revlog
- netbeans: a copy of netbeans from 2018-08-01 using zstd compression and
sparse-revlog
- mozilla-try: a copy of mozilla-try from 2019-02-18 using zstd compression and
sparse-revlog
- mozilla-try persistent-nodemap: Same as the above but with a persistent
nodemap. Used for the log --patch benchmark only
# Results
For the smaller repositories (mercurial, pypy), the impact of mmap is almost
imperceptible, other cost dominating the operation. The impact of prepopulating
is undiscernible in the benchmark we ran.
For larger repositories the benchmark support explanation given above:
On netbeans, the log can be about 1% faster without repopulation (for a
difference < 100ms) but unbundle becomes a bit slower, even when small.
### data-env-vars.name = netbeans-2018-08-01-zstd-sparse-revlog
# benchmark.name = hg.command.unbundle
# benchmark.variants.issue6528 = disabled
# benchmark.variants.reuse-external-delta-parent = yes
# benchmark.variants.revs = any-1-extra-rev
# benchmark.variants.source = unbundle
# benchmark.variants.verbosity = quiet
with-populate: 0.240157
no-populate: 0.265087 (+10.38%, +0.02)
# benchmark.variants.revs = any-100-extra-rev
with-populate: 1.459518
no-populate: 1.481290 (+1.49%, +0.02)
## benchmark.name = hg.command.push
# benchmark.variants.explicit-rev = none
# benchmark.variants.issue6528 = disabled
# benchmark.variants.protocol = ssh
# benchmark.variants.reuse-external-delta-parent = yes
# benchmark.variants.revs = any-1-extra-rev
with-populate: 0.771919
no-populate: 0.792025 (+2.60%, +0.02)
# benchmark.variants.revs = any-100-extra-rev
with-populate: 1.459518
no-populate: 1.481290 (+1.49%, +0.02)
For mozilla-try, the "slow down" from pre-populate for small `hg log` is more
visible, but still small in absolute time. (using rust value for the persistent
nodemap value to be relevant).
### data-env-vars.name = mozilla-try-2019-02-18-ds2-pnm
# benchmark.name = hg.command.log
# bin-env-vars.hg.flavor = rust
# benchmark.variants.patch = yes
# benchmark.variants.limit-rev = 1
with-populate: 0.237813
no-populate: 0.229452 (-3.52%, -0.01)
# benchmark.variants.limit-rev = 10
# benchmark.variants.patch = yes
with-populate: 1.213578
no-populate: 1.205189
### data-env-vars.name = mozilla-try-2019-02-18-zstd-sparse-revlog
# benchmark.variants.limit-rev = 1000
# benchmark.variants.patch = no
# benchmark.variants.rev = tip
with-populate: 0.198607
no-populate: 0.195038 (-1.80%, -0.00)
However pre-populating provide a significant boost on more complex operations
like unbundle or push:
### data-env-vars.name = mozilla-try-2019-02-18-zstd-sparse-revlog
# benchmark.name = hg.command.push
# benchmark.variants.explicit-rev = none
# benchmark.variants.issue6528 = disabled
# benchmark.variants.protocol = ssh
# benchmark.variants.reuse-external-delta-parent = yes
# benchmark.variants.revs = any-1-extra-rev
with-populate: 4.798632
no-populate: 4.953295 (+3.22%, +0.15)
# benchmark.variants.revs = any-100-extra-rev
with-populate: 4.903618
no-populate: 5.014963 (+2.27%, +0.11)
## benchmark.name = hg.command.unbundle
# benchmark.variants.revs = any-1-extra-rev
with-populate: 1.423411
no-populate: 1.585365 (+11.38%, +0.16)
# benchmark.variants.revs = any-100-extra-rev
with-populate: 1.537909
no-populate: 1.688489 (+9.79%, +0.15)
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Thu, 11 Apr 2024 00:02:07 +0200 |
parents | 2e8a88e5809f |
children | 0f26ee69cf36 |
rev | line source |
---|---|
38021
538e850ae737
tests: mark tests that fail when using chg as #require no-chg
Kyle Lippincott <spectral@google.com>
parents:
37667
diff
changeset
|
1 #require serve no-reposimplestore no-chg |
27897
2fdbf22a1b63
streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
2 |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
3 #testcases stream-legacy stream-bundle2-v2 stream-bundle2-v3 |
35763
7eedbd5d4880
streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35747
diff
changeset
|
4 |
39722
4bd6e444c76f
bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents:
39721
diff
changeset
|
5 #if stream-legacy |
35763
7eedbd5d4880
streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35747
diff
changeset
|
6 $ cat << EOF >> $HGRCPATH |
39721
1b5880352314
bundle2: graduate bundle2.stream option from experimental to server section
Anton Shestakov <av6@dwimlabs.net>
parents:
39301
diff
changeset
|
7 > [server] |
39722
4bd6e444c76f
bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents:
39721
diff
changeset
|
8 > bundle2.stream = no |
51181
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
9 > [format] |
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
10 > # persistent nodemap is too broken with legacy format, |
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
11 > # however client with nodemap support will have better stream support. |
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
12 > use-persistent-nodemap=no |
35763
7eedbd5d4880
streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35747
diff
changeset
|
13 > EOF |
7eedbd5d4880
streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35747
diff
changeset
|
14 #endif |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
15 #if stream-bundle2-v3 |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
16 $ cat << EOF >> $HGRCPATH |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
17 > [experimental] |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
18 > stream-v3 = yes |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
19 > EOF |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
20 #endif |
35763
7eedbd5d4880
streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35747
diff
changeset
|
21 |
28389
9ab45fbe045e
bdiff: (pure) support array.array arrays (issue5130)
timeless <timeless@mozdev.org>
parents:
27897
diff
changeset
|
22 Initialize repository |
9ab45fbe045e
bdiff: (pure) support array.array arrays (issue5130)
timeless <timeless@mozdev.org>
parents:
27897
diff
changeset
|
23 |
27897
2fdbf22a1b63
streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
24 $ hg init server |
2fdbf22a1b63
streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
25 $ cd server |
48598
a6f16ec07ed7
stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48521
diff
changeset
|
26 $ sh $TESTDIR/testlib/stream_clone_setup.sh |
47659
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
27 adding 00changelog-ab349180a0405010.nd |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
28 adding 00changelog.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
29 adding 00changelog.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
30 adding 00changelog.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
31 adding 00manifest.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
32 adding 00manifest.i |
47870
67af3b3173b7
clone: add a file demonstrating issue6581 in test-clone-stream.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47869
diff
changeset
|
33 adding container/isam-build-centos7/bazel-coverage-generator-sandboxfs-compatibility-0758e3e4f6057904d44399bd666faba9e7f40686.patch |
47659
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
34 adding data/foo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
35 adding data/foo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
36 adding data/foo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
37 adding data/undo.babar |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
38 adding data/undo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
39 adding data/undo.foo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
40 adding data/undo.foo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
41 adding data/undo.foo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
42 adding data/undo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
43 adding data/undo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
44 adding data/undo.py |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
45 adding foo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
46 adding foo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
47 adding foo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
48 adding meta/foo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
49 adding meta/foo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
50 adding meta/foo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
51 adding meta/undo.babar |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
52 adding meta/undo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
53 adding meta/undo.foo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
54 adding meta/undo.foo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
55 adding meta/undo.foo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
56 adding meta/undo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
57 adding meta/undo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
58 adding meta/undo.py |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
59 adding savanah/foo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
60 adding savanah/foo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
61 adding savanah/foo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
62 adding savanah/undo.babar |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
63 adding savanah/undo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
64 adding savanah/undo.foo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
65 adding savanah/undo.foo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
66 adding savanah/undo.foo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
67 adding savanah/undo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
68 adding savanah/undo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
69 adding savanah/undo.py |
47784
17211649bac2
clone: add a file with special character while testing uncompressed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47783
diff
changeset
|
70 adding store/C\xc3\xa9lesteVille_is_a_Capital_City (esc) |
47659
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
71 adding store/foo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
72 adding store/foo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
73 adding store/foo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
74 adding store/undo.babar |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
75 adding store/undo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
76 adding store/undo.foo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
77 adding store/undo.foo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
78 adding store/undo.foo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
79 adding store/undo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
80 adding store/undo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
81 adding store/undo.py |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
82 adding undo.babar |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
83 adding undo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
84 adding undo.foo.d |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
85 adding undo.foo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
86 adding undo.foo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
87 adding undo.i |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
88 adding undo.n |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
89 adding undo.py |
48598
a6f16ec07ed7
stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
48521
diff
changeset
|
90 |
35789
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
91 $ hg --config server.uncompressed=false serve -p $HGPORT -d --pid-file=hg.pid |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
92 $ cat hg.pid > $DAEMON_PIDS |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
93 $ cd .. |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
94 |
47783
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
95 Check local clone |
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
96 ================== |
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
97 |
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
98 The logic is close enough of uncompressed. |
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
99 This is present here to reuse the testing around file with "special" names. |
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
100 |
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
101 $ hg clone server local-clone |
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
102 updating to branch default |
47871
132525ead0db
clone: properly create target directories during local clone (issue6581)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47870
diff
changeset
|
103 1088 files updated, 0 files merged, 0 files removed, 0 files unresolved |
47783
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
104 |
47869
bf47cc3799ea
clone: verify the local clone in test-clone-stream.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47868
diff
changeset
|
105 Check that the clone went well |
bf47cc3799ea
clone: verify the local clone in test-clone-stream.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47868
diff
changeset
|
106 |
49825
2f2682f40ea0
tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents:
48990
diff
changeset
|
107 $ hg verify -R local-clone -q |
47783
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
108 |
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
109 Check uncompressed |
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
110 ================== |
085ebc80f84b
clone: test local clone in `test-clone-uncompressed.t` too
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47659
diff
changeset
|
111 |
51472
749e7685935a
stream-clone-test: simplify the case where server disabled it
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51181
diff
changeset
|
112 Cannot stream clone when server.uncompressed is set to false |
749e7685935a
stream-clone-test: simplify the case where server disabled it
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51181
diff
changeset
|
113 ------------------------------------------------------------ |
749e7685935a
stream-clone-test: simplify the case where server disabled it
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51181
diff
changeset
|
114 |
749e7685935a
stream-clone-test: simplify the case where server disabled it
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51181
diff
changeset
|
115 When `server.uncompressed` is disabled, the client should fallback to a bundle |
749e7685935a
stream-clone-test: simplify the case where server disabled it
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51181
diff
changeset
|
116 based clone with a warning. |
749e7685935a
stream-clone-test: simplify the case where server disabled it
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51181
diff
changeset
|
117 |
35789
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
118 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
119 $ get-with-headers.py $LOCALIP:$HGPORT '?cmd=stream_out' |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
120 200 Script output follows |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
121 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
122 1 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
123 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
124 $ hg debugcapabilities http://localhost:$HGPORT |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
125 Main capabilities: |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
126 batch |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
127 branchmap |
35792
1d118f9f4f57
bundle2: always advertise client support for stream parts
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35791
diff
changeset
|
128 $USUAL_BUNDLE2_CAPS_SERVER$ |
35789
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
129 changegroupsubset |
35806
ab239e3de23b
tests: add a pattern to fix --pure tests
Augie Fackler <augie@google.com>
parents:
35805
diff
changeset
|
130 compression=$BUNDLE2_COMPRESSIONS$ |
35789
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
131 getbundle |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
132 httpheader=1024 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
133 httpmediatype=0.1rx,0.1tx,0.2tx |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
134 known |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
135 lookup |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
136 pushkey |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
137 unbundle=HG10GZ,HG10BZ,HG10UN |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
138 unbundlehash |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
139 Bundle2 capabilities: |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
140 HG20 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
141 bookmarks |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
142 changegroup |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
143 01 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
144 02 |
50381
2cf264e9aa75
configitems: enable changegroup3 by default (unless using infinitepush)
Matt Harbison <matt_harbison@yahoo.com>
parents:
49825
diff
changeset
|
145 03 |
44412
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
42931
diff
changeset
|
146 checkheads |
edc8504bc26b
exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents:
42931
diff
changeset
|
147 related |
35789
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
148 digests |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
149 md5 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
150 sha1 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
151 sha512 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
152 error |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
153 abort |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
154 unsupportedcontent |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
155 pushraced |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
156 pushkey |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
157 hgtagsfnodes |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
158 listkeys |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
159 phases |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
160 heads |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
161 pushkey |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
162 remote-changegroup |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
163 http |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
164 https |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
165 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
166 $ hg clone --stream -U http://localhost:$HGPORT server-disabled |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
167 warning: stream clone requested but server has them disabled |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
168 requesting all changes |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
169 adding changesets |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
170 adding manifests |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
171 adding file changes |
47870
67af3b3173b7
clone: add a file demonstrating issue6581 in test-clone-stream.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47869
diff
changeset
|
172 added 3 changesets with 1088 changes to 1088 files |
67af3b3173b7
clone: add a file demonstrating issue6581 in test-clone-stream.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47869
diff
changeset
|
173 new changesets 96ee1d7354c4:5223b5e3265f |
35789
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
174 |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
175 $ killdaemons.py |
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
176 $ cd server |
46983
e38718838808
streamclone: check the errors log in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46977
diff
changeset
|
177 $ hg serve -p $HGPORT -d --pid-file=hg.pid --error errors.txt |
35789
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
178 $ cat hg.pid > $DAEMON_PIDS |
27897
2fdbf22a1b63
streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
179 $ cd .. |
2fdbf22a1b63
streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
180 |
2fdbf22a1b63
streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
181 Basic clone |
51473
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
182 ----------- |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
183 |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
184 Check that --stream trigger a stream clone and result in a valid repositoty |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
185 |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
186 We check the associated output for exact bytes on file number as changes in |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
187 these value implies changes in the data transfered and can detect unintended |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
188 changes in the process. |
27897
2fdbf22a1b63
streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
189 |
35763
7eedbd5d4880
streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35747
diff
changeset
|
190 #if stream-legacy |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
191 $ hg clone --stream -U http://localhost:$HGPORT clone1 |
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
192 streaming all changes |
51181
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
193 1091 files to transfer, 102 KB of data (no-zstd !) |
47870
67af3b3173b7
clone: add a file demonstrating issue6581 in test-clone-stream.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47869
diff
changeset
|
194 transferred 102 KB in * seconds (* */sec) (glob) (no-zstd !) |
51181
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
195 1091 files to transfer, 98.8 KB of data (zstd !) |
47870
67af3b3173b7
clone: add a file demonstrating issue6581 in test-clone-stream.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47869
diff
changeset
|
196 transferred 98.8 KB in * seconds (* */sec) (glob) (zstd !) |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
197 searching for changes |
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
198 no changes found |
35763
7eedbd5d4880
streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35747
diff
changeset
|
199 #endif |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
200 #if stream-bundle2-v2 |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
201 $ hg clone --stream -U http://localhost:$HGPORT clone1 |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
202 streaming all changes |
51181
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
203 1094 files to transfer, 102 KB of data (no-zstd !) |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
204 transferred 102 KB in * seconds (* */sec) (glob) (no-zstd !) |
51181
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
205 1094 files to transfer, 98.9 KB of data (zstd no-rust !) |
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
206 transferred 98.9 KB in * seconds (* */sec) (glob) (zstd no-rust !) |
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
207 1096 files to transfer, 99.0 KB of data (zstd rust !) |
dcaa2df1f688
changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51077
diff
changeset
|
208 transferred 99.0 KB in * seconds (* */sec) (glob) (zstd rust !) |
51473
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
209 #endif |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
210 |
51473
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
211 #if stream-bundle2-v3 |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
212 $ hg clone --stream -U http://localhost:$HGPORT clone1 |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
213 streaming all changes |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
214 1093 entries to transfer |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
215 transferred 102 KB in * seconds (* */sec) (glob) (no-zstd !) |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
216 transferred 98.9 KB in * seconds (* */sec) (glob) (zstd no-rust !) |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
217 transferred 99.0 KB in * seconds (* */sec) (glob) (zstd rust !) |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
218 #endif |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
219 |
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
220 #if no-stream-legacy |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
221 $ ls -1 clone1/.hg/cache |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
222 branch2-base |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
223 branch2-served |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
224 rbc-names-v1 |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
225 rbc-revs-v1 |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
226 tags2 |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
227 tags2-served |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
228 #endif |
35767
5f5fb279fd39
streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents:
35765
diff
changeset
|
229 |
51473
a72ab2ec5315
stream-clone-test: factor some piece of basic clone test out
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51472
diff
changeset
|
230 $ hg -R clone1 verify --quiet |
46983
e38718838808
streamclone: check the errors log in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46977
diff
changeset
|
231 $ cat server/errors.txt |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
232 |
35787
a84dbc87dae9
exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35767
diff
changeset
|
233 getbundle requests with stream=1 are uncompressed |
51474
b0d08bdc6a60
stream-clone-test: simplify the test for getbundle with stream=1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51473
diff
changeset
|
234 ------------------------------------------------- |
b0d08bdc6a60
stream-clone-test: simplify the test for getbundle with stream=1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51473
diff
changeset
|
235 |
b0d08bdc6a60
stream-clone-test: simplify the test for getbundle with stream=1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51473
diff
changeset
|
236 We check that `getbundle` will return a stream bundle when requested. |
b0d08bdc6a60
stream-clone-test: simplify the test for getbundle with stream=1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51473
diff
changeset
|
237 |
b0d08bdc6a60
stream-clone-test: simplify the test for getbundle with stream=1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51473
diff
changeset
|
238 XXX manually building the --requestheader is fragile and will drift away from actual usage |
35787
a84dbc87dae9
exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35767
diff
changeset
|
239 |
50519
3c0da0fa0eed
stream-clone: check the version of streaming clone supported by the client
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents:
50517
diff
changeset
|
240 $ get-with-headers.py $LOCALIP:$HGPORT '?cmd=getbundle' content-type --bodyfile body --hgproto '0.1 0.2 comp=zlib,none' --requestheader "x-hgarg-1=bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%252C03%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps%250Astream%253Dv2&cg=0&common=0000000000000000000000000000000000000000&heads=c17445101a72edac06facd130d14808dfbd5c7c2&stream=1" |
35787
a84dbc87dae9
exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35767
diff
changeset
|
241 200 Script output follows |
a84dbc87dae9
exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35767
diff
changeset
|
242 content-type: application/mercurial-0.2 |
a84dbc87dae9
exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35767
diff
changeset
|
243 |
a84dbc87dae9
exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35767
diff
changeset
|
244 |
51474
b0d08bdc6a60
stream-clone-test: simplify the test for getbundle with stream=1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51473
diff
changeset
|
245 $ f --size --hex --bytes 48 body |
b0d08bdc6a60
stream-clone-test: simplify the test for getbundle with stream=1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51473
diff
changeset
|
246 body: size=* (glob) |
47278
6a60f03d2241
tests: More cleanly separate expected hexdump output
Simon Sapin <simon.sapin@octobus.net>
parents:
47183
diff
changeset
|
247 0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......| |
51474
b0d08bdc6a60
stream-clone-test: simplify the test for getbundle with stream=1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51473
diff
changeset
|
248 0010: ?? 07 53 54 52 45 41 4d 32 00 00 00 00 03 00 09 |?.STREAM2.......| (glob) |
b0d08bdc6a60
stream-clone-test: simplify the test for getbundle with stream=1
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51473
diff
changeset
|
249 0020: 06 09 04 0c ?? 62 79 74 65 63 6f 75 6e 74 31 30 |....?bytecount10| (glob) |
35787
a84dbc87dae9
exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35767
diff
changeset
|
250 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
251 --uncompressed is an alias to --stream |
51476
715be2690d28
stream-clone-test: simplify the --uncompressed alias check
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51474
diff
changeset
|
252 --------------------------------------- |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
253 |
51476
715be2690d28
stream-clone-test: simplify the --uncompressed alias check
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51474
diff
changeset
|
254 The alias flag should trigger a stream clone too. |
715be2690d28
stream-clone-test: simplify the --uncompressed alias check
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51474
diff
changeset
|
255 |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
256 $ hg clone --uncompressed -U http://localhost:$HGPORT clone1-uncompressed |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
257 streaming all changes |
51476
715be2690d28
stream-clone-test: simplify the --uncompressed alias check
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51474
diff
changeset
|
258 * files to transfer* (glob) (no-stream-bundle2-v3 !) |
715be2690d28
stream-clone-test: simplify the --uncompressed alias check
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51474
diff
changeset
|
259 * entries to transfer (glob) (stream-bundle2-v3 !) |
715be2690d28
stream-clone-test: simplify the --uncompressed alias check
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51474
diff
changeset
|
260 transferred * KB in * seconds (* */sec) (glob) |
715be2690d28
stream-clone-test: simplify the --uncompressed alias check
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51474
diff
changeset
|
261 searching for changes (stream-legacy !) |
715be2690d28
stream-clone-test: simplify the --uncompressed alias check
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51474
diff
changeset
|
262 no changes found (stream-legacy !) |
27897
2fdbf22a1b63
streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
263 |
2fdbf22a1b63
streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
264 Clone with background file closing enabled |
51477
d42006e0b130
stream-clone-test: simplify the background file closing test
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51476
diff
changeset
|
265 ------------------------------------------- |
27897
2fdbf22a1b63
streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
266 |
51477
d42006e0b130
stream-clone-test: simplify the background file closing test
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51476
diff
changeset
|
267 The backgound file closing logic should trigger when configured to do so, and |
d42006e0b130
stream-clone-test: simplify the background file closing test
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51476
diff
changeset
|
268 the result should be a valid repository. |
d42006e0b130
stream-clone-test: simplify the background file closing test
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51476
diff
changeset
|
269 |
d42006e0b130
stream-clone-test: simplify the background file closing test
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51476
diff
changeset
|
270 $ hg --debug --config worker.backgroundclose=true --config worker.backgroundcloseminfilecount=1 clone --stream -U http://localhost:$HGPORT clone-background | grep "background file closing" |
35763
7eedbd5d4880
streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35747
diff
changeset
|
271 starting 4 threads for background file closing |
51477
d42006e0b130
stream-clone-test: simplify the background file closing test
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51476
diff
changeset
|
272 starting 4 threads for background file closing (no-stream-legacy !) |
d42006e0b130
stream-clone-test: simplify the background file closing test
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51476
diff
changeset
|
273 $ hg verify -R clone-background --quiet |
28517
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
274 |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
275 Cannot stream clone when there are secret changesets |
51478
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
276 ---------------------------------------------------- |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
277 |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
278 If secret changeset are present the should not be cloned (by default) and the |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
279 clone falls back to a bundle clone. |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
280 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
281 $ hg -R server phase --force --secret -r tip |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
282 $ hg clone --stream -U http://localhost:$HGPORT secret-denied |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
283 warning: stream clone requested but server has them disabled |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
284 requesting all changes |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
285 adding changesets |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
286 adding manifests |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
287 adding file changes |
47659
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
288 added 2 changesets with 1025 changes to 1025 files |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
289 new changesets 96ee1d7354c4:c17445101a72 |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
290 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
291 $ killdaemons.py |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
292 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
293 Streaming of secrets can be overridden by server config |
51478
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
294 ------------------------------------------------------- |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
295 |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
296 Secret changeset can still be streamed if the server is configured to do so. |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
297 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
298 $ cd server |
34483
a6d95a8b7243
serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
34393
diff
changeset
|
299 $ hg serve --config server.uncompressedallowsecret=true -p $HGPORT -d --pid-file=hg.pid |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
300 $ cat hg.pid > $DAEMON_PIDS |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
301 $ cd .. |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
302 |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
303 $ hg clone --stream -U http://localhost:$HGPORT secret-allowed |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
304 streaming all changes |
51478
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
305 * files to transfer* (glob) (no-stream-bundle2-v3 !) |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
306 * entries to transfer (glob) (stream-bundle2-v3 !) |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
307 transferred * KB in * seconds (* */sec) (glob) |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
308 searching for changes (stream-legacy !) |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
309 no changes found (stream-legacy !) |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
310 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
311 $ killdaemons.py |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
312 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
313 Verify interaction between preferuncompressed and secret presence |
51479
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
314 ----------------------------------------------------------------- |
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
315 |
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
316 Secret presence will still make the clone falls back to a normal bundle even if |
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
317 the server prefers stream clone. |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
318 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
319 $ cd server |
34483
a6d95a8b7243
serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
34393
diff
changeset
|
320 $ hg serve --config server.preferuncompressed=true -p $HGPORT -d --pid-file=hg.pid |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
321 $ cat hg.pid > $DAEMON_PIDS |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
322 $ cd .. |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
323 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
324 $ hg clone -U http://localhost:$HGPORT preferuncompressed-secret |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
325 requesting all changes |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
326 adding changesets |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
327 adding manifests |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
328 adding file changes |
47659
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
329 added 2 changesets with 1025 changes to 1025 files |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
330 new changesets 96ee1d7354c4:c17445101a72 |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
331 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
332 $ killdaemons.py |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
333 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
334 Clone not allowed when full bundles disabled and can't serve secrets |
51479
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
335 -------------------------------------------------------------------- |
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
336 |
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
337 The clone should fail as no valid option is found. |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
338 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
339 $ cd server |
34483
a6d95a8b7243
serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
34393
diff
changeset
|
340 $ hg serve --config server.disablefullbundle=true -p $HGPORT -d --pid-file=hg.pid |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
341 $ cat hg.pid > $DAEMON_PIDS |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
342 $ cd .. |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
343 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
344 $ hg clone --stream http://localhost:$HGPORT secret-full-disabled |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
345 warning: stream clone requested but server has them disabled |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
346 requesting all changes |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
347 remote: abort: server has pull-based clones disabled |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
348 abort: pull failed on remote |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
349 (remove --pull if specified or upgrade Mercurial) |
46977
3f87d2af0bd6
errors: raise RemoteError in some places in exchange.py
Martin von Zweigbergk <martinvonz@google.com>
parents:
46884
diff
changeset
|
350 [100] |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
351 |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
352 Local stream clone with secrets involved |
51479
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
353 ---------------------------------------- |
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
354 |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
355 (This is just a test over behavior: if you have access to the repo's files, |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
356 there is no security so it isn't important to prevent a clone here.) |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
357 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
358 $ hg clone -U --stream server local-secret |
32744
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
359 warning: stream clone requested but server has them disabled |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
360 requesting all changes |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
361 adding changesets |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
362 adding manifests |
33b7283a3828
streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31252
diff
changeset
|
363 adding file changes |
47659
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
364 added 2 changesets with 1025 changes to 1025 files |
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
365 new changesets 96ee1d7354c4:c17445101a72 |
28517
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
366 |
51478
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
367 (revert introduction of secret changeset) |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
368 |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
369 $ hg -R server phase --draft 'secret()' |
f9a6bae0c937
stream-clone-test: simplify testing of secret cloning restriction
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51477
diff
changeset
|
370 |
28517
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
371 Stream clone while repo is changing: |
51480
d1d75797f58a
stream-clone-test: add a verify call to the "clone while changing" case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51479
diff
changeset
|
372 ------------------------------------ |
d1d75797f58a
stream-clone-test: add a verify call to the "clone while changing" case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51479
diff
changeset
|
373 |
d1d75797f58a
stream-clone-test: add a verify call to the "clone while changing" case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51479
diff
changeset
|
374 We should send a repository in a valid state, ignoring the ongoing transaction. |
28517
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
375 |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
376 $ mkdir changing |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
377 $ cd changing |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
378 |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
379 prepare repo with small and big file to cover both code paths in emitrevlogdata |
51480
d1d75797f58a
stream-clone-test: add a verify call to the "clone while changing" case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51479
diff
changeset
|
380 (inlined revlog and non-inlined revlogs). |
28517
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
381 |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
382 $ hg init repo |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
383 $ touch repo/f1 |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
384 $ $TESTDIR/seq.py 50000 > repo/f2 |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
385 $ hg -R repo ci -Aqm "0" |
46986
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
386 $ HG_TEST_STREAM_WALKED_FILE_1="$TESTTMP/sync_file_walked_1" |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
387 $ export HG_TEST_STREAM_WALKED_FILE_1 |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
388 $ HG_TEST_STREAM_WALKED_FILE_2="$TESTTMP/sync_file_walked_2" |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
389 $ export HG_TEST_STREAM_WALKED_FILE_2 |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
390 $ HG_TEST_STREAM_WALKED_FILE_3="$TESTTMP/sync_file_walked_3" |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
391 $ export HG_TEST_STREAM_WALKED_FILE_3 |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
392 # $ cat << EOF >> $HGRCPATH |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
393 # > [hooks] |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
394 # > pre-clone=rm -f "$TESTTMP/sync_file_walked_*" |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
395 # > EOF |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
396 $ hg serve -R repo -p $HGPORT1 -d --error errors.log --pid-file=hg.pid --config extensions.stream_steps="$RUNTESTDIR/testlib/ext-stream-clone-steps.py" |
28517
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
397 $ cat hg.pid >> $DAEMON_PIDS |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
398 |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
399 clone while modifying the repo between stating file with write lock and |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
400 actually serving file content |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
401 |
46986
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
402 $ (hg clone -q --stream -U http://localhost:$HGPORT1 clone; touch "$HG_TEST_STREAM_WALKED_FILE_3") & |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
403 $ $RUNTESTDIR/testlib/wait-on-file 10 $HG_TEST_STREAM_WALKED_FILE_1 |
28517
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
404 $ echo >> repo/f1 |
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
405 $ echo >> repo/f2 |
45076
23119371df5e
test-clone-uncompressed: use config to silence the lock warning
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
45016
diff
changeset
|
406 $ hg -R repo ci -m "1" --config ui.timeout.warn=-1 |
46986
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
407 $ touch $HG_TEST_STREAM_WALKED_FILE_2 |
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
408 $ $RUNTESTDIR/testlib/wait-on-file 10 $HG_TEST_STREAM_WALKED_FILE_3 |
28517
95163ababeb8
tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents:
28389
diff
changeset
|
409 $ hg -R clone id |
28518
aa440c3d7c5d
streamclone: fix error when store files grow while stream cloning
Mads Kiilerich <madski@unity3d.com>
parents:
28517
diff
changeset
|
410 000000000000 |
51480
d1d75797f58a
stream-clone-test: add a verify call to the "clone while changing" case
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51479
diff
changeset
|
411 $ hg -R clone verify --quiet |
46986
faa43f09ad98
streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
46983
diff
changeset
|
412 $ cat errors.log |
35747
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
413 $ cd .. |
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
414 |
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
415 Stream repository with bookmarks |
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
416 -------------------------------- |
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
417 |
51481
4456c15bde9e
stream-clone-test: simplify bookmark clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51480
diff
changeset
|
418 The bookmark file should be send over in the stream bundle. |
4456c15bde9e
stream-clone-test: simplify bookmark clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51480
diff
changeset
|
419 |
35747
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
420 add a bookmark |
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
421 |
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
422 $ hg -R server bookmark -r tip some-bookmark |
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
423 |
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
424 clone it |
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
425 |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
426 $ hg clone --stream http://localhost:$HGPORT with-bookmarks |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
427 streaming all changes |
51481
4456c15bde9e
stream-clone-test: simplify bookmark clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51480
diff
changeset
|
428 1091 files to transfer, * KB of data (glob) (stream-legacy !) |
4456c15bde9e
stream-clone-test: simplify bookmark clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51480
diff
changeset
|
429 1097 files to transfer, * KB of data (glob) (stream-bundle2-v2 no-rust !) |
4456c15bde9e
stream-clone-test: simplify bookmark clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51480
diff
changeset
|
430 1099 files to transfer, * KB of data (glob) (stream-bundle2-v2 rust !) |
4456c15bde9e
stream-clone-test: simplify bookmark clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51480
diff
changeset
|
431 1096 entries to transfer (stream-bundle2-v3 !) |
4456c15bde9e
stream-clone-test: simplify bookmark clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51480
diff
changeset
|
432 transferred * KB in * seconds (* */sec) (glob) |
4456c15bde9e
stream-clone-test: simplify bookmark clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51480
diff
changeset
|
433 searching for changes (stream-legacy !) |
4456c15bde9e
stream-clone-test: simplify bookmark clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51480
diff
changeset
|
434 no changes found (stream-legacy !) |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
435 updating to branch default |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
436 1088 files updated, 0 files merged, 0 files removed, 0 files unresolved |
49825
2f2682f40ea0
tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents:
48990
diff
changeset
|
437 $ hg verify -R with-bookmarks -q |
35747
de32acb24949
stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
438 $ hg -R with-bookmarks bookmarks |
47870
67af3b3173b7
clone: add a file demonstrating issue6581 in test-clone-stream.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47869
diff
changeset
|
439 some-bookmark 2:5223b5e3265f |
35764
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
440 |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
441 Stream repository with phases |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
442 ----------------------------- |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
443 |
51482
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
444 The file storing phases information (e.g. phaseroots) should be sent as part of |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
445 the stream bundle. |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
446 |
35764
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
447 Clone as publishing |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
448 |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
449 $ hg -R server phase -r 'all()' |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
450 0: draft |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
451 1: draft |
47659
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
452 2: draft |
35764
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
453 |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
454 $ hg clone --stream http://localhost:$HGPORT phase-publish |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
455 streaming all changes |
51482
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
456 1091 files to transfer, * KB of data (glob) (stream-legacy !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
457 1097 files to transfer, * KB of data (glob) (stream-bundle2-v2 no-rust !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
458 1099 files to transfer, * KB of data (glob) (stream-bundle2-v2 rust !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
459 1096 entries to transfer (stream-bundle2-v3 !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
460 transferred * KB in * seconds (* */sec) (glob) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
461 searching for changes (stream-legacy !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
462 no changes found (stream-legacy !) |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
463 updating to branch default |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
464 1088 files updated, 0 files merged, 0 files removed, 0 files unresolved |
49825
2f2682f40ea0
tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents:
48990
diff
changeset
|
465 $ hg verify -R phase-publish -q |
35764
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
466 $ hg -R phase-publish phase -r 'all()' |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
467 0: public |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
468 1: public |
47659
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
469 2: public |
35764
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
470 |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
471 Clone as non publishing |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
472 |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
473 $ cat << EOF >> server/.hg/hgrc |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
474 > [phases] |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
475 > publish = False |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
476 > EOF |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
477 $ killdaemons.py |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
478 $ hg -R server serve -p $HGPORT -d --pid-file=hg.pid |
35789
8ed5f7609728
tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35788
diff
changeset
|
479 $ cat hg.pid > $DAEMON_PIDS |
35764
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
480 |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
481 $ hg clone --stream http://localhost:$HGPORT phase-no-publish |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
482 streaming all changes |
51482
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
483 1091 files to transfer, * KB of data (glob) (stream-legacy !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
484 1098 files to transfer, * KB of data (glob) (stream-bundle2-v2 no-rust !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
485 1100 files to transfer, * KB of data (glob) (stream-bundle2-v2 rust !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
486 1097 entries to transfer (stream-bundle2-v3 !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
487 transferred * KB in * seconds (* */sec) (glob) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
488 searching for changes (stream-legacy !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
489 no changes found (stream-legacy !) |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
490 updating to branch default |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
491 1088 files updated, 0 files merged, 0 files removed, 0 files unresolved |
51482
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
492 |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
493 Note: With v1 of the stream protocol, changeset are always cloned as public. It |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
494 make stream v1 unsuitable for non-publishing repository. |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
495 |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
496 $ hg -R phase-no-publish phase -r 'all()' |
51482
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
497 0: public (stream-legacy !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
498 1: public (stream-legacy !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
499 2: public (stream-legacy !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
500 0: draft (no-stream-legacy !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
501 1: draft (no-stream-legacy !) |
32631657e9af
stream-clone-test: simplify the case testing phases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51481
diff
changeset
|
502 2: draft (no-stream-legacy !) |
49825
2f2682f40ea0
tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents:
48990
diff
changeset
|
503 $ hg verify -R phase-no-publish -q |
35764
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
504 |
b6ffd4194639
streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents:
35763
diff
changeset
|
505 $ killdaemons.py |
40398
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
506 |
51483
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
507 |
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
508 Stream repository with obsolescence |
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
509 ----------------------------------- |
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
510 |
40398
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
511 #if stream-legacy |
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
512 |
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
513 With v1 of the stream protocol, changeset are always cloned as public. There's |
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
514 no obsolescence markers exchange in stream v1. |
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
515 |
51483
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
516 #else |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
517 |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
518 Clone non-publishing with obsolescence |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
519 |
51483
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
520 The obsstore file should be send as part of the stream bundle |
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
521 |
50524
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
522 $ cat >> $HGRCPATH << EOF |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
523 > [experimental] |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
524 > evolution=all |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
525 > EOF |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
526 |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
527 $ cd server |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
528 $ echo foo > foo |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
529 $ hg -q commit -m 'about to be pruned' |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
530 $ hg debugobsolete `hg log -r . -T '{node}'` -d '0 0' -u test --record-parents |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
531 1 new obsolescence markers |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
532 obsoleted 1 changesets |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
533 $ hg up null -q |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
534 $ hg log -T '{rev}: {phase}\n' |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
535 2: draft |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
536 1: draft |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
537 0: draft |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
538 $ hg serve -p $HGPORT -d --pid-file=hg.pid |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
539 $ cat hg.pid > $DAEMON_PIDS |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
540 $ cd .. |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
541 |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
542 $ hg clone -U --stream http://localhost:$HGPORT with-obsolescence |
58adcabc295f
stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
50519
diff
changeset
|
543 streaming all changes |
51483
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
544 1099 files to transfer, * KB of data (glob) (stream-bundle2-v2 no-rust !) |
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
545 1101 files to transfer, * KB of data (glob) (stream-bundle2-v2 rust !) |
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
546 1098 entries to transfer (no-stream-bundle2-v2 !) |
78b437526715
stream-clone-test: simplify case testing obsolescence
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51482
diff
changeset
|
547 transferred * KB in * seconds (* */sec) (glob) |
40398
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
548 $ hg -R with-obsolescence log -T '{rev}: {phase}\n' |
47659
f030c7d22032
walk: no longer ignore revlogs of files starting with `undo.` (issue6542)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47279
diff
changeset
|
549 2: draft |
40398
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
550 1: draft |
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
551 0: draft |
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
552 $ hg debugobsolete -R with-obsolescence |
47870
67af3b3173b7
clone: add a file demonstrating issue6581 in test-clone-stream.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
47869
diff
changeset
|
553 8c206a663911c1f97f2f9d7382e417ae55872cfa 0 {5223b5e3265f0df40bb743da62249413d74ac70f} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'} |
49825
2f2682f40ea0
tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents:
48990
diff
changeset
|
554 $ hg verify -R with-obsolescence -q |
40398
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
555 |
40399
4ab6e7b4fe8a
streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents:
40398
diff
changeset
|
556 $ hg clone -U --stream --config experimental.evolution=0 http://localhost:$HGPORT with-obsolescence-no-evolution |
4ab6e7b4fe8a
streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents:
40398
diff
changeset
|
557 streaming all changes |
4ab6e7b4fe8a
streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents:
40398
diff
changeset
|
558 remote: abort: server has obsolescence markers, but client cannot receive them via stream clone |
4ab6e7b4fe8a
streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents:
40398
diff
changeset
|
559 abort: pull failed on remote |
46977
3f87d2af0bd6
errors: raise RemoteError in some places in exchange.py
Martin von Zweigbergk <martinvonz@google.com>
parents:
46884
diff
changeset
|
560 [100] |
40399
4ab6e7b4fe8a
streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents:
40398
diff
changeset
|
561 |
40398
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
562 $ killdaemons.py |
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
563 |
0ac794e0e285
streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents:
40034
diff
changeset
|
564 #endif |
48990
d9ed7c5e915d
streamclone: avoid some obscure error in a corner case
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
48968
diff
changeset
|
565 |
d9ed7c5e915d
streamclone: avoid some obscure error in a corner case
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
48968
diff
changeset
|
566 Cloning a repo with no requirements doesn't give some obscure error |
51479
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
567 ------------------------------------------------------------------- |
48990
d9ed7c5e915d
streamclone: avoid some obscure error in a corner case
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
48968
diff
changeset
|
568 |
d9ed7c5e915d
streamclone: avoid some obscure error in a corner case
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
48968
diff
changeset
|
569 $ mkdir -p empty-repo/.hg |
d9ed7c5e915d
streamclone: avoid some obscure error in a corner case
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
48968
diff
changeset
|
570 $ hg clone -q --stream ssh://user@dummy/empty-repo empty-repo2 |
d9ed7c5e915d
streamclone: avoid some obscure error in a corner case
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents:
48968
diff
changeset
|
571 $ hg --cwd empty-repo2 verify -q |
51077
74c004a515bc
stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents:
50706
diff
changeset
|
572 |
74c004a515bc
stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents:
50706
diff
changeset
|
573 Cloning a repo with an empty manifestlog doesn't give some weird error |
51479
5bd31e68c7a3
stream-clone-test: add title to various test cases
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51478
diff
changeset
|
574 ---------------------------------------------------------------------- |
51077
74c004a515bc
stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents:
50706
diff
changeset
|
575 |
74c004a515bc
stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents:
50706
diff
changeset
|
576 $ rm -r empty-repo; hg init empty-repo |
74c004a515bc
stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents:
50706
diff
changeset
|
577 $ (cd empty-repo; touch x; hg commit -Am empty; hg debugstrip -r 0) > /dev/null |
74c004a515bc
stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents:
50706
diff
changeset
|
578 $ hg clone -q --stream ssh://user@dummy/empty-repo empty-repo3 |
51484
87d336f91146
stream-clone-tests: stop filtering non existent warning
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
51483
diff
changeset
|
579 $ hg --cwd empty-repo3 verify -q |