tests/test-clone-stream.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Mon, 11 Dec 2023 22:27:59 +0100
changeset 51181 dcaa2df1f688
parent 51077 74c004a515bc
child 51472 749e7685935a
permissions -rw-r--r--
changelog: never inline changelog The test suite mostly use small repositories, that implies that most changelog in the tests are inlined. As a result, non-inlined changelog are quite poorly tested. Since non-inline changelog are most common case for serious repositories, this lack of testing is a significant problem that results in high profile issue like the one recently fixed by 66417f55ea33 and 849745d7da89. Inlining the changelog does not bring much to the table, the number of total file saved is negligible, and the changelog will be read by most operation anyway. So this changeset is make it so we never inline the changelog, and de-inline the one that are still inlined whenever we touch them. By doing that, we remove the "dual code path" situation for writing new entry to the changelog and move to a "single code path" situation. Having a single code path simplify the code and make sure it is covered by test (if test cover that situation obviously) This impact all tests that care about the number of file and the exchange size, but there is nothing too complicated in them just a lot of churn. The churn is made "worse" by the fact rust will use the persistent nodemap on any changelog now. Which is overall a win as it means testing the persistent nodemap more and having less special cases. In short, having inline changelog is mostly useless and an endless source of pain. We get rid of it.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   112
Cannot stream clone when server.uncompressed is set
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   113
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   114
  $ 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
   115
  200 Script output follows
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   116
  
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   117
  1
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
#if stream-legacy
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   120
  $ hg debugcapabilities http://localhost:$HGPORT
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   121
  Main capabilities:
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   122
    batch
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   123
    branchmap
35792
1d118f9f4f57 bundle2: always advertise client support for stream parts
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35791
diff changeset
   124
    $USUAL_BUNDLE2_CAPS_SERVER$
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   125
    changegroupsubset
35806
ab239e3de23b tests: add a pattern to fix --pure tests
Augie Fackler <augie@google.com>
parents: 35805
diff changeset
   126
    compression=$BUNDLE2_COMPRESSIONS$
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   127
    getbundle
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   128
    httpheader=1024
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   129
    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
   130
    known
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   131
    lookup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   132
    pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   133
    unbundle=HG10GZ,HG10BZ,HG10UN
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   134
    unbundlehash
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   135
  Bundle2 capabilities:
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   136
    HG20
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   137
    bookmarks
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   138
    changegroup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   139
      01
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   140
      02
50381
2cf264e9aa75 configitems: enable changegroup3 by default (unless using infinitepush)
Matt Harbison <matt_harbison@yahoo.com>
parents: 49825
diff changeset
   141
      03
44412
edc8504bc26b exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 42931
diff changeset
   142
    checkheads
edc8504bc26b exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 42931
diff changeset
   143
      related
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   144
    digests
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   145
      md5
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   146
      sha1
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   147
      sha512
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   148
    error
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   149
      abort
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   150
      unsupportedcontent
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   151
      pushraced
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   152
      pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   153
    hgtagsfnodes
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   154
    listkeys
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   155
    phases
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   156
      heads
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   157
    pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   158
    remote-changegroup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   159
      http
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   160
      https
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   161
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   162
  $ 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
   163
  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
   164
  requesting all changes
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   165
  adding changesets
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   166
  adding manifests
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   167
  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
   168
  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
   169
  new changesets 96ee1d7354c4:5223b5e3265f
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   170
50381
2cf264e9aa75 configitems: enable changegroup3 by default (unless using infinitepush)
Matt Harbison <matt_harbison@yahoo.com>
parents: 49825
diff changeset
   171
  $ get-with-headers.py $LOCALIP:$HGPORT '?cmd=getbundle' content-type --bodyfile body --hgproto 0.2 --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&cg=0&common=0000000000000000000000000000000000000000&heads=c17445101a72edac06facd130d14808dfbd5c7c2&stream=1"
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   172
  200 Script output follows
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   173
  content-type: application/mercurial-0.2
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
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   176
  $ f --size body --hexdump --bytes 100
50517
cd2a2963b982 stream-clone: upgrade the error message for bad stream request
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50381
diff changeset
   177
  body: size=140
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   178
  0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......|
50517
cd2a2963b982 stream-clone: upgrade the error message for bad stream request
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50381
diff changeset
   179
  0010: 73 0b 45 52 52 4f 52 3a 41 42 4f 52 54 00 00 00 |s.ERROR:ABORT...|
cd2a2963b982 stream-clone: upgrade the error message for bad stream request
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50381
diff changeset
   180
  0020: 00 01 01 07 3c 04 16 6d 65 73 73 61 67 65 73 74 |....<..messagest|
35791
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
   181
  0030: 72 65 61 6d 20 64 61 74 61 20 72 65 71 75 65 73 |ream data reques|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
   182
  0040: 74 65 64 20 62 75 74 20 73 65 72 76 65 72 20 64 |ted but server d|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
   183
  0050: 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 74 68 |oes not allow th|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
   184
  0060: 69 73 20 66                                     |is f|
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   185
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   186
#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
   187
#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
   188
  $ hg debugcapabilities http://localhost:$HGPORT
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   189
  Main capabilities:
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   190
    batch
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   191
    branchmap
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   192
    $USUAL_BUNDLE2_CAPS_SERVER$
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   193
    changegroupsubset
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   194
    compression=$BUNDLE2_COMPRESSIONS$
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   195
    getbundle
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   196
    httpheader=1024
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   197
    httpmediatype=0.1rx,0.1tx,0.2tx
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   198
    known
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   199
    lookup
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   200
    pushkey
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   201
    unbundle=HG10GZ,HG10BZ,HG10UN
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   202
    unbundlehash
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   203
  Bundle2 capabilities:
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   204
    HG20
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   205
    bookmarks
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   206
    changegroup
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   207
      01
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   208
      02
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   209
      03
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   210
    checkheads
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   211
      related
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   212
    digests
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   213
      md5
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   214
      sha1
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   215
      sha512
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   216
    error
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   217
      abort
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   218
      unsupportedcontent
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   219
      pushraced
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   220
      pushkey
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   221
    hgtagsfnodes
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   222
    listkeys
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   223
    phases
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   224
      heads
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   225
    pushkey
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   226
    remote-changegroup
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   227
      http
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   228
      https
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   229
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   230
  $ hg clone --stream -U http://localhost:$HGPORT server-disabled
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   231
  warning: stream clone requested but server has them disabled
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   232
  requesting all changes
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   233
  adding changesets
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   234
  adding manifests
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   235
  adding file changes
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   236
  added 3 changesets with 1088 changes to 1088 files
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   237
  new changesets 96ee1d7354c4:5223b5e3265f
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   238
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   239
  $ get-with-headers.py $LOCALIP:$HGPORT '?cmd=getbundle' content-type --bodyfile body --hgproto 0.2 --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&cg=0&common=0000000000000000000000000000000000000000&heads=c17445101a72edac06facd130d14808dfbd5c7c2&stream=1"
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   240
  200 Script output follows
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   241
  content-type: application/mercurial-0.2
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   242
  
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   243
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   244
  $ f --size body --hexdump --bytes 100
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   245
  body: size=140
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   246
  0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......|
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   247
  0010: 73 0b 45 52 52 4f 52 3a 41 42 4f 52 54 00 00 00 |s.ERROR:ABORT...|
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   248
  0020: 00 01 01 07 3c 04 16 6d 65 73 73 61 67 65 73 74 |....<..messagest|
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   249
  0030: 72 65 61 6d 20 64 61 74 61 20 72 65 71 75 65 73 |ream data reques|
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   250
  0040: 74 65 64 20 62 75 74 20 73 65 72 76 65 72 20 64 |ted but server d|
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   251
  0050: 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 74 68 |oes not allow th|
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   252
  0060: 69 73 20 66                                     |is f|
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   253
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   254
#endif
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   255
#if stream-bundle2-v3
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   256
  $ hg debugcapabilities http://localhost:$HGPORT
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   257
  Main capabilities:
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   258
    batch
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   259
    branchmap
35792
1d118f9f4f57 bundle2: always advertise client support for stream parts
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35791
diff changeset
   260
    $USUAL_BUNDLE2_CAPS_SERVER$
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   261
    changegroupsubset
35806
ab239e3de23b tests: add a pattern to fix --pure tests
Augie Fackler <augie@google.com>
parents: 35805
diff changeset
   262
    compression=$BUNDLE2_COMPRESSIONS$
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   263
    getbundle
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   264
    httpheader=1024
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   265
    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
   266
    known
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   267
    lookup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   268
    pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   269
    unbundle=HG10GZ,HG10BZ,HG10UN
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   270
    unbundlehash
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   271
  Bundle2 capabilities:
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   272
    HG20
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   273
    bookmarks
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   274
    changegroup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   275
      01
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   276
      02
50381
2cf264e9aa75 configitems: enable changegroup3 by default (unless using infinitepush)
Matt Harbison <matt_harbison@yahoo.com>
parents: 49825
diff changeset
   277
      03
44412
edc8504bc26b exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 42931
diff changeset
   278
    checkheads
edc8504bc26b exchange: turn on option that makes concurrent pushes work better
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 42931
diff changeset
   279
      related
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   280
    digests
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   281
      md5
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   282
      sha1
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   283
      sha512
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   284
    error
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   285
      abort
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   286
      unsupportedcontent
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   287
      pushraced
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   288
      pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   289
    hgtagsfnodes
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   290
    listkeys
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   291
    phases
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   292
      heads
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   293
    pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   294
    remote-changegroup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   295
      http
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   296
      https
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   297
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   298
  $ 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
   299
  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
   300
  requesting all changes
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   301
  adding changesets
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   302
  adding manifests
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   303
  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
   304
  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
   305
  new changesets 96ee1d7354c4:5223b5e3265f
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   306
50381
2cf264e9aa75 configitems: enable changegroup3 by default (unless using infinitepush)
Matt Harbison <matt_harbison@yahoo.com>
parents: 49825
diff changeset
   307
  $ get-with-headers.py $LOCALIP:$HGPORT '?cmd=getbundle' content-type --bodyfile body --hgproto 0.2 --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&cg=0&common=0000000000000000000000000000000000000000&heads=c17445101a72edac06facd130d14808dfbd5c7c2&stream=1"
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   308
  200 Script output follows
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   309
  content-type: application/mercurial-0.2
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   310
  
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   311
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   312
  $ f --size body --hexdump --bytes 100
50517
cd2a2963b982 stream-clone: upgrade the error message for bad stream request
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50381
diff changeset
   313
  body: size=140
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   314
  0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......|
50517
cd2a2963b982 stream-clone: upgrade the error message for bad stream request
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50381
diff changeset
   315
  0010: 73 0b 45 52 52 4f 52 3a 41 42 4f 52 54 00 00 00 |s.ERROR:ABORT...|
cd2a2963b982 stream-clone: upgrade the error message for bad stream request
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50381
diff changeset
   316
  0020: 00 01 01 07 3c 04 16 6d 65 73 73 61 67 65 73 74 |....<..messagest|
35791
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
   317
  0030: 72 65 61 6d 20 64 61 74 61 20 72 65 71 75 65 73 |ream data reques|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
   318
  0040: 74 65 64 20 62 75 74 20 73 65 72 76 65 72 20 64 |ted but server d|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
   319
  0050: 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 74 68 |oes not allow th|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
   320
  0060: 69 73 20 66                                     |is f|
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   321
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   322
#endif
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   323
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   324
  $ killdaemons.py
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
   325
  $ cd server
46983
e38718838808 streamclone: check the errors log in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46977
diff changeset
   326
  $ 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
   327
  $ cat hg.pid > $DAEMON_PIDS
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   328
  $ cd ..
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   329
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   330
Basic clone
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   331
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   332
#if stream-legacy
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   333
  $ 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
   334
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   335
  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
   336
  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
   337
  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
   338
  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
   339
  searching for changes
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   340
  no changes found
46983
e38718838808 streamclone: check the errors log in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46977
diff changeset
   341
  $ cat server/errors.txt
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   342
#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
   343
#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
   344
  $ 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
   345
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   346
  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
   347
  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
   348
  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
   349
  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
   350
  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
   351
  transferred 99.0 KB in * seconds (* */sec) (glob) (zstd rust !)
50524
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   352
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   353
  $ 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
   354
  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
   355
  branch2-immutable
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   356
  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
   357
  branch2-served.hidden
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   358
  branch2-visible
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   359
  branch2-visible-hidden
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   360
  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
   361
  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
   362
  tags2
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   363
  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
   364
  $ cat server/errors.txt
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   365
#endif
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   366
#if stream-bundle2-v3
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   367
  $ hg clone --stream -U http://localhost:$HGPORT clone1
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   368
  streaming all changes
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50625
diff changeset
   369
  1093 entries to transfer
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
   370
  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
   371
  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
   372
  transferred 99.0 KB in * seconds (* */sec) (glob) (zstd rust !)
35767
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
   373
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
   374
  $ ls -1 clone1/.hg/cache
46314
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45076
diff changeset
   375
  branch2-base
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45076
diff changeset
   376
  branch2-immutable
35767
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
   377
  branch2-served
46314
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45076
diff changeset
   378
  branch2-served.hidden
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45076
diff changeset
   379
  branch2-visible
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45076
diff changeset
   380
  branch2-visible-hidden
35767
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
   381
  rbc-names-v1
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
   382
  rbc-revs-v1
46314
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45076
diff changeset
   383
  tags2
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45076
diff changeset
   384
  tags2-served
46983
e38718838808 streamclone: check the errors log in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46977
diff changeset
   385
  $ cat server/errors.txt
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   386
#endif
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   387
35787
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
   388
getbundle requests with stream=1 are uncompressed
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
   389
50519
3c0da0fa0eed stream-clone: check the version of streaming clone supported by the client
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50517
diff changeset
   390
  $ 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
   391
  200 Script output follows
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
   392
  content-type: application/mercurial-0.2
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
   393
  
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
   394
47278
6a60f03d2241 tests: More cleanly separate expected hexdump output
Simon Sapin <simon.sapin@octobus.net>
parents: 47183
diff changeset
   395
#if no-zstd no-rust
35787
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
   396
  $ f --size --hex --bytes 256 body
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   397
  body: size=119140
35787
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
   398
  0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......|
48653
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   399
  0010: 62 07 53 54 52 45 41 4d 32 00 00 00 00 03 00 09 |b.STREAM2.......|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   400
  0020: 06 09 04 0c 26 62 79 74 65 63 6f 75 6e 74 31 30 |....&bytecount10|
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
   401
  0030: 34 31 31 35 66 69 6c 65 63 6f 75 6e 74 31 30 39 |4115filecount109|
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   402
  0040: 34 72 65 71 75 69 72 65 6d 65 6e 74 73 67 65 6e |4requirementsgen|
48653
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   403
  0050: 65 72 61 6c 64 65 6c 74 61 25 32 43 72 65 76 6c |eraldelta%2Crevl|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   404
  0060: 6f 67 76 31 25 32 43 73 70 61 72 73 65 72 65 76 |ogv1%2Csparserev|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   405
  0070: 6c 6f 67 00 00 80 00 73 08 42 64 61 74 61 2f 30 |log....s.Bdata/0|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   406
  0080: 2e 69 00 03 00 01 00 00 00 00 00 00 00 02 00 00 |.i..............|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   407
  0090: 00 01 00 00 00 00 00 00 00 01 ff ff ff ff ff ff |................|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   408
  00a0: ff ff 80 29 63 a0 49 d3 23 87 bf ce fe 56 67 92 |...)c.I.#....Vg.|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   409
  00b0: 67 2c 69 d1 ec 39 00 00 00 00 00 00 00 00 00 00 |g,i..9..........|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   410
  00c0: 00 00 75 30 73 26 45 64 61 74 61 2f 30 30 63 68 |..u0s&Edata/00ch|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   411
  00d0: 61 6e 67 65 6c 6f 67 2d 61 62 33 34 39 31 38 30 |angelog-ab349180|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   412
  00e0: 61 30 34 30 35 30 31 30 2e 6e 64 2e 69 00 03 00 |a0405010.nd.i...|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   413
  00f0: 01 00 00 00 00 00 00 00 05 00 00 00 04 00 00 00 |................|
47278
6a60f03d2241 tests: More cleanly separate expected hexdump output
Simon Sapin <simon.sapin@octobus.net>
parents: 47183
diff changeset
   414
#endif
6a60f03d2241 tests: More cleanly separate expected hexdump output
Simon Sapin <simon.sapin@octobus.net>
parents: 47183
diff changeset
   415
#if zstd no-rust
6a60f03d2241 tests: More cleanly separate expected hexdump output
Simon Sapin <simon.sapin@octobus.net>
parents: 47183
diff changeset
   416
  $ f --size --hex --bytes 256 body
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   417
  body: size=116327 (no-bigendian !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   418
  body: size=116322 (bigendian !)
47278
6a60f03d2241 tests: More cleanly separate expected hexdump output
Simon Sapin <simon.sapin@octobus.net>
parents: 47183
diff changeset
   419
  0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......|
48653
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   420
  0010: 7c 07 53 54 52 45 41 4d 32 00 00 00 00 03 00 09 ||.STREAM2.......|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   421
  0020: 06 09 04 0c 40 62 79 74 65 63 6f 75 6e 74 31 30 |....@bytecount10|
48521
f447b90a4b11 tests: allow for variation in zstd output as seen on s390x and powerpc
Julien Cristau <jcristau@debian.org>
parents: 48325
diff changeset
   422
  0030: 31 32 37 36 66 69 6c 65 63 6f 75 6e 74 31 30 39 |1276filecount109| (no-bigendian !)
f447b90a4b11 tests: allow for variation in zstd output as seen on s390x and powerpc
Julien Cristau <jcristau@debian.org>
parents: 48325
diff changeset
   423
  0030: 31 32 37 31 66 69 6c 65 63 6f 75 6e 74 31 30 39 |1271filecount109| (bigendian !)
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   424
  0040: 34 72 65 71 75 69 72 65 6d 65 6e 74 73 67 65 6e |4requirementsgen|
48653
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   425
  0050: 65 72 61 6c 64 65 6c 74 61 25 32 43 72 65 76 6c |eraldelta%2Crevl|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   426
  0060: 6f 67 2d 63 6f 6d 70 72 65 73 73 69 6f 6e 2d 7a |og-compression-z|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   427
  0070: 73 74 64 25 32 43 72 65 76 6c 6f 67 76 31 25 32 |std%2Crevlogv1%2|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   428
  0080: 43 73 70 61 72 73 65 72 65 76 6c 6f 67 00 00 80 |Csparserevlog...|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   429
  0090: 00 73 08 42 64 61 74 61 2f 30 2e 69 00 03 00 01 |.s.Bdata/0.i....|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   430
  00a0: 00 00 00 00 00 00 00 02 00 00 00 01 00 00 00 00 |................|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   431
  00b0: 00 00 00 01 ff ff ff ff ff ff ff ff 80 29 63 a0 |.............)c.|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   432
  00c0: 49 d3 23 87 bf ce fe 56 67 92 67 2c 69 d1 ec 39 |I.#....Vg.g,i..9|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   433
  00d0: 00 00 00 00 00 00 00 00 00 00 00 00 75 30 73 26 |............u0s&|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   434
  00e0: 45 64 61 74 61 2f 30 30 63 68 61 6e 67 65 6c 6f |Edata/00changelo|
a3cf460a6b1b stream-clone: also filter the requirement we put in the bundle 2
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48598
diff changeset
   435
  00f0: 67 2d 61 62 33 34 39 31 38 30 61 30 34 30 35 30 |g-ab349180a04050|
47278
6a60f03d2241 tests: More cleanly separate expected hexdump output
Simon Sapin <simon.sapin@octobus.net>
parents: 47183
diff changeset
   436
#endif
47279
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   437
#if zstd rust no-dirstate-v2
47278
6a60f03d2241 tests: More cleanly separate expected hexdump output
Simon Sapin <simon.sapin@octobus.net>
parents: 47183
diff changeset
   438
  $ f --size --hex --bytes 256 body
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   439
  body: size=116310 (no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   440
  body: size=116495 (rust no-stream-legacy no-bigendian !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   441
  body: size=116490 (rust no-stream-legacy bigendian !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   442
  body: size=116327 (rust stream-legacy no-bigendian !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   443
  body: size=116322 (rust stream-legacy bigendian !)
47278
6a60f03d2241 tests: More cleanly separate expected hexdump output
Simon Sapin <simon.sapin@octobus.net>
parents: 47183
diff changeset
   444
  0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......|
48693
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   445
  0010: 7c 07 53 54 52 45 41 4d 32 00 00 00 00 03 00 09 ||.STREAM2.......|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   446
  0020: 06 09 04 0c 40 62 79 74 65 63 6f 75 6e 74 31 30 |....@bytecount10|
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   447
  0030: 31 32 37 36 66 69 6c 65 63 6f 75 6e 74 31 30 39 |1276filecount109| (no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   448
  0040: 33 72 65 71 75 69 72 65 6d 65 6e 74 73 67 65 6e |3requirementsgen| (no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   449
  0030: 31 34 30 32 66 69 6c 65 63 6f 75 6e 74 31 30 39 |1402filecount109| (rust no-stream-legacy no-bigendian !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   450
  0030: 31 33 39 37 66 69 6c 65 63 6f 75 6e 74 31 30 39 |1397filecount109| (rust no-stream-legacy bigendian !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   451
  0040: 36 72 65 71 75 69 72 65 6d 65 6e 74 73 67 65 6e |6requirementsgen| (rust no-stream-legacy !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   452
  0030: 31 32 37 36 66 69 6c 65 63 6f 75 6e 74 31 30 39 |1276filecount109| (rust stream-legacy no-bigendian !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   453
  0030: 31 32 37 31 66 69 6c 65 63 6f 75 6e 74 31 30 39 |1271filecount109| (rust stream-legacy bigendian !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   454
  0040: 34 72 65 71 75 69 72 65 6d 65 6e 74 73 67 65 6e |4requirementsgen| (rust stream-legacy !)
48693
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   455
  0050: 65 72 61 6c 64 65 6c 74 61 25 32 43 72 65 76 6c |eraldelta%2Crevl|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   456
  0060: 6f 67 2d 63 6f 6d 70 72 65 73 73 69 6f 6e 2d 7a |og-compression-z|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   457
  0070: 73 74 64 25 32 43 72 65 76 6c 6f 67 76 31 25 32 |std%2Crevlogv1%2|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   458
  0080: 43 73 70 61 72 73 65 72 65 76 6c 6f 67 00 00 80 |Csparserevlog...|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   459
  0090: 00 73 08 42 64 61 74 61 2f 30 2e 69 00 03 00 01 |.s.Bdata/0.i....|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   460
  00a0: 00 00 00 00 00 00 00 02 00 00 00 01 00 00 00 00 |................|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   461
  00b0: 00 00 00 01 ff ff ff ff ff ff ff ff 80 29 63 a0 |.............)c.|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   462
  00c0: 49 d3 23 87 bf ce fe 56 67 92 67 2c 69 d1 ec 39 |I.#....Vg.g,i..9|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   463
  00d0: 00 00 00 00 00 00 00 00 00 00 00 00 75 30 73 26 |............u0s&|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   464
  00e0: 45 64 61 74 61 2f 30 30 63 68 61 6e 67 65 6c 6f |Edata/00changelo|
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   465
  00f0: 67 2d 61 62 33 34 39 31 38 30 61 30 34 30 35 30 |g-ab349180a04050|
47278
6a60f03d2241 tests: More cleanly separate expected hexdump output
Simon Sapin <simon.sapin@octobus.net>
parents: 47183
diff changeset
   466
#endif
47279
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   467
#if zstd dirstate-v2
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   468
  $ f --size --hex --bytes 256 body
47784
17211649bac2 clone: add a file with special character while testing uncompressed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47783
diff changeset
   469
  body: size=109549
47279
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   470
  0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   471
  0010: c0 07 53 54 52 45 41 4d 32 00 00 00 00 03 00 09 |..STREAM2.......|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   472
  0020: 05 09 04 0c 85 62 79 74 65 63 6f 75 6e 74 39 35 |.....bytecount95|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   473
  0030: 38 39 37 66 69 6c 65 63 6f 75 6e 74 31 30 33 30 |897filecount1030|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   474
  0040: 72 65 71 75 69 72 65 6d 65 6e 74 73 64 6f 74 65 |requirementsdote|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   475
  0050: 6e 63 6f 64 65 25 32 43 65 78 70 2d 64 69 72 73 |ncode%2Cexp-dirs|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   476
  0060: 74 61 74 65 2d 76 32 25 32 43 66 6e 63 61 63 68 |tate-v2%2Cfncach|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   477
  0070: 65 25 32 43 67 65 6e 65 72 61 6c 64 65 6c 74 61 |e%2Cgeneraldelta|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   478
  0080: 25 32 43 70 65 72 73 69 73 74 65 6e 74 2d 6e 6f |%2Cpersistent-no|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   479
  0090: 64 65 6d 61 70 25 32 43 72 65 76 6c 6f 67 2d 63 |demap%2Crevlog-c|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   480
  00a0: 6f 6d 70 72 65 73 73 69 6f 6e 2d 7a 73 74 64 25 |ompression-zstd%|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   481
  00b0: 32 43 72 65 76 6c 6f 67 76 31 25 32 43 73 70 61 |2Crevlogv1%2Cspa|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   482
  00c0: 72 73 65 72 65 76 6c 6f 67 25 32 43 73 74 6f 72 |rserevlog%2Cstor|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   483
  00d0: 65 00 00 80 00 73 08 42 64 61 74 61 2f 30 2e 69 |e....s.Bdata/0.i|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   484
  00e0: 00 03 00 01 00 00 00 00 00 00 00 02 00 00 00 01 |................|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   485
  00f0: 00 00 00 00 00 00 00 01 ff ff ff ff ff ff ff ff |................|
40b51c28b242 dirstate-v2: Update the expected output of some tests for new requirement
Simon Sapin <simon.sapin@octobus.net>
parents: 47278
diff changeset
   486
#endif
35787
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
   487
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   488
--uncompressed is an alias to --stream
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   489
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   490
#if stream-legacy
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   491
  $ hg clone --uncompressed -U http://localhost:$HGPORT clone1-uncompressed
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   492
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   493
  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
   494
  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
   495
  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
   496
  transferred 98.8 KB in * seconds (* */sec) (glob) (zstd !)
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   497
  searching for changes
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   498
  no changes found
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   499
#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
   500
#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
   501
  $ 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
   502
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   503
  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
   504
  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
   505
  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
   506
  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
   507
  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
   508
  transferred 99.0 KB in * seconds (* */sec) (glob) (zstd rust !)
50524
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   509
#endif
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   510
#if stream-bundle2-v3
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   511
  $ hg clone --uncompressed -U http://localhost:$HGPORT clone1-uncompressed
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   512
  streaming all changes
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50625
diff changeset
   513
  1093 entries to transfer
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
   514
  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
   515
  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
   516
  transferred 99.0 KB in * seconds (* */sec) (glob) (zstd rust !)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   517
#endif
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   518
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   519
Clone with background file closing enabled
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   520
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   521
#if stream-legacy
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   522
  $ hg --debug --config worker.backgroundclose=true --config worker.backgroundcloseminfilecount=1 clone --stream -U http://localhost:$HGPORT clone-background | grep -v adding
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   523
  using http://localhost:$HGPORT/
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   524
  sending capabilities command
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   525
  sending branchmap command
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   526
  streaming all changes
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   527
  sending stream_out command
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   528
  1091 files to transfer, 102 KB of data (no-zstd !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   529
  1091 files to transfer, 98.8 KB of data (zstd !)
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   530
  starting 4 threads for background file closing
39301
5763216ba311 transaction: remember original len(repo) instead of tracking added revs (API)
Yuya Nishihara <yuya@tcha.org>
parents: 38021
diff changeset
   531
  updating the branch cache
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
   532
  transferred 102 KB in * seconds (* */sec) (glob) (no-zstd !)
67af3b3173b7 clone: add a file demonstrating issue6581 in test-clone-stream.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47869
diff changeset
   533
  transferred 98.8 KB in * seconds (* */sec) (glob) (zstd !)
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   534
  query 1; heads
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   535
  sending batch command
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   536
  searching for changes
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   537
  all remote heads known locally
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   538
  no changes found
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   539
  sending getbundle command
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   540
  bundle2-input-bundle: with-transaction
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   541
  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
34322
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 32744
diff changeset
   542
  bundle2-input-part: "phase-heads" supported
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 32744
diff changeset
   543
  bundle2-input-part: total payload size 24
42931
181ee2118a96 bundle2: fix an off-by-one in debug message of number of parts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42893
diff changeset
   544
  bundle2-input-bundle: 2 parts total
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   545
  checking for updated bookmarks
46314
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45076
diff changeset
   546
  updating the branch cache
40034
393e44324037 httppeer: report http statistics
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39722
diff changeset
   547
  (sent 5 HTTP requests and * bytes; received * bytes in responses) (glob)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   548
#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
   549
#if stream-bundle2-v2
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   550
  $ hg --debug --config worker.backgroundclose=true --config worker.backgroundcloseminfilecount=1 clone --stream -U http://localhost:$HGPORT clone-background | grep -v adding
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   551
  using http://localhost:$HGPORT/
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   552
  sending capabilities command
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   553
  query 1; heads
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   554
  sending batch command
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   555
  streaming all changes
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   556
  sending getbundle command
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   557
  bundle2-input-bundle: with-transaction
35788
b116a66bcc44 bundle2: move version of stream clone into part name
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35787
diff changeset
   558
  bundle2-input-part: "stream2" (params: 3 mandatory) supported
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   559
  applying stream bundle
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   560
  1094 files to transfer, 102 KB of data (no-zstd !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   561
  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
   562
  1096 files to transfer, 99.0 KB of data (zstd rust !)
35767
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
   563
  starting 4 threads for background file closing
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   564
  starting 4 threads for background file closing
39301
5763216ba311 transaction: remember original len(repo) instead of tracking added revs (API)
Yuya Nishihara <yuya@tcha.org>
parents: 38021
diff changeset
   565
  updating the branch cache
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
   566
  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
   567
  bundle2-input-part: total payload size 119001 (no-zstd !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   568
  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
   569
  transferred 99.0 KB in * seconds (* */sec) (glob) (zstd rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   570
  bundle2-input-part: total payload size 116162 (zstd no-bigendian no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   571
  bundle2-input-part: total payload size 116330 (zstd no-bigendian rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   572
  bundle2-input-part: total payload size 116157 (zstd bigendian no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   573
  bundle2-input-part: total payload size 116325 (zstd bigendian rust !)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   574
  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
42931
181ee2118a96 bundle2: fix an off-by-one in debug message of number of parts
Martin von Zweigbergk <martinvonz@google.com>
parents: 42893
diff changeset
   575
  bundle2-input-bundle: 2 parts total
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   576
  checking for updated bookmarks
46314
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45076
diff changeset
   577
  updating the branch cache
40034
393e44324037 httppeer: report http statistics
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39722
diff changeset
   578
  (sent 3 HTTP requests and * bytes; received * bytes in responses) (glob)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   579
#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
   580
#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
   581
  $ hg --debug --config worker.backgroundclose=true --config worker.backgroundcloseminfilecount=1 clone --stream -U http://localhost:$HGPORT clone-background | grep -v adding
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   582
  using http://localhost:$HGPORT/
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   583
  sending capabilities command
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   584
  query 1; heads
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   585
  sending batch command
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   586
  streaming all changes
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   587
  sending getbundle command
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   588
  bundle2-input-bundle: with-transaction
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50625
diff changeset
   589
  bundle2-input-part: "stream3-exp" (params: 1 mandatory) supported
50524
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   590
  applying stream bundle
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50625
diff changeset
   591
  1093 entries to transfer
50524
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   592
  starting 4 threads for background file closing
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   593
  starting 4 threads for background file closing
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   594
  updating the branch cache
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   595
  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
   596
  bundle2-input-part: total payload size 120096 (no-zstd !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   597
  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
   598
  transferred 99.0 KB in * seconds (* */sec) (glob) (zstd rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   599
  bundle2-input-part: total payload size 117257 (zstd no-rust no-bigendian !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   600
  bundle2-input-part: total payload size 117425 (zstd rust no-bigendian !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   601
  bundle2-input-part: total payload size 117252 (zstd bigendian no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   602
  bundle2-input-part: total payload size 117420 (zstd bigendian rust !)
50524
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   603
  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   604
  bundle2-input-bundle: 2 parts total
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   605
  checking for updated bookmarks
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   606
  updating the branch cache
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   607
  (sent 3 HTTP requests and * bytes; received * bytes in responses) (glob)
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   608
#endif
28517
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   609
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   610
Cannot stream clone when there are secret changesets
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   611
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   612
  $ 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
   613
  $ 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
   614
  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
   615
  requesting all changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   616
  adding changesets
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   617
  adding manifests
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   618
  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
   619
  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
   620
  new changesets 96ee1d7354c4:c17445101a72
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   621
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   622
  $ killdaemons.py
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   623
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   624
Streaming of secrets can be overridden by server config
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   625
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   626
  $ cd server
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
   627
  $ 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
   628
  $ cat hg.pid > $DAEMON_PIDS
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   629
  $ cd ..
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   630
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   631
#if stream-legacy
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   632
  $ hg clone --stream -U http://localhost:$HGPORT secret-allowed
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   633
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   634
  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
   635
  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
   636
  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
   637
  transferred 98.8 KB in * seconds (* */sec) (glob) (zstd !)
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   638
  searching for changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   639
  no changes found
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   640
#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
   641
#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
   642
  $ 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
   643
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   644
  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
   645
  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
   646
  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
   647
  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
   648
  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
   649
  transferred 99.0 KB in * seconds (* */sec) (glob) (zstd rust !)
50524
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   650
#endif
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   651
#if stream-bundle2-v3
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   652
  $ hg clone --stream -U http://localhost:$HGPORT secret-allowed
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   653
  streaming all changes
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50625
diff changeset
   654
  1093 entries to transfer
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
   655
  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
   656
  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
   657
  transferred 99.0 KB in * seconds (* */sec) (glob) (zstd rust !)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   658
#endif
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   659
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   660
  $ killdaemons.py
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   661
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   662
Verify interaction between preferuncompressed and secret presence
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   663
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   664
  $ cd server
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
   665
  $ 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
   666
  $ cat hg.pid > $DAEMON_PIDS
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   667
  $ cd ..
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   668
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   669
  $ 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
   670
  requesting all changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   671
  adding changesets
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   672
  adding manifests
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   673
  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
   674
  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
   675
  new changesets 96ee1d7354c4:c17445101a72
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   676
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   677
  $ killdaemons.py
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   678
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   679
Clone not allowed when full bundles disabled and can't serve secrets
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   680
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   681
  $ cd server
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
   682
  $ 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
   683
  $ cat hg.pid > $DAEMON_PIDS
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   684
  $ cd ..
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   685
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   686
  $ 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
   687
  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
   688
  requesting all changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   689
  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
   690
  abort: pull failed on remote
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   691
  (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
   692
  [100]
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   693
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   694
Local stream clone with secrets involved
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   695
(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
   696
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
   697
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   698
  $ 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
   699
  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
   700
  requesting all changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   701
  adding changesets
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   702
  adding manifests
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
   703
  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
   704
  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
   705
  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
   706
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   707
Stream clone while repo is changing:
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   708
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   709
  $ mkdir changing
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   710
  $ cd changing
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   711
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   712
prepare repo with small and big file to cover both code paths in emitrevlogdata
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   713
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   714
  $ hg init repo
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   715
  $ touch repo/f1
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   716
  $ $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
   717
  $ 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
   718
  $ 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
   719
  $ 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
   720
  $ 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
   721
  $ 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
   722
  $ 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
   723
  $ 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
   724
#   $ cat << EOF >> $HGRCPATH
faa43f09ad98 streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46983
diff changeset
   725
#   > [hooks]
faa43f09ad98 streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46983
diff changeset
   726
#   > 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
   727
#   > EOF
faa43f09ad98 streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46983
diff changeset
   728
  $ 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
   729
  $ 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
   730
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   731
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
   732
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
   733
46986
faa43f09ad98 streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46983
diff changeset
   734
  $ (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
   735
  $ $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
   736
  $ echo >> repo/f1
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
   737
  $ 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
   738
  $ 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
   739
  $ 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
   740
  $ $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
   741
  $ 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
   742
  000000000000
46986
faa43f09ad98 streamclone: remove sleep based "synchronisation" in tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 46983
diff changeset
   743
  $ cat errors.log
35747
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   744
  $ cd ..
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   745
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   746
Stream repository with bookmarks
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   747
--------------------------------
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   748
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   749
(revert introduction of secret changeset)
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   750
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   751
  $ hg -R server phase --draft 'secret()'
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   752
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   753
add a bookmark
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   754
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   755
  $ 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
   756
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   757
clone it
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   758
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   759
#if stream-legacy
35747
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   760
  $ hg clone --stream http://localhost:$HGPORT with-bookmarks
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   761
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   762
  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
   763
  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
   764
  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
   765
  transferred 98.8 KB in * seconds (* */sec) (glob) (zstd !)
35747
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   766
  searching for changes
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   767
  no changes found
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
   768
  updating to branch default
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
   769
  1088 files updated, 0 files merged, 0 files removed, 0 files unresolved
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   770
#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
   771
#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
   772
  $ 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
   773
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   774
  1097 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
   775
  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
   776
  1097 files to transfer, 99.1 KB of data (zstd no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   777
  transferred 99.1 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
   778
  1099 files to transfer, 99.2 KB of data (zstd rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   779
  transferred 99.2 KB in * seconds (* */sec) (glob) (zstd rust !)
50524
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   780
  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
   781
  1088 files updated, 0 files merged, 0 files removed, 0 files unresolved
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   782
#endif
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   783
#if stream-bundle2-v3
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   784
  $ hg clone --stream http://localhost:$HGPORT with-bookmarks
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   785
  streaming all changes
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50625
diff changeset
   786
  1096 entries to transfer
47784
17211649bac2 clone: add a file with special character while testing uncompressed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47783
diff changeset
   787
  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
   788
  transferred 99.1 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
   789
  transferred 99.2 KB in * seconds (* */sec) (glob) (zstd rust !)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   790
  updating to branch default
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
   791
  1088 files updated, 0 files merged, 0 files removed, 0 files unresolved
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
   792
#endif
49825
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 48990
diff changeset
   793
  $ 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
   794
  $ 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
   795
     some-bookmark             2:5223b5e3265f
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   796
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   797
Stream repository with phases
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   798
-----------------------------
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   799
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   800
Clone as publishing
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   801
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   802
  $ hg -R server phase -r 'all()'
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   803
  0: draft
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   804
  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
   805
  2: draft
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   806
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   807
#if stream-legacy
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   808
  $ hg clone --stream http://localhost:$HGPORT phase-publish
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   809
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   810
  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
   811
  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
   812
  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
   813
  transferred 98.8 KB in * seconds (* */sec) (glob) (zstd !)
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   814
  searching for changes
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   815
  no changes found
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   816
  updating to branch default
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
   817
  1088 files updated, 0 files merged, 0 files removed, 0 files unresolved
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   818
#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
   819
#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
   820
  $ 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
   821
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   822
  1097 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
   823
  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
   824
  1097 files to transfer, 99.1 KB of data (zstd no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   825
  transferred 99.1 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
   826
  1099 files to transfer, 99.2 KB of data (zstd rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   827
  transferred 99.2 KB in * seconds (* */sec) (glob) (zstd rust !)
50524
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   828
  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
   829
  1088 files updated, 0 files merged, 0 files removed, 0 files unresolved
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   830
#endif
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   831
#if stream-bundle2-v3
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   832
  $ hg clone --stream http://localhost:$HGPORT phase-publish
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   833
  streaming all changes
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50625
diff changeset
   834
  1096 entries to transfer
47784
17211649bac2 clone: add a file with special character while testing uncompressed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47783
diff changeset
   835
  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
   836
  transferred 99.1 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
   837
  transferred 99.2 KB in * seconds (* */sec) (glob) (zstd rust !)
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   838
  updating to branch default
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
   839
  1088 files updated, 0 files merged, 0 files removed, 0 files unresolved
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   840
#endif
49825
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 48990
diff changeset
   841
  $ 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
   842
  $ 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
   843
  0: public
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   844
  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
   845
  2: public
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   846
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   847
Clone as non publishing
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   848
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   849
  $ cat << EOF >> server/.hg/hgrc
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   850
  > [phases]
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   851
  > publish = False
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   852
  > EOF
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   853
  $ killdaemons.py
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   854
  $ 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
   855
  $ cat hg.pid > $DAEMON_PIDS
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   856
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   857
#if stream-legacy
35805
784ac51f8bab streamclone: add a comment about non-publishing being broken with v1
Boris Feld <boris.feld@octobus.net>
parents: 35793
diff changeset
   858
784ac51f8bab streamclone: add a comment about non-publishing being broken with v1
Boris Feld <boris.feld@octobus.net>
parents: 35793
diff changeset
   859
With v1 of the stream protocol, changeset are always cloned as public. It make
784ac51f8bab streamclone: add a comment about non-publishing being broken with v1
Boris Feld <boris.feld@octobus.net>
parents: 35793
diff changeset
   860
stream v1 unsuitable for non-publishing repository.
784ac51f8bab streamclone: add a comment about non-publishing being broken with v1
Boris Feld <boris.feld@octobus.net>
parents: 35793
diff changeset
   861
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   862
  $ hg clone --stream http://localhost:$HGPORT phase-no-publish
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   863
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   864
  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
   865
  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
   866
  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
   867
  transferred 98.8 KB in * seconds (* */sec) (glob) (zstd !)
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   868
  searching for changes
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   869
  no changes found
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   870
  updating to branch default
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
   871
  1088 files updated, 0 files merged, 0 files removed, 0 files unresolved
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   872
  $ hg -R phase-no-publish phase -r 'all()'
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   873
  0: public
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   874
  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
   875
  2: public
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   876
#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
   877
#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
   878
  $ 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
   879
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   880
  1098 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
   881
  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
   882
  1098 files to transfer, 99.1 KB of data (zstd no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   883
  transferred 99.1 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
   884
  1100 files to transfer, 99.2 KB of data (zstd rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   885
  transferred 99.2 KB in * seconds (* */sec) (glob) (zstd rust !)
50524
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   886
  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
   887
  1088 files updated, 0 files merged, 0 files removed, 0 files unresolved
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   888
  $ hg -R phase-no-publish phase -r 'all()'
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   889
  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
   890
  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
   891
  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
   892
#endif
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   893
#if stream-bundle2-v3
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   894
  $ hg clone --stream http://localhost:$HGPORT phase-no-publish
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   895
  streaming all changes
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50625
diff changeset
   896
  1097 entries to transfer
47784
17211649bac2 clone: add a file with special character while testing uncompressed
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47783
diff changeset
   897
  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
   898
  transferred 99.1 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
   899
  transferred 99.2 KB in * seconds (* */sec) (glob) (zstd rust !)
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   900
  updating to branch default
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
   901
  1088 files updated, 0 files merged, 0 files removed, 0 files unresolved
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   902
  $ hg -R phase-no-publish phase -r 'all()'
35765
56c30b31afbe streamclone: add support for cloning non append-only file
Boris Feld <boris.feld@octobus.net>
parents: 35764
diff changeset
   903
  0: draft
56c30b31afbe streamclone: add support for cloning non append-only file
Boris Feld <boris.feld@octobus.net>
parents: 35764
diff changeset
   904
  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
   905
  2: draft
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   906
#endif
49825
2f2682f40ea0 tests: use the `--quiet` flag for verify when applicable
Raphaël Gomès <rgomes@octobus.net>
parents: 48990
diff changeset
   907
  $ 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
   908
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
   909
  $ 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
   910
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   911
#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
   912
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   913
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
   914
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
   915
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   916
#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
   917
#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
   918
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   919
Stream repository 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
   920
-----------------------------------
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   921
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   922
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
   923
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   924
  $ 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
   925
  > [experimental]
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   926
  > 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
   927
  > EOF
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   928
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   929
  $ 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
   930
  $ 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
   931
  $ 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
   932
  $ 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
   933
  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
   934
  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
   935
  $ 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
   936
  $ 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
   937
  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
   938
  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
   939
  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
   940
  $ 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
   941
  $ 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
   942
  $ cd ..
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   943
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   944
  $ 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
   945
  streaming all changes
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   946
  1099 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
   947
  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
   948
  1099 files to transfer, 99.5 KB of data (zstd no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   949
  transferred 99.5 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
   950
  1101 files to transfer, 99.6 KB of data (zstd rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51077
diff changeset
   951
  transferred 99.6 KB in * seconds (* */sec) (glob) (zstd rust !)
50524
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   952
  $ hg -R with-obsolescence 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
   953
  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
   954
  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
   955
  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
   956
  $ hg debugobsolete -R 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
   957
  8c206a663911c1f97f2f9d7382e417ae55872cfa 0 {5223b5e3265f0df40bb743da62249413d74ac70f} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   958
  $ hg verify -R with-obsolescence -q
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   959
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   960
  $ hg clone -U --stream --config experimental.evolution=0 http://localhost:$HGPORT with-obsolescence-no-evolution
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   961
  streaming all changes
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   962
  remote: abort: server has obsolescence markers, but client cannot receive them via stream clone
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   963
  abort: pull failed on remote
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   964
  [100]
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   965
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   966
  $ killdaemons.py
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   967
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   968
#endif
58adcabc295f stream-clone: introduce the notion of an experimental "v3" version
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50519
diff changeset
   969
#if stream-bundle2-v3
40398
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   970
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   971
Stream repository with obsolescence
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   972
-----------------------------------
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   973
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   974
Clone non-publishing with obsolescence
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   975
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   976
  $ cat >> $HGRCPATH << EOF
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   977
  > [experimental]
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   978
  > evolution=all
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   979
  > EOF
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   980
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   981
  $ cd server
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   982
  $ echo foo > foo
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   983
  $ hg -q commit -m 'about to be pruned'
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   984
  $ hg debugobsolete `hg log -r . -T '{node}'` -d '0 0' -u test --record-parents
42893
34a46d48d24e debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 40978
diff changeset
   985
  1 new obsolescence markers
40398
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   986
  obsoleted 1 changesets
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   987
  $ hg up null -q
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   988
  $ hg 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
   989
  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
   990
  1: draft
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   991
  0: draft
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   992
  $ hg serve -p $HGPORT -d --pid-file=hg.pid
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   993
  $ cat hg.pid > $DAEMON_PIDS
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   994
  $ cd ..
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   995
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   996
  $ hg clone -U --stream http://localhost:$HGPORT with-obsolescence
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
   997
  streaming all changes
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50625
diff changeset
   998
  1098 entries to transfer
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
   999
  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
  1000
  transferred 99.5 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
  1001
  transferred 99.6 KB in * seconds (* */sec) (glob) (zstd rust !)
40398
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
  1002
  $ 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
  1003
  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
  1004
  1: draft
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
  1005
  0: draft
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
  1006
  $ 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
  1007
  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
  1008
  $ 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
  1009
40399
4ab6e7b4fe8a streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents: 40398
diff changeset
  1010
  $ 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
  1011
  streaming all changes
4ab6e7b4fe8a streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents: 40398
diff changeset
  1012
  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
  1013
  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
  1014
  [100]
40399
4ab6e7b4fe8a streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents: 40398
diff changeset
  1015
40398
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
  1016
  $ killdaemons.py
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
  1017
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
  1018
#endif
48990
d9ed7c5e915d streamclone: avoid some obscure error in a corner case
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 48968
diff changeset
  1019
d9ed7c5e915d streamclone: avoid some obscure error in a corner case
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 48968
diff changeset
  1020
Cloning a repo with no requirements doesn't give some obscure error
d9ed7c5e915d streamclone: avoid some obscure error in a corner case
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 48968
diff changeset
  1021
d9ed7c5e915d streamclone: avoid some obscure error in a corner case
Valentin Gatien-Baron <vgatien-baron@janestreet.com>
parents: 48968
diff changeset
  1022
  $ 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
  1023
  $ 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
  1024
  $ 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
  1025
74c004a515bc stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50706
diff changeset
  1026
Cloning a repo with an empty manifestlog doesn't give some weird error
74c004a515bc stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50706
diff changeset
  1027
74c004a515bc stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50706
diff changeset
  1028
  $ 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
  1029
  $ (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
  1030
  $ hg clone -q --stream ssh://user@dummy/empty-repo empty-repo3
74c004a515bc stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50706
diff changeset
  1031
  $ hg --cwd empty-repo3 verify -q 2>&1 | grep -v warning
74c004a515bc stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50706
diff changeset
  1032
  [1]
74c004a515bc stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50706
diff changeset
  1033
74c004a515bc stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50706
diff changeset
  1034
The warnings filtered out here are talking about zero-length 'orphan' data files.
74c004a515bc stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50706
diff changeset
  1035
Those are harmless, so that's fine.
74c004a515bc stream-clone: fix a crash when a repo with an empty revlog is cloned
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50706
diff changeset
  1036