tests/test-clone-stream-format.t
author Manuel Jacob <me@manueljacob.de>
Sun, 22 May 2022 03:50:34 +0200
changeset 49269 395f28064826
parent 48800 cffc914cc01b
child 49825 2f2682f40ea0
permissions -rw-r--r--
worker: avoid potential partial write of pickled data Previously, the code wrote the pickled data using os.write(). However, os.write() can write less bytes than passed to it. To trigger the problem, the pickled data had to be larger than 2147479552 bytes on my system. Instead, open a file object and pass it to pickle.dump(). This also has the advantage that it doesn’t buffer the whole pickled data in memory. Note that the opened file must be buffered because pickle doesn’t support unbuffered streams because unbuffered streams’ write() method might write less bytes than passed to it (like os.write()) but pickle.dump() relies on that all bytes are written (see https://github.com/python/cpython/issues/93050). The side effect of using a file object and a with statement is that wfd is explicitly closed now while it seems like before it was implicitly closed by process exit.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     1
This file contains tests case that deal with format change accross stream clone
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     2
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     3
#require serve no-reposimplestore no-chg
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     4
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
     5
#testcases stream-legacy stream-bundle2
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
     6
48693
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
     7
  $ cat << EOF >> $HGRCPATH
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
     8
  > [storage]
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
     9
  > revlog.persistent-nodemap.slow-path=allow
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
    10
  > EOF
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
    11
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    12
#if stream-legacy
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    13
  $ cat << EOF >> $HGRCPATH
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    14
  > [server]
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    15
  > bundle2.stream = no
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    16
  > EOF
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    17
#endif
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    18
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    19
Initialize repository
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    20
48693
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
    21
  $ hg init server --config format.use-share-safe=yes --config format.use-persistent-nodemap=yes
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    22
  $ cd server
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    23
  $ sh $TESTDIR/testlib/stream_clone_setup.sh
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    24
  adding 00changelog-ab349180a0405010.nd
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    25
  adding 00changelog.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    26
  adding 00changelog.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    27
  adding 00changelog.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    28
  adding 00manifest.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    29
  adding 00manifest.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    30
  adding container/isam-build-centos7/bazel-coverage-generator-sandboxfs-compatibility-0758e3e4f6057904d44399bd666faba9e7f40686.patch
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    31
  adding data/foo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    32
  adding data/foo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    33
  adding data/foo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    34
  adding data/undo.babar
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    35
  adding data/undo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    36
  adding data/undo.foo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    37
  adding data/undo.foo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    38
  adding data/undo.foo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    39
  adding data/undo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    40
  adding data/undo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    41
  adding data/undo.py
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    42
  adding foo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    43
  adding foo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    44
  adding foo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    45
  adding meta/foo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    46
  adding meta/foo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    47
  adding meta/foo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    48
  adding meta/undo.babar
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    49
  adding meta/undo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    50
  adding meta/undo.foo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    51
  adding meta/undo.foo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    52
  adding meta/undo.foo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    53
  adding meta/undo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    54
  adding meta/undo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    55
  adding meta/undo.py
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    56
  adding savanah/foo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    57
  adding savanah/foo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    58
  adding savanah/foo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    59
  adding savanah/undo.babar
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    60
  adding savanah/undo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    61
  adding savanah/undo.foo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    62
  adding savanah/undo.foo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    63
  adding savanah/undo.foo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    64
  adding savanah/undo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    65
  adding savanah/undo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    66
  adding savanah/undo.py
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    67
  adding store/C\xc3\xa9lesteVille_is_a_Capital_City (esc)
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    68
  adding store/foo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    69
  adding store/foo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    70
  adding store/foo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    71
  adding store/undo.babar
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    72
  adding store/undo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    73
  adding store/undo.foo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    74
  adding store/undo.foo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    75
  adding store/undo.foo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    76
  adding store/undo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    77
  adding store/undo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    78
  adding store/undo.py
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    79
  adding undo.babar
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    80
  adding undo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    81
  adding undo.foo.d
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    82
  adding undo.foo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    83
  adding undo.foo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    84
  adding undo.i
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    85
  adding undo.n
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    86
  adding undo.py
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
    87
  $ hg debugbuilddag .+5000 --from-existing
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
    88
  $ ls -1 .hg/store/00changelog*
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
    89
  .hg/store/00changelog-*.nd (glob)
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
    90
  .hg/store/00changelog.d
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
    91
  .hg/store/00changelog.i
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
    92
  .hg/store/00changelog.n
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    93
  $ cd ..
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    94
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    95
48800
cffc914cc01b windows: skip a section of a test that is legitimately broken on windows
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
    96
#if no-windows
cffc914cc01b windows: skip a section of a test that is legitimately broken on windows
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
    97
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    98
Test streaming from/to repository without a store:
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
    99
==================================================
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   100
48800
cffc914cc01b windows: skip a section of a test that is legitimately broken on windows
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   101
This is skipped Windows needs dot-encode to handle some of the file in this
cffc914cc01b windows: skip a section of a test that is legitimately broken on windows
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   102
tests, and dot-encode need the store enabled.
cffc914cc01b windows: skip a section of a test that is legitimately broken on windows
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   103
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   104
  $ hg clone --pull --config format.usestore=no server server-no-store
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   105
  requesting all changes
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   106
  adding changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   107
  adding manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   108
  adding file changes
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   109
  added 5004 changesets with 1088 changes to 1088 files (+1 heads)
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   110
  new changesets 96ee1d7354c4:06ddac466af5
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   111
  updating to branch default
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   112
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   113
  $ hg verify -R server-no-store
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   114
  checking changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   115
  checking manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   116
  crosschecking files in changesets and manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   117
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   118
  checked 5004 changesets with 1088 changes to 1088 files
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   119
  $ hg -R server serve -p $HGPORT -d --pid-file=hg-1.pid --error errors-1.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   120
  $ cat hg-1.pid > $DAEMON_PIDS
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   121
  $ hg -R server-no-store serve -p $HGPORT2 -d --pid-file=hg-2.pid --error errors-2.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   122
  $ cat hg-2.pid >> $DAEMON_PIDS
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   123
  $ hg debugrequires -R server | grep store
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   124
  store
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   125
  $ hg debugrequires -R server-no-store | grep store
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   126
  [1]
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   127
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   128
store → no-store cloning
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   129
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   130
  $ hg clone --quiet --stream -U http://localhost:$HGPORT clone-remove-store --config format.usestore=no
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   131
  $ cat errors-1.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   132
  $ hg -R clone-remove-store verify
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   133
  checking changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   134
  checking manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   135
  crosschecking files in changesets and manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   136
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   137
  checked 5004 changesets with 1088 changes to 1088 files
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   138
  $ hg debugrequires -R clone-remove-store | grep store
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   139
  [1]
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   140
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   141
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   142
no-store → store cloning
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   143
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   144
  $ hg clone --quiet --stream -U http://localhost:$HGPORT2 clone-add-store --config format.usestore=yes
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   145
  $ cat errors-2.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   146
  $ hg -R clone-add-store verify
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   147
  checking changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   148
  checking manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   149
  crosschecking files in changesets and manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   150
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   151
  checked 5004 changesets with 1088 changes to 1088 files
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   152
  $ hg debugrequires -R clone-add-store | grep store
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   153
  store
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   154
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   155
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   156
  $ killdaemons.py
48800
cffc914cc01b windows: skip a section of a test that is legitimately broken on windows
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   157
  $ rm hg-*.pid errors-*.txt
cffc914cc01b windows: skip a section of a test that is legitimately broken on windows
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   158
cffc914cc01b windows: skip a section of a test that is legitimately broken on windows
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   159
#endif
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   160
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   161
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   162
Test streaming from/to repository without a fncache
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   163
===================================================
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   164
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   165
  $ hg clone --pull --config format.usefncache=no server server-no-fncache
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   166
  requesting all changes
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   167
  adding changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   168
  adding manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   169
  adding file changes
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   170
  added 5004 changesets with 1088 changes to 1088 files (+1 heads)
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   171
  new changesets 96ee1d7354c4:06ddac466af5
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   172
  updating to branch default
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   173
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   174
  $ hg verify -R server-no-fncache
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   175
  checking changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   176
  checking manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   177
  crosschecking files in changesets and manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   178
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   179
  checked 5004 changesets with 1088 changes to 1088 files
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   180
  $ hg -R server serve -p $HGPORT -d --pid-file=hg-1.pid --error errors-1.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   181
  $ cat hg-1.pid > $DAEMON_PIDS
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   182
  $ hg -R server-no-fncache serve -p $HGPORT2 -d --pid-file=hg-2.pid --error errors-2.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   183
  $ cat hg-2.pid >> $DAEMON_PIDS
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   184
  $ hg debugrequires -R server | grep fncache
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   185
  fncache
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   186
  $ hg debugrequires -R server-no-fncache | grep fncache
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   187
  [1]
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   188
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   189
fncache → no-fncache cloning
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   190
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   191
  $ hg clone --quiet --stream -U http://localhost:$HGPORT clone-remove-fncache --config format.usefncache=no
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   192
  $ cat errors-1.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   193
  $ hg -R clone-remove-fncache verify
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   194
  checking changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   195
  checking manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   196
  crosschecking files in changesets and manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   197
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   198
  checked 5004 changesets with 1088 changes to 1088 files
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   199
  $ hg debugrequires -R clone-remove-fncache | grep fncache
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   200
  [1]
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   201
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   202
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   203
no-fncache → fncache cloning
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   204
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   205
  $ hg clone --quiet --stream -U http://localhost:$HGPORT2 clone-add-fncache --config format.usefncache=yes
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   206
  $ cat errors-2.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   207
  $ hg -R clone-add-fncache verify
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   208
  checking changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   209
  checking manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   210
  crosschecking files in changesets and manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   211
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   212
  checked 5004 changesets with 1088 changes to 1088 files
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   213
  $ hg debugrequires -R clone-add-fncache | grep fncache
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   214
  fncache
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   215
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   216
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   217
  $ killdaemons.py
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   218
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   219
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   220
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   221
Test streaming from/to repository without a dotencode
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   222
===================================================
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   223
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   224
  $ rm hg-*.pid errors-*.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   225
  $ hg clone --pull --config format.dotencode=no server server-no-dotencode
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   226
  requesting all changes
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   227
  adding changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   228
  adding manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   229
  adding file changes
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   230
  added 5004 changesets with 1088 changes to 1088 files (+1 heads)
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   231
  new changesets 96ee1d7354c4:06ddac466af5
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   232
  updating to branch default
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   233
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   234
  $ hg verify -R server-no-dotencode
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   235
  checking changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   236
  checking manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   237
  crosschecking files in changesets and manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   238
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   239
  checked 5004 changesets with 1088 changes to 1088 files
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   240
  $ hg -R server serve -p $HGPORT -d --pid-file=hg-1.pid --error errors-1.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   241
  $ cat hg-1.pid > $DAEMON_PIDS
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   242
  $ hg -R server-no-dotencode serve -p $HGPORT2 -d --pid-file=hg-2.pid --error errors-2.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   243
  $ cat hg-2.pid >> $DAEMON_PIDS
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   244
  $ hg debugrequires -R server | grep dotencode
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   245
  dotencode
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   246
  $ hg debugrequires -R server-no-dotencode | grep dotencode
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   247
  [1]
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   248
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   249
dotencode → no-dotencode cloning
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   250
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   251
  $ hg clone --quiet --stream -U http://localhost:$HGPORT clone-remove-dotencode --config format.dotencode=no
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   252
  $ cat errors-1.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   253
  $ hg -R clone-remove-dotencode verify
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   254
  checking changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   255
  checking manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   256
  crosschecking files in changesets and manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   257
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   258
  checked 5004 changesets with 1088 changes to 1088 files
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   259
  $ hg debugrequires -R clone-remove-dotencode | grep dotencode
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   260
  [1]
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   261
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   262
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   263
no-dotencode → dotencode cloning
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   264
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   265
  $ hg clone --quiet --stream -U http://localhost:$HGPORT2 clone-add-dotencode --config format.dotencode=yes
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   266
  $ cat errors-2.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   267
  $ hg -R clone-add-dotencode verify
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   268
  checking changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   269
  checking manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   270
  crosschecking files in changesets and manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   271
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   272
  checked 5004 changesets with 1088 changes to 1088 files
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   273
  $ hg debugrequires -R clone-add-dotencode | grep dotencode
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   274
  dotencode
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   275
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   276
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   277
  $ killdaemons.py
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   278
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   279
Cloning from a share
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   280
--------------------
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   281
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   282
We should be able to clone from a "share" repository, it will use the source store for streaming.
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   283
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   284
The resulting clone should not use share.
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   285
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   286
  $ rm hg-*.pid errors-*.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   287
  $ hg share --config extensions.share= server server-share -U
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   288
  $ hg -R server-share serve -p $HGPORT -d --pid-file=hg-1.pid --error errors-1.txt
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   289
  $ cat hg-1.pid > $DAEMON_PIDS
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   290
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   291
  $ hg clone --quiet --stream -U http://localhost:$HGPORT clone-from-share
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   292
  $ hg -R clone-from-share verify
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   293
  checking changesets
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   294
  checking manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   295
  crosschecking files in changesets and manifests
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   296
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   297
  checked 5004 changesets with 1088 changes to 1088 files
48654
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   298
  $ hg debugrequires -R clone-from-share | egrep 'share$'
48598
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   299
  [1]
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   300
a6f16ec07ed7 stream-clone: add a explicit test for format change during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
   301
  $ killdaemons.py
48654
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   302
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   303
Test streaming from/to repository without a share-safe
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   304
======================================================
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   305
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   306
  $ rm hg-*.pid errors-*.txt
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   307
  $ hg clone --pull --config format.use-share-safe=no server server-no-share-safe
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   308
  requesting all changes
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   309
  adding changesets
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   310
  adding manifests
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   311
  adding file changes
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   312
  added 5004 changesets with 1088 changes to 1088 files (+1 heads)
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   313
  new changesets 96ee1d7354c4:06ddac466af5
48654
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   314
  updating to branch default
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   315
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
48654
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   316
  $ hg verify -R server-no-share-safe
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   317
  checking changesets
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   318
  checking manifests
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   319
  crosschecking files in changesets and manifests
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   320
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   321
  checked 5004 changesets with 1088 changes to 1088 files
48654
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   322
  $ hg -R server serve -p $HGPORT -d --pid-file=hg-1.pid --error errors-1.txt
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   323
  $ cat hg-1.pid > $DAEMON_PIDS
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   324
  $ hg -R server-no-share-safe serve -p $HGPORT2 -d --pid-file=hg-2.pid --error errors-2.txt
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   325
  $ cat hg-2.pid >> $DAEMON_PIDS
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   326
  $ hg debugrequires -R server | grep share-safe
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   327
  share-safe
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   328
  $ hg debugrequires -R server-no-share-safe | grep share-safe
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   329
  [1]
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   330
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   331
share-safe → no-share-safe cloning
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   332
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   333
  $ hg clone --quiet --stream -U http://localhost:$HGPORT clone-remove-share-safe --config format.use-share-safe=no
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   334
  $ cat errors-1.txt
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   335
  $ hg -R clone-remove-share-safe verify
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   336
  checking changesets
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   337
  checking manifests
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   338
  crosschecking files in changesets and manifests
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   339
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   340
  checked 5004 changesets with 1088 changes to 1088 files
48654
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   341
  $ hg debugrequires -R clone-remove-share-safe | grep share-safe
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   342
  [1]
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   343
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   344
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   345
no-share-safe → share-safe cloning
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   346
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   347
  $ hg clone --quiet --stream -U http://localhost:$HGPORT2 clone-add-share-safe --config format.use-share-safe=yes
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   348
  $ cat errors-2.txt
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   349
  $ hg -R clone-add-share-safe verify
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   350
  checking changesets
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   351
  checking manifests
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   352
  crosschecking files in changesets and manifests
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   353
  checking files
48692
4933086bebf5 stream-clone: add 5000 changesets to test-clone-stream-format
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48654
diff changeset
   354
  checked 5004 changesets with 1088 changes to 1088 files
48654
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   355
  $ hg debugrequires -R clone-add-share-safe | grep share-safe
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   356
  share-safe
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   357
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   358
eb5c33f1d08f stream-clone: stop considering working copy only requirements
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48653
diff changeset
   359
  $ killdaemons.py
48693
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   360
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   361
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   362
Test streaming from/to repository without a persistent-nodemap
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   363
==============================================================
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   364
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   365
persistent nodemap affects revlog, but they are easy to generate locally, so we allow it to be changed over a stream clone
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   366
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   367
  $ rm hg-*.pid errors-*.txt
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   368
  $ hg clone --pull --config format.use-persistent-nodemap=no server server-no-persistent-nodemap
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   369
  requesting all changes
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   370
  adding changesets
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   371
  adding manifests
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   372
  adding file changes
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   373
  added 5004 changesets with 1088 changes to 1088 files (+1 heads)
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   374
  new changesets 96ee1d7354c4:06ddac466af5
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   375
  updating to branch default
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   376
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   377
  $ hg verify -R server-no-persistent-nodemap
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   378
  checking changesets
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   379
  checking manifests
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   380
  crosschecking files in changesets and manifests
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   381
  checking files
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   382
  checked 5004 changesets with 1088 changes to 1088 files
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   383
  $ hg -R server serve -p $HGPORT -d --pid-file=hg-1.pid --error errors-1.txt
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   384
  $ cat hg-1.pid > $DAEMON_PIDS
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   385
  $ hg -R server-no-persistent-nodemap serve -p $HGPORT2 -d --pid-file=hg-2.pid --error errors-2.txt
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   386
  $ cat hg-2.pid >> $DAEMON_PIDS
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   387
  $ hg debugrequires -R server | grep persistent-nodemap
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   388
  persistent-nodemap
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   389
  $ hg debugrequires -R server-no-persistent-nodemap | grep persistent-nodemap
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   390
  [1]
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   391
  $ ls -1 server/.hg/store/00changelog*
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   392
  server/.hg/store/00changelog-*.nd (glob)
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   393
  server/.hg/store/00changelog.d
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   394
  server/.hg/store/00changelog.i
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   395
  server/.hg/store/00changelog.n
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   396
  $ ls -1 server-no-persistent-nodemap/.hg/store/00changelog*
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   397
  server-no-persistent-nodemap/.hg/store/00changelog.d
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   398
  server-no-persistent-nodemap/.hg/store/00changelog.i
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   399
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   400
persistent-nodemap → no-persistent-nodemap cloning
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   401
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   402
  $ hg clone --quiet --stream -U http://localhost:$HGPORT clone-remove-persistent-nodemap --config format.use-persistent-nodemap=no
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   403
  $ cat errors-1.txt
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   404
  $ hg -R clone-remove-persistent-nodemap verify
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   405
  checking changesets
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   406
  checking manifests
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   407
  crosschecking files in changesets and manifests
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   408
  checking files
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   409
  checked 5004 changesets with 1088 changes to 1088 files
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   410
  $ hg debugrequires -R clone-remove-persistent-nodemap | grep persistent-nodemap
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   411
  [1]
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   412
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   413
The persistent-nodemap files should no longer exists
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   414
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   415
  $ ls -1 clone-remove-persistent-nodemap/.hg/store/00changelog*
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   416
  clone-remove-persistent-nodemap/.hg/store/00changelog.d
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   417
  clone-remove-persistent-nodemap/.hg/store/00changelog.i
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   418
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   419
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   420
no-persistent-nodemap → persistent-nodemap cloning
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   421
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   422
  $ hg clone --quiet --stream -U http://localhost:$HGPORT2 clone-add-persistent-nodemap --config format.use-persistent-nodemap=yes
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   423
  $ cat errors-2.txt
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   424
  $ hg -R clone-add-persistent-nodemap verify
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   425
  checking changesets
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   426
  checking manifests
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   427
  crosschecking files in changesets and manifests
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   428
  checking files
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   429
  checked 5004 changesets with 1088 changes to 1088 files
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   430
  $ hg debugrequires -R clone-add-persistent-nodemap | grep persistent-nodemap
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   431
  persistent-nodemap
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   432
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   433
The persistent-nodemap files should exists
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   434
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   435
  $ ls -1 clone-add-persistent-nodemap/.hg/store/00changelog*
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   436
  clone-add-persistent-nodemap/.hg/store/00changelog-*.nd (glob)
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   437
  clone-add-persistent-nodemap/.hg/store/00changelog.d
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   438
  clone-add-persistent-nodemap/.hg/store/00changelog.i
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   439
  clone-add-persistent-nodemap/.hg/store/00changelog.n
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   440
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   441
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48692
diff changeset
   442
  $ killdaemons.py