tests/test-clonebundles.t
author Pierre-Yves David <pierre-yves.david@octobus.net>
Tue, 18 Apr 2023 01:12:00 +0200
branchstable
changeset 50346 54f68495ab2a
parent 48693 de3ac3d2c60b
child 50348 f952be90b051
permissions -rw-r--r--
revlog-split: show manifest data loss situation when using clonebundle After the commit of the transaction from applying the clone bundle, changes to the manifest from the subsequent pull would write index data in the wrong file. This lead to data being "lost" after the pull and the repository to be corrupted. We add a test checking this specific scenario. In practice, the issue only affects the manifest but we also test the issue with a file for future proofing things up. See test documentation and failure for details.
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: 37556
diff changeset
     1
#require no-reposimplestore no-chg
37349
36b2a304216c tests: disable tests for advanced clone features with simple store
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37330
diff changeset
     2
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     3
Set up a server
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     4
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     5
  $ hg init server
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     6
  $ cd server
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     7
  $ cat >> .hg/hgrc << EOF
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     8
  > [extensions]
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
     9
  > clonebundles =
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    10
  > EOF
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    11
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    12
  $ touch foo
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    13
  $ hg -q commit -A -m 'add foo'
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    14
  $ touch bar
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    15
  $ hg -q commit -A -m 'add bar'
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    16
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    17
  $ hg serve -d -p $HGPORT --pid-file hg.pid --accesslog access.log
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    18
  $ cat hg.pid >> $DAEMON_PIDS
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    19
  $ cd ..
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    20
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    21
Missing manifest should not result in server lookup
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    22
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    23
  $ hg --verbose clone -U http://localhost:$HGPORT no-manifest
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    24
  requesting all changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    25
  adding changesets
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    26
  adding manifests
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    27
  adding file changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    28
  added 2 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
    29
  new changesets 53245c60e682:aaff8d2ffbbf
40034
393e44324037 httppeer: report http statistics
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39722
diff changeset
    30
  (sent 3 HTTP requests and * bytes; received * bytes in responses) (glob)
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    31
27738
a0e783d26e81 exchange: make clone bundles non-experimental and enabled by default
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27737
diff changeset
    32
  $ cat server/access.log
37556
b77aa48ba690 httppeer: only advertise partial-pull if capabilities are known
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37498
diff changeset
    33
  * - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37349
diff changeset
    34
  $LOCALIP - - [$LOGDATE$] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37349
diff changeset
    35
  $LOCALIP - - [$LOGDATE$] "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&$USUAL_BUNDLE_CAPS$&cg=1&common=0000000000000000000000000000000000000000&heads=aaff8d2ffbbf07a46dd1f05d8ae7877e3f56e2a2&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    36
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    37
Empty manifest file results in retrieval
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    38
(the extension only checks if the manifest file exists)
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    39
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    40
  $ touch server/.hg/clonebundles.manifest
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    41
  $ hg --verbose clone -U http://localhost:$HGPORT empty-manifest
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    42
  no clone bundles available on remote; falling back to regular clone
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    43
  requesting all changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    44
  adding changesets
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    45
  adding manifests
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    46
  adding file changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    47
  added 2 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
    48
  new changesets 53245c60e682:aaff8d2ffbbf
40034
393e44324037 httppeer: report http statistics
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39722
diff changeset
    49
  (sent 4 HTTP requests and * bytes; received * bytes in responses) (glob)
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    50
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    51
Manifest file with invalid URL aborts
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    52
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    53
  $ echo 'http://does.not.exist/bundle.hg' > server/.hg/clonebundles.manifest
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    54
  $ hg clone http://localhost:$HGPORT 404-url
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    55
  applying clone bundle from http://does.not.exist/bundle.hg
44628
4dacd0cef146 tests: handle new error string from FreeBSD for dns entry not resolving
Augie Fackler <augie@google.com>
parents: 44282
diff changeset
    56
  error fetching bundle: (.* not known|(\[Errno -?\d+] )?([Nn]o address associated with (host)?name|Temporary failure in name resolution|Name does not resolve)) (re) (no-windows !)
40371
5a81c4aa6313 tests: glob over a difference between Windows 7 and Window 10
Matt Harbison <matt_harbison@yahoo.com>
parents: 40034
diff changeset
    57
  error fetching bundle: [Errno 1100*] getaddrinfo failed (glob) (windows !)
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    58
  abort: error applying bundle
27738
a0e783d26e81 exchange: make clone bundles non-experimental and enabled by default
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27737
diff changeset
    59
  (if this error persists, consider contacting the server operator or disable clone bundles via "--config ui.clonebundles=false")
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    60
  [255]
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    61
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    62
Server is not running aborts
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    63
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    64
  $ echo "http://localhost:$HGPORT1/bundle.hg" > server/.hg/clonebundles.manifest
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    65
  $ hg clone http://localhost:$HGPORT server-not-runner
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    66
  applying clone bundle from http://localhost:$HGPORT1/bundle.hg
41614
f2f538725d07 tests: fix regression tests failing on CentOS 7
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 40973
diff changeset
    67
  error fetching bundle: (.* refused.*|Protocol not supported|(.* )?\$EADDRNOTAVAIL\$|.* No route to host) (re)
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    68
  abort: error applying bundle
27738
a0e783d26e81 exchange: make clone bundles non-experimental and enabled by default
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27737
diff changeset
    69
  (if this error persists, consider contacting the server operator or disable clone bundles via "--config ui.clonebundles=false")
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    70
  [255]
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    71
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    72
Server returns 404
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    73
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
    74
  $ "$PYTHON" $TESTDIR/dumbhttp.py -p $HGPORT1 --pid http.pid
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    75
  $ cat http.pid >> $DAEMON_PIDS
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    76
  $ hg clone http://localhost:$HGPORT running-404
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    77
  applying clone bundle from http://localhost:$HGPORT1/bundle.hg
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    78
  HTTP error fetching bundle: HTTP Error 404: File not found
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    79
  abort: error applying bundle
27738
a0e783d26e81 exchange: make clone bundles non-experimental and enabled by default
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27737
diff changeset
    80
  (if this error persists, consider contacting the server operator or disable clone bundles via "--config ui.clonebundles=false")
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    81
  [255]
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    82
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    83
We can override failure to fall back to regular clone
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    84
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    85
  $ hg --config ui.clonebundlefallback=true clone -U http://localhost:$HGPORT 404-fallback
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    86
  applying clone bundle from http://localhost:$HGPORT1/bundle.hg
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    87
  HTTP error fetching bundle: HTTP Error 404: File not found
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    88
  falling back to normal clone
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    89
  requesting all changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    90
  adding changesets
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    91
  adding manifests
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    92
  adding file changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    93
  added 2 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
    94
  new changesets 53245c60e682:aaff8d2ffbbf
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    95
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    96
Bundle with partial content works
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    97
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
    98
  $ hg -R server bundle --type gzip-v1 --base null -r 53245c60e682 partial.hg
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
    99
  1 changesets found
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   100
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   101
We verify exact bundle content as an extra check against accidental future
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   102
changes. If this output changes, we could break old clients.
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   103
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   104
  $ f --size --hexdump partial.hg
27711
7a678a12a5cf mdiff: don't emit a diff header for empty trivial deltas
Mike Hommey <mh@glandium.org>
parents: 27432
diff changeset
   105
  partial.hg: size=207
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   106
  0000: 48 47 31 30 47 5a 78 9c 63 60 60 98 17 ac 12 93 |HG10GZx.c``.....|
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   107
  0010: f0 ac a9 23 45 70 cb bf 0d 5f 59 4e 4a 7f 79 21 |...#Ep..._YNJ.y!|
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   108
  0020: 9b cc 40 24 20 a0 d7 ce 2c d1 38 25 cd 24 25 d5 |..@$ ...,.8%.$%.|
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   109
  0030: d8 c2 22 cd 38 d9 24 cd 22 d5 c8 22 cd 24 cd 32 |..".8.$."..".$.2|
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   110
  0040: d1 c2 d0 c4 c8 d2 32 d1 38 39 29 c9 34 cd d4 80 |......2.89).4...|
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   111
  0050: ab 24 b5 b8 84 cb 40 c1 80 2b 2d 3f 9f 8b 2b 31 |.$....@..+-?..+1|
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   112
  0060: 25 45 01 c8 80 9a d2 9b 65 fb e5 9e 45 bf 8d 7f |%E......e...E...|
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   113
  0070: 9f c6 97 9f 2b 44 34 67 d9 ec 8e 0f a0 92 0b 75 |....+D4g.......u|
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   114
  0080: 41 d6 24 59 18 a4 a4 9a a6 18 1a 5b 98 9b 5a 98 |A.$Y.......[..Z.|
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   115
  0090: 9a 18 26 9b a6 19 98 1a 99 99 26 a6 18 9a 98 24 |..&.......&....$|
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   116
  00a0: 26 59 a6 25 5a 98 a5 18 a6 24 71 41 35 b1 43 dc |&Y.%Z....$qA5.C.|
27711
7a678a12a5cf mdiff: don't emit a diff header for empty trivial deltas
Mike Hommey <mh@glandium.org>
parents: 27432
diff changeset
   117
  00b0: 16 b2 83 f7 e9 45 8b d2 56 c7 a3 1f 82 52 d7 8a |.....E..V....R..|
7a678a12a5cf mdiff: don't emit a diff header for empty trivial deltas
Mike Hommey <mh@glandium.org>
parents: 27432
diff changeset
   118
  00c0: 78 ed fc d5 76 f1 36 35 dc 05 00 36 ed 5e c7    |x...v.65...6.^.|
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   119
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   120
  $ echo "http://localhost:$HGPORT1/partial.hg" > server/.hg/clonebundles.manifest
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   121
  $ hg clone -U http://localhost:$HGPORT partial-bundle
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   122
  applying clone bundle from http://localhost:$HGPORT1/partial.hg
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   123
  adding changesets
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   124
  adding manifests
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   125
  adding file changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   126
  added 1 changesets with 1 changes to 1 files
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   127
  finished applying clone bundle
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   128
  searching for changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   129
  adding changesets
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   130
  adding manifests
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   131
  adding file changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   132
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
   133
  new changesets aaff8d2ffbbf
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   134
  1 local changesets published
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   135
26854
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   136
Incremental pull doesn't fetch bundle
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   137
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   138
  $ hg clone -r 53245c60e682 -U http://localhost:$HGPORT partial-clone
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   139
  adding changesets
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   140
  adding manifests
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   141
  adding file changes
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   142
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
   143
  new changesets 53245c60e682
26854
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   144
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   145
  $ cd partial-clone
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   146
  $ hg pull
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   147
  pulling from http://localhost:$HGPORT/
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   148
  searching for changes
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   149
  adding changesets
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   150
  adding manifests
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   151
  adding file changes
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   152
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
   153
  new changesets aaff8d2ffbbf
26854
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   154
  (run 'hg update' to get a working copy)
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   155
  $ cd ..
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
   156
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   157
Bundle with full content works
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   158
26643
d2e16419d3f4 clonebundle: support bundle2
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26623
diff changeset
   159
  $ hg -R server bundle --type gzip-v2 --base null -r tip full.hg
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   160
  2 changesets found
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   161
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   162
Again, we perform an extra check against bundle content changes. If this content
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   163
changes, clone bundles produced by new Mercurial versions may not be readable
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   164
by old clients.
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   165
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   166
  $ f --size --hexdump full.hg
36965
b89a7ef29013 bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents: 35853
diff changeset
   167
  full.hg: size=442
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   168
  0000: 48 47 32 30 00 00 00 0e 43 6f 6d 70 72 65 73 73 |HG20....Compress|
29593
953839de96ab bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29064
diff changeset
   169
  0010: 69 6f 6e 3d 47 5a 78 9c 63 60 60 d0 e4 76 f6 70 |ion=GZx.c``..v.p|
953839de96ab bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29064
diff changeset
   170
  0020: f4 73 77 75 0f f2 0f 0d 60 00 02 46 46 76 26 4e |.swu....`..FFv&N|
953839de96ab bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29064
diff changeset
   171
  0030: c6 b2 d4 a2 e2 cc fc 3c 03 a3 bc a4 e4 8c c4 bc |.......<........|
30211
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   172
  0040: f4 d4 62 23 06 06 e6 19 40 f9 4d c1 2a 31 09 cf |..b#....@.M.*1..|
29593
953839de96ab bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29064
diff changeset
   173
  0050: 9a 3a 52 04 b7 fc db f0 95 e5 a4 f4 97 17 b2 c9 |.:R.............|
953839de96ab bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29064
diff changeset
   174
  0060: 0c 14 00 02 e6 d9 99 25 1a a7 a4 99 a4 a4 1a 5b |.......%.......[|
953839de96ab bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29064
diff changeset
   175
  0070: 58 a4 19 27 9b a4 59 a4 1a 59 a4 99 a4 59 26 5a |X..'..Y..Y...Y&Z|
953839de96ab bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29064
diff changeset
   176
  0080: 18 9a 18 59 5a 26 1a 27 27 25 99 a6 99 1a 70 95 |...YZ&.''%....p.|
953839de96ab bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29064
diff changeset
   177
  0090: a4 16 97 70 19 28 18 70 a5 e5 e7 73 71 25 a6 a4 |...p.(.p...sq%..|
30211
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   178
  00a0: 28 00 19 20 17 af fa df ab ff 7b 3f fb 92 dc 8b |(.. ......{?....|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   179
  00b0: 1f 62 bb 9e b7 d7 d9 87 3d 5a 44 89 2f b0 99 87 |.b......=ZD./...|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   180
  00c0: ec e2 54 63 43 e3 b4 64 43 73 23 33 43 53 0b 63 |..TcC..dCs#3CS.c|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   181
  00d0: d3 14 23 03 a0 fb 2c 2c 0c d3 80 1e 30 49 49 b1 |..#...,,....0II.|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   182
  00e0: 4c 4a 32 48 33 30 b0 34 42 b8 38 29 b1 08 e2 62 |LJ2H30.4B.8)...b|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   183
  00f0: 20 03 6a ca c2 2c db 2f f7 2c fa 6d fc fb 34 be | .j..,./.,.m..4.|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   184
  0100: fc 5c 21 a2 39 cb 66 77 7c 00 0d c3 59 17 14 58 |.\!.9.fw|...Y..X|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   185
  0110: 49 16 06 29 a9 a6 29 86 c6 16 e6 a6 16 a6 26 86 |I..)..).......&.|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   186
  0120: c9 a6 69 06 a6 46 66 a6 89 29 86 26 26 89 49 96 |..i..Ff..).&&.I.|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   187
  0130: 69 89 16 66 29 86 29 49 5c 20 07 3e 16 fe 23 ae |i..f).)I\ .>..#.|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   188
  0140: 26 da 1c ab 10 1f d1 f8 e3 b3 ef cd dd fc 0c 93 |&...............|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   189
  0150: 88 75 34 36 75 04 82 55 17 14 36 a4 38 10 04 d8 |.u46u..U..6.8...|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   190
  0160: 21 01 9a b1 83 f7 e9 45 8b d2 56 c7 a3 1f 82 52 |!......E..V....R|
6b0741d6d234 changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29845
diff changeset
   191
  0170: d7 8a 78 ed fc d5 76 f1 36 25 81 89 c7 ad ec 90 |..x...v.6%......|
37842
326b174c6a47 bundle2: mark the bundle2 part as advisory (issue5872)
Boris Feld <boris.feld@octobus.net>
parents: 37556
diff changeset
   192
  0180: 54 47 75 2b 89 48 b1 b2 62 c9 89 c9 19 a9 56 45 |TGu+.H..b.....VE|
326b174c6a47 bundle2: mark the bundle2 part as advisory (issue5872)
Boris Feld <boris.feld@octobus.net>
parents: 37556
diff changeset
   193
  0190: a9 65 ba 49 45 89 79 c9 19 ba 60 01 a0 14 23 58 |.e.IE.y...`...#X|
36965
b89a7ef29013 bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents: 35853
diff changeset
   194
  01a0: 81 35 c8 7d 40 cc 04 e2 a4 a4 a6 25 96 e6 94 60 |.5.}@......%...`|
37842
326b174c6a47 bundle2: mark the bundle2 part as advisory (issue5872)
Boris Feld <boris.feld@octobus.net>
parents: 37556
diff changeset
   195
  01b0: 33 17 5f 54 00 00 d3 1b 0d 4c                   |3._T.....L|
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   196
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   197
  $ echo "http://localhost:$HGPORT1/full.hg" > server/.hg/clonebundles.manifest
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   198
  $ hg clone -U http://localhost:$HGPORT full-bundle
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   199
  applying clone bundle from http://localhost:$HGPORT1/full.hg
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   200
  adding changesets
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   201
  adding manifests
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   202
  adding file changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   203
  added 2 changesets with 2 changes to 2 files
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   204
  finished applying clone bundle
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   205
  searching for changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
   206
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   207
  2 local changesets published
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   208
26857
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   209
Feature works over SSH
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   210
47920
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 46884
diff changeset
   211
  $ hg clone -U ssh://user@dummy/server ssh-full-clone
26857
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   212
  applying clone bundle from http://localhost:$HGPORT1/full.hg
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   213
  adding changesets
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   214
  adding manifests
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   215
  adding file changes
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   216
  added 2 changesets with 2 changes to 2 files
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   217
  finished applying clone bundle
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   218
  searching for changes
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   219
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   220
  2 local changesets published
26857
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
   221
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   222
Entry with unknown BUNDLESPEC is filtered and not used
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   223
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   224
  $ cat > server/.hg/clonebundles.manifest << EOF
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   225
  > http://bad.entry1 BUNDLESPEC=UNKNOWN
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   226
  > http://bad.entry2 BUNDLESPEC=xz-v1
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   227
  > http://bad.entry3 BUNDLESPEC=none-v100
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   228
  > http://localhost:$HGPORT1/full.hg BUNDLESPEC=gzip-v2
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   229
  > EOF
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   230
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   231
  $ hg clone -U http://localhost:$HGPORT filter-unknown-type
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   232
  applying clone bundle from http://localhost:$HGPORT1/full.hg
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   233
  adding changesets
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   234
  adding manifests
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   235
  adding file changes
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   236
  added 2 changesets with 2 changes to 2 files
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   237
  finished applying clone bundle
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   238
  searching for changes
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   239
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   240
  2 local changesets published
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   241
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   242
Automatic fallback when all entries are filtered
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   243
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   244
  $ cat > server/.hg/clonebundles.manifest << EOF
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   245
  > http://bad.entry BUNDLESPEC=UNKNOWN
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   246
  > EOF
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   247
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   248
  $ hg clone -U http://localhost:$HGPORT filter-all
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   249
  no compatible clone bundles available on server; falling back to regular clone
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   250
  (you may want to report this to the server operator)
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   251
  requesting all changes
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   252
  adding changesets
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   253
  adding manifests
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   254
  adding file changes
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
   255
  added 2 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
   256
  new changesets 53245c60e682:aaff8d2ffbbf
26645
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   257
44881
89f83e47e9c9 tests: remove "sslcontext" check
Manuel Jacob <me@manueljacob.de>
parents: 44628
diff changeset
   258
We require a Python version that supports SNI. Therefore, URLs requiring SNI
89f83e47e9c9 tests: remove "sslcontext" check
Manuel Jacob <me@manueljacob.de>
parents: 44628
diff changeset
   259
are not filtered.
26645
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   260
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   261
  $ cp full.hg sni.hg
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   262
  $ cat > server/.hg/clonebundles.manifest << EOF
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   263
  > http://localhost:$HGPORT1/sni.hg REQUIRESNI=true
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   264
  > http://localhost:$HGPORT1/full.hg
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   265
  > EOF
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   266
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   267
  $ hg clone -U http://localhost:$HGPORT sni-supported
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   268
  applying clone bundle from http://localhost:$HGPORT1/sni.hg
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   269
  adding changesets
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   270
  adding manifests
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   271
  adding file changes
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   272
  added 2 changesets with 2 changes to 2 files
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   273
  finished applying clone bundle
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   274
  searching for changes
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
   275
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   276
  2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   277
26761
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   278
Stream clone bundles are supported
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   279
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   280
  $ hg -R server debugcreatestreamclonebundle packed.hg
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   281
  writing 613 bytes for 4 files
48652
6fd9a17c32ab requirements: add an official `REVLOG_COMPRESSION_ZSTD` const
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47920
diff changeset
   282
  bundle requirements: generaldelta, revlogv1, sparserevlog (no-rust no-zstd !)
6fd9a17c32ab requirements: add an official `REVLOG_COMPRESSION_ZSTD` const
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 47920
diff changeset
   283
  bundle requirements: generaldelta, revlog-compression-zstd, revlogv1, sparserevlog (no-rust zstd !)
48693
de3ac3d2c60b stream-clone: allow to change persistent-nodemap format during stream clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48652
diff changeset
   284
  bundle requirements: generaldelta, revlog-compression-zstd, revlogv1, sparserevlog (rust !)
26761
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   285
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   286
No bundle spec should work
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   287
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   288
  $ cat > server/.hg/clonebundles.manifest << EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   289
  > http://localhost:$HGPORT1/packed.hg
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   290
  > EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   291
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   292
  $ hg clone -U http://localhost:$HGPORT stream-clone-no-spec
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   293
  applying clone bundle from http://localhost:$HGPORT1/packed.hg
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   294
  4 files to transfer, 613 bytes of data
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   295
  transferred 613 bytes in *.* seconds (*) (glob)
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   296
  finished applying clone bundle
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   297
  searching for changes
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   298
  no changes found
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   299
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   300
Bundle spec without parameters should work
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   301
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   302
  $ cat > server/.hg/clonebundles.manifest << EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   303
  > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   304
  > EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   305
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   306
  $ hg clone -U http://localhost:$HGPORT stream-clone-vanilla-spec
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   307
  applying clone bundle from http://localhost:$HGPORT1/packed.hg
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   308
  4 files to transfer, 613 bytes of data
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   309
  transferred 613 bytes in *.* seconds (*) (glob)
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   310
  finished applying clone bundle
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   311
  searching for changes
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   312
  no changes found
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   313
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   314
Bundle spec with format requirements should work
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   315
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   316
  $ cat > server/.hg/clonebundles.manifest << EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   317
  > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1;requirements%3Drevlogv1
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   318
  > EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   319
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   320
  $ hg clone -U http://localhost:$HGPORT stream-clone-supported-requirements
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   321
  applying clone bundle from http://localhost:$HGPORT1/packed.hg
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   322
  4 files to transfer, 613 bytes of data
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   323
  transferred 613 bytes in *.* seconds (*) (glob)
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   324
  finished applying clone bundle
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   325
  searching for changes
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   326
  no changes found
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   327
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   328
Stream bundle spec with unknown requirements should be filtered out
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   329
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   330
  $ cat > server/.hg/clonebundles.manifest << EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   331
  > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1;requirements%3Drevlogv42
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   332
  > EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   333
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   334
  $ hg clone -U http://localhost:$HGPORT stream-clone-unsupported-requirements
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   335
  no compatible clone bundles available on server; falling back to regular clone
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   336
  (you may want to report this to the server operator)
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   337
  requesting all changes
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   338
  adding changesets
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   339
  adding manifests
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   340
  adding file changes
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   341
  added 2 changesets with 2 changes to 2 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
   342
  new changesets 53245c60e682:aaff8d2ffbbf
26761
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
   343
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   344
Set up manifest for testing preferences
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   345
(Remember, the TYPE does not have to match reality - the URL is
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   346
important)
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   347
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   348
  $ cp full.hg gz-a.hg
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   349
  $ cp full.hg gz-b.hg
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   350
  $ cp full.hg bz2-a.hg
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   351
  $ cp full.hg bz2-b.hg
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   352
  $ cat > server/.hg/clonebundles.manifest << EOF
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   353
  > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2 extra=a
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   354
  > http://localhost:$HGPORT1/bz2-a.hg BUNDLESPEC=bzip2-v2 extra=a
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   355
  > http://localhost:$HGPORT1/gz-b.hg BUNDLESPEC=gzip-v2 extra=b
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   356
  > http://localhost:$HGPORT1/bz2-b.hg BUNDLESPEC=bzip2-v2 extra=b
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   357
  > EOF
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   358
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   359
Preferring an undefined attribute will take first entry
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   360
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
   361
  $ hg --config ui.clonebundleprefers=foo=bar clone -U http://localhost:$HGPORT prefer-foo
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   362
  applying clone bundle from http://localhost:$HGPORT1/gz-a.hg
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   363
  adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   364
  adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   365
  adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   366
  added 2 changesets with 2 changes to 2 files
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   367
  finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   368
  searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   369
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   370
  2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   371
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   372
Preferring bz2 type will download first entry of that type
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   373
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
   374
  $ hg --config ui.clonebundleprefers=COMPRESSION=bzip2 clone -U http://localhost:$HGPORT prefer-bz
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   375
  applying clone bundle from http://localhost:$HGPORT1/bz2-a.hg
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   376
  adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   377
  adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   378
  adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   379
  added 2 changesets with 2 changes to 2 files
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   380
  finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   381
  searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   382
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   383
  2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   384
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   385
Preferring multiple values of an option works
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   386
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
   387
  $ hg --config ui.clonebundleprefers=COMPRESSION=unknown,COMPRESSION=bzip2 clone -U http://localhost:$HGPORT prefer-multiple-bz
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   388
  applying clone bundle from http://localhost:$HGPORT1/bz2-a.hg
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   389
  adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   390
  adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   391
  adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   392
  added 2 changesets with 2 changes to 2 files
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   393
  finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   394
  searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   395
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   396
  2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   397
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   398
Sorting multiple values should get us back to original first entry
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   399
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
   400
  $ hg --config ui.clonebundleprefers=BUNDLESPEC=unknown,BUNDLESPEC=gzip-v2,BUNDLESPEC=bzip2-v2 clone -U http://localhost:$HGPORT prefer-multiple-gz
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   401
  applying clone bundle from http://localhost:$HGPORT1/gz-a.hg
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   402
  adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   403
  adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   404
  adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   405
  added 2 changesets with 2 changes to 2 files
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   406
  finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   407
  searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   408
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   409
  2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   410
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   411
Preferring multiple attributes has correct order
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   412
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
   413
  $ hg --config ui.clonebundleprefers=extra=b,BUNDLESPEC=bzip2-v2 clone -U http://localhost:$HGPORT prefer-separate-attributes
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   414
  applying clone bundle from http://localhost:$HGPORT1/bz2-b.hg
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   415
  adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   416
  adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   417
  adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   418
  added 2 changesets with 2 changes to 2 files
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   419
  finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   420
  searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   421
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   422
  2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   423
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   424
Test where attribute is missing from some entries
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   425
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   426
  $ cat > server/.hg/clonebundles.manifest << EOF
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   427
  > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   428
  > http://localhost:$HGPORT1/bz2-a.hg BUNDLESPEC=bzip2-v2
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   429
  > http://localhost:$HGPORT1/gz-b.hg BUNDLESPEC=gzip-v2 extra=b
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   430
  > http://localhost:$HGPORT1/bz2-b.hg BUNDLESPEC=bzip2-v2 extra=b
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   431
  > EOF
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   432
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
   433
  $ hg --config ui.clonebundleprefers=extra=b clone -U http://localhost:$HGPORT prefer-partially-defined-attribute
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   434
  applying clone bundle from http://localhost:$HGPORT1/gz-b.hg
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   435
  adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   436
  adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   437
  adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   438
  added 2 changesets with 2 changes to 2 files
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   439
  finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   440
  searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
   441
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   442
  2 local changesets published
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   443
44282
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   444
Test a bad attribute list
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   445
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   446
  $ hg --config ui.clonebundleprefers=bad clone -U http://localhost:$HGPORT bad-input
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   447
  abort: invalid ui.clonebundleprefers item: bad
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   448
  (each comma separated item should be key=value pairs)
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   449
  [255]
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   450
  $ hg --config ui.clonebundleprefers=key=val,bad,key2=val2 clone \
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   451
  >    -U http://localhost:$HGPORT bad-input
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   452
  abort: invalid ui.clonebundleprefers item: bad
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   453
  (each comma separated item should be key=value pairs)
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   454
  [255]
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   455
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
   456
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
   457
Test interaction between clone bundles and --stream
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   458
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   459
A manifest with just a gzip bundle
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   460
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   461
  $ cat > server/.hg/clonebundles.manifest << EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   462
  > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   463
  > EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   464
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
   465
  $ hg clone -U --stream http://localhost:$HGPORT uncompressed-gzip
34364
ff406f3e57b2 exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34363
diff changeset
   466
  no compatible clone bundles available on server; falling back to regular clone
ff406f3e57b2 exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34363
diff changeset
   467
  (you may want to report this to the server operator)
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   468
  streaming all changes
39722
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 38833
diff changeset
   469
  9 files to transfer, 816 bytes of data
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 38833
diff changeset
   470
  transferred 816 bytes in * seconds (*) (glob)
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   471
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   472
A manifest with a stream clone but no BUNDLESPEC
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   473
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   474
  $ cat > server/.hg/clonebundles.manifest << EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   475
  > http://localhost:$HGPORT1/packed.hg
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   476
  > EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   477
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
   478
  $ hg clone -U --stream http://localhost:$HGPORT uncompressed-no-bundlespec
34364
ff406f3e57b2 exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34363
diff changeset
   479
  no compatible clone bundles available on server; falling back to regular clone
ff406f3e57b2 exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34363
diff changeset
   480
  (you may want to report this to the server operator)
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   481
  streaming all changes
39722
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 38833
diff changeset
   482
  9 files to transfer, 816 bytes of data
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 38833
diff changeset
   483
  transferred 816 bytes in * seconds (*) (glob)
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   484
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   485
A manifest with a gzip bundle and a stream clone
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   486
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   487
  $ cat > server/.hg/clonebundles.manifest << EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   488
  > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   489
  > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   490
  > EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   491
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
   492
  $ hg clone -U --stream http://localhost:$HGPORT uncompressed-gzip-packed
34364
ff406f3e57b2 exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34363
diff changeset
   493
  applying clone bundle from http://localhost:$HGPORT1/packed.hg
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   494
  4 files to transfer, 613 bytes of data
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   495
  transferred 613 bytes in * seconds (*) (glob)
34364
ff406f3e57b2 exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34363
diff changeset
   496
  finished applying clone bundle
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   497
  searching for changes
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   498
  no changes found
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   499
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   500
A manifest with a gzip bundle and stream clone with supported requirements
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   501
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   502
  $ cat > server/.hg/clonebundles.manifest << EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   503
  > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   504
  > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1;requirements%3Drevlogv1
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   505
  > EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   506
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
   507
  $ hg clone -U --stream http://localhost:$HGPORT uncompressed-gzip-packed-requirements
34364
ff406f3e57b2 exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34363
diff changeset
   508
  applying clone bundle from http://localhost:$HGPORT1/packed.hg
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   509
  4 files to transfer, 613 bytes of data
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   510
  transferred 613 bytes in * seconds (*) (glob)
34364
ff406f3e57b2 exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34363
diff changeset
   511
  finished applying clone bundle
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   512
  searching for changes
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   513
  no changes found
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   514
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   515
A manifest with a gzip bundle and a stream clone with unsupported requirements
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   516
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   517
  $ cat > server/.hg/clonebundles.manifest << EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   518
  > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   519
  > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1;requirements%3Drevlogv42
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   520
  > EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   521
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
   522
  $ hg clone -U --stream http://localhost:$HGPORT uncompressed-gzip-packed-unsupported-requirements
34364
ff406f3e57b2 exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34363
diff changeset
   523
  no compatible clone bundles available on server; falling back to regular clone
ff406f3e57b2 exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34363
diff changeset
   524
  (you may want to report this to the server operator)
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
   525
  streaming all changes
39722
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 38833
diff changeset
   526
  9 files to transfer, 816 bytes of data
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 38833
diff changeset
   527
  transferred 816 bytes in * seconds (*) (glob)
35565
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   528
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   529
Test clone bundle retrieved through bundle2
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   530
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   531
  $ cat << EOF >> $HGRCPATH
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   532
  > [extensions]
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   533
  > largefiles=
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   534
  > EOF
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   535
  $ killdaemons.py
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   536
  $ hg -R server serve -d -p $HGPORT --pid-file hg.pid --accesslog access.log
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   537
  $ cat hg.pid >> $DAEMON_PIDS
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   538
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   539
  $ hg -R server debuglfput gz-a.hg
37842
326b174c6a47 bundle2: mark the bundle2 part as advisory (issue5872)
Boris Feld <boris.feld@octobus.net>
parents: 37556
diff changeset
   540
  1f74b3d08286b9b3a16fb3fa185dd29219cbc6ae
35565
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   541
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   542
  $ cat > server/.hg/clonebundles.manifest << EOF
37842
326b174c6a47 bundle2: mark the bundle2 part as advisory (issue5872)
Boris Feld <boris.feld@octobus.net>
parents: 37556
diff changeset
   543
  > largefile://1f74b3d08286b9b3a16fb3fa185dd29219cbc6ae BUNDLESPEC=gzip-v2
35565
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   544
  > EOF
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   545
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   546
  $ hg clone -U http://localhost:$HGPORT largefile-provided --traceback
37842
326b174c6a47 bundle2: mark the bundle2 part as advisory (issue5872)
Boris Feld <boris.feld@octobus.net>
parents: 37556
diff changeset
   547
  applying clone bundle from largefile://1f74b3d08286b9b3a16fb3fa185dd29219cbc6ae
35565
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   548
  adding changesets
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   549
  adding manifests
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   550
  adding file changes
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   551
  added 2 changesets with 2 changes to 2 files
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   552
  finished applying clone bundle
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   553
  searching for changes
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
   554
  no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
   555
  2 local changesets published
45062
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   556
  $ killdaemons.py
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   557
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   558
A manifest with a gzip bundle requiring too much memory for a 16MB system and working
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   559
on a 32MB system.
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   560
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   561
  $ "$PYTHON" $TESTDIR/dumbhttp.py -p $HGPORT1 --pid http.pid
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   562
  $ cat http.pid >> $DAEMON_PIDS
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   563
  $ hg -R server serve -d -p $HGPORT --pid-file hg.pid --accesslog access.log
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   564
  $ cat hg.pid >> $DAEMON_PIDS
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   565
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   566
  $ cat > server/.hg/clonebundles.manifest << EOF
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   567
  > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2 REQUIREDRAM=12MB
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   568
  > EOF
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   569
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   570
  $ hg clone -U --debug --config ui.available-memory=16MB http://localhost:$HGPORT gzip-too-large
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   571
  using http://localhost:$HGPORT/
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   572
  sending capabilities command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   573
  sending clonebundles command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   574
  filtering http://localhost:$HGPORT1/gz-a.hg as it needs more than 2/3 of system memory
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   575
  no compatible clone bundles available on server; falling back to regular clone
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   576
  (you may want to report this to the server operator)
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   577
  query 1; heads
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   578
  sending batch command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   579
  requesting all changes
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   580
  sending getbundle command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   581
  bundle2-input-bundle: with-transaction
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   582
  bundle2-input-part: "changegroup" (params: 1 mandatory 1 advisory) supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   583
  adding changesets
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   584
  add changeset 53245c60e682
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   585
  add changeset aaff8d2ffbbf
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   586
  adding manifests
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   587
  adding file changes
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   588
  adding bar revisions
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   589
  adding foo revisions
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   590
  bundle2-input-part: total payload size 920
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   591
  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   592
  bundle2-input-part: "phase-heads" supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   593
  bundle2-input-part: total payload size 24
46633
7015b0232c5e exchange: stop advertising rev-branch-cache bundle capability
Joerg Sonnenberger <joerg@bec.de>
parents: 46314
diff changeset
   594
  bundle2-input-bundle: 3 parts total
45062
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   595
  checking for updated bookmarks
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   596
  updating the branch cache
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   597
  added 2 changesets with 2 changes to 2 files
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   598
  new changesets 53245c60e682:aaff8d2ffbbf
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   599
  calling hook changegroup.lfiles: hgext.largefiles.reposetup.checkrequireslfiles
46314
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45062
diff changeset
   600
  updating the branch cache
45062
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   601
  (sent 4 HTTP requests and * bytes; received * bytes in responses) (glob)
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   602
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   603
  $ hg clone -U --debug --config ui.available-memory=32MB http://localhost:$HGPORT gzip-too-large2
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   604
  using http://localhost:$HGPORT/
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   605
  sending capabilities command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   606
  sending clonebundles command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   607
  applying clone bundle from http://localhost:$HGPORT1/gz-a.hg
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   608
  bundle2-input-bundle: 1 params with-transaction
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   609
  bundle2-input-part: "changegroup" (params: 1 mandatory 1 advisory) supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   610
  adding changesets
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   611
  add changeset 53245c60e682
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   612
  add changeset aaff8d2ffbbf
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   613
  adding manifests
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   614
  adding file changes
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   615
  adding bar revisions
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   616
  adding foo revisions
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   617
  bundle2-input-part: total payload size 920
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   618
  bundle2-input-part: "cache:rev-branch-cache" (advisory) supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   619
  bundle2-input-part: total payload size 59
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   620
  bundle2-input-bundle: 2 parts total
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   621
  updating the branch cache
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   622
  added 2 changesets with 2 changes to 2 files
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   623
  finished applying clone bundle
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   624
  query 1; heads
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   625
  sending batch command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   626
  searching for changes
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   627
  all remote heads known locally
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   628
  no changes found
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   629
  sending getbundle command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   630
  bundle2-input-bundle: with-transaction
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   631
  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   632
  bundle2-input-part: "phase-heads" supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   633
  bundle2-input-part: total payload size 24
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   634
  bundle2-input-bundle: 2 parts total
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   635
  checking for updated bookmarks
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   636
  2 local changesets published
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   637
  calling hook changegroup.lfiles: hgext.largefiles.reposetup.checkrequireslfiles
46314
95a615dd77bf clone: make sure we warm the cache after a clone
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 45062
diff changeset
   638
  updating the branch cache
45062
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   639
  (sent 4 HTTP requests and * bytes; received * bytes in responses) (glob)
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
   640
  $ killdaemons.py
50346
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   641
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   642
Testing a clone bundles that involves revlog splitting (issue6811)
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   643
==================================================================
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   644
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   645
  $ cat >> $HGRCPATH << EOF
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   646
  > [format]
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   647
  > revlog-compression=none
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   648
  > use-persistent-nodemap=no
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   649
  > EOF
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   650
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   651
  $ hg init server-revlog-split/
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   652
  $ cd server-revlog-split
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   653
  $ cat >> .hg/hgrc << EOF
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   654
  > [extensions]
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   655
  > clonebundles =
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   656
  > EOF
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   657
  $ echo foo > A
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   658
  $ hg add A
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   659
  $ hg commit -m 'initial commit'
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   660
IMPORTANT: the revlogs must not be split
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   661
  $ ls -1 .hg/store/00manifest.*
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   662
  .hg/store/00manifest.i
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   663
  $ ls -1 .hg/store/data/_a.*
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   664
  .hg/store/data/_a.i
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   665
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   666
do big enough update to split the revlogs
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   667
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   668
  $ $TESTDIR/seq.py 100000 > A
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   669
  $ mkdir foo
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   670
  $ cd foo
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   671
  $ touch `$TESTDIR/seq.py 10000`
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   672
  $ cd ..
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   673
  $ hg add -q foo
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   674
  $ hg commit -m 'split the manifest and one filelog'
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   675
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   676
IMPORTANT: now the revlogs must be split
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   677
  $ ls -1 .hg/store/00manifest.*
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   678
  .hg/store/00manifest.d
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   679
  .hg/store/00manifest.i
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   680
  $ ls -1 .hg/store/data/_a.*
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   681
  .hg/store/data/_a.d
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   682
  .hg/store/data/_a.i
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   683
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   684
Add an extra commit on top of that
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   685
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   686
  $ echo foo >> A
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   687
  $ hg commit -m 'one extra commit'
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   688
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   689
  $ cd ..
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   690
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   691
Do a bundle that contains the split, but not the update
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   692
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   693
  $ hg bundle --exact --rev '::(default~1)' -R server-revlog-split/ --type gzip-v2 split-test.hg
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   694
  2 changesets found
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   695
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   696
  $ cat > server-revlog-split/.hg/clonebundles.manifest << EOF
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   697
  > http://localhost:$HGPORT1/split-test.hg BUNDLESPEC=gzip-v2
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   698
  > EOF
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   699
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   700
start the necessary server
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   701
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   702
  $ "$PYTHON" $TESTDIR/dumbhttp.py -p $HGPORT1 --pid http.pid
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   703
  $ cat http.pid >> $DAEMON_PIDS
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   704
  $ hg -R server-revlog-split serve -d -p $HGPORT --pid-file hg.pid --accesslog access.log
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   705
  $ cat hg.pid >> $DAEMON_PIDS
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   706
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   707
Check that clone works fine
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   708
===========================
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   709
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   710
Here, the initial clone will trigger a revlog split (which is a bit clowny it
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   711
itself, but whatever). The split revlogs will see additionnal data added to
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   712
them in the subsequent pull. This should not be a problem
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   713
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   714
  $ hg clone http://localhost:$HGPORT revlog-split-in-the-bundle
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   715
  applying clone bundle from http://localhost:$HGPORT1/split-test.hg
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   716
  adding changesets
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   717
  adding manifests
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   718
  adding file changes
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   719
  added 2 changesets with 10002 changes to 10001 files
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   720
  finished applying clone bundle
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   721
  searching for changes
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   722
  adding changesets
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   723
  adding manifests
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   724
  adding file changes
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   725
  added 1 changesets with 1 changes to 1 files
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   726
  new changesets e3879eaa1db7
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   727
  2 local changesets published
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   728
  updating to branch default
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   729
  10001 files updated, 0 files merged, 0 files removed, 0 files unresolved
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   730
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   731
check the results
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   732
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   733
  $ cd revlog-split-in-the-bundle
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   734
  $ f --size .hg/store/00manifest.*
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   735
  .hg/store/00manifest.d: size=499037
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   736
  .hg/store/00manifest.i: size=192 (missing-correct-output !)
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   737
  .hg/store/00manifest.i: size=128 (known-bad-output !)
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   738
  .hg/store/00manifest.i.s: size=64 (known-bad-output !)
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   739
  $ f --size .hg/store/data/_a.*
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   740
  .hg/store/data/_a.d: size=588917
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   741
  .hg/store/data/_a.i: size=192
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   742
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   743
manifest should work
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   744
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   745
  $ hg  files -r tip | wc -l
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   746
  \s*10001 (re) (missing-correct-output !)
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   747
  abort: 00manifest@4941afd6b8e298d932227572c5c303cbc14301bd: no node (known-bad-output !)
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   748
  0 (known-bad-output !)
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   749
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   750
file content should work
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   751
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   752
  $ hg  cat -r tip A | wc -l
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   753
  \s*100001 (re) (missing-correct-output !)
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   754
  abort: 00manifest@4941afd6b8e298d932227572c5c303cbc14301bd: no node (known-bad-output !)
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   755
  0 (known-bad-output !)
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   756
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
   757