annotate tests/test-clonebundles.t @ 50686:a41eeb877d07

branching: merge with stable
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Sun, 18 Jun 2023 00:09:39 +0200
parents 7b723217d368
children f4e8c82e2cef
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
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
50541
ef7f943ebabf clonebundles: demonstrate bad behaviour when unknown scheme is present
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50348
diff changeset
62 Manifest file with URL with unknown scheme skips the URL
ef7f943ebabf clonebundles: demonstrate bad behaviour when unknown scheme is present
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50348
diff changeset
63 $ echo 'weirdscheme://does.not.exist/bundle.hg' > server/.hg/clonebundles.manifest
ef7f943ebabf clonebundles: demonstrate bad behaviour when unknown scheme is present
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50348
diff changeset
64 $ hg clone http://localhost:$HGPORT unknown-scheme
50542
7b723217d368 clonebundles: filter out invalid schemes instead of failing on them
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50541
diff changeset
65 no compatible clone bundles available on server; falling back to regular clone
7b723217d368 clonebundles: filter out invalid schemes instead of failing on them
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50541
diff changeset
66 (you may want to report this to the server operator)
7b723217d368 clonebundles: filter out invalid schemes instead of failing on them
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50541
diff changeset
67 requesting all changes
7b723217d368 clonebundles: filter out invalid schemes instead of failing on them
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50541
diff changeset
68 adding changesets
7b723217d368 clonebundles: filter out invalid schemes instead of failing on them
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50541
diff changeset
69 adding manifests
7b723217d368 clonebundles: filter out invalid schemes instead of failing on them
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50541
diff changeset
70 adding file changes
7b723217d368 clonebundles: filter out invalid schemes instead of failing on them
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50541
diff changeset
71 added 2 changesets with 2 changes to 2 files
7b723217d368 clonebundles: filter out invalid schemes instead of failing on them
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50541
diff changeset
72 new changesets 53245c60e682:aaff8d2ffbbf
7b723217d368 clonebundles: filter out invalid schemes instead of failing on them
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50541
diff changeset
73 updating to branch default
7b723217d368 clonebundles: filter out invalid schemes instead of failing on them
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50541
diff changeset
74 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
50541
ef7f943ebabf clonebundles: demonstrate bad behaviour when unknown scheme is present
Mathias De Mare <mathias.de_mare@nokia.com>
parents: 50348
diff changeset
75
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
76 Server is not running aborts
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
77
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
78 $ 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
79 $ 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
80 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
81 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
82 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
83 (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
84 [255]
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
85
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
86 Server returns 404
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
87
33335
72f051f9a7d8 tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 33286
diff changeset
88 $ "$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
89 $ cat http.pid >> $DAEMON_PIDS
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
90 $ 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
91 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
92 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
93 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
94 (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
95 [255]
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
96
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
97 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
98
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
99 $ 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
100 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
101 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
102 falling back to normal clone
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
103 requesting all changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
104 adding changesets
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
105 adding manifests
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
106 adding file changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
107 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
108 new changesets 53245c60e682:aaff8d2ffbbf
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
109
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
110 Bundle with partial content works
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
111
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
112 $ 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
113 1 changesets found
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
114
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
115 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
116 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
117
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
118 $ 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
119 partial.hg: size=207
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
120 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
121 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
122 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
123 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
124 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
125 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
126 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
127 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
128 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
129 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
130 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
131 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
132 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
133
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
134 $ 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
135 $ 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
136 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
137 adding changesets
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
138 adding manifests
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
139 adding file changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
140 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
141 finished applying clone bundle
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
142 searching for changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
143 adding changesets
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
144 adding manifests
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
145 adding file changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
146 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
147 new changesets aaff8d2ffbbf
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
148 1 local changesets published
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
149
26854
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
150 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
151
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
152 $ 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
153 adding changesets
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
154 adding manifests
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
155 adding file changes
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
156 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
157 new changesets 53245c60e682
26854
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
158
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
159 $ cd partial-clone
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
160 $ hg pull
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
161 pulling from http://localhost:$HGPORT/
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
162 searching for changes
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
163 adding changesets
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
164 adding manifests
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
165 adding file changes
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
166 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
167 new changesets aaff8d2ffbbf
26854
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
168 (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
169 $ cd ..
cb4b0ec54990 test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26761
diff changeset
170
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
171 Bundle with full content works
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
172
26643
d2e16419d3f4 clonebundle: support bundle2
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26623
diff changeset
173 $ 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
174 2 changesets found
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
175
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
176 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
177 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
178 by old clients.
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
179
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
180 $ 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
181 full.hg: size=442
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
182 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
183 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
184 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
185 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
186 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
187 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
188 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
189 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
190 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
191 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
192 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
193 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
194 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
195 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
196 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
197 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
198 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
199 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
200 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
201 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
202 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
203 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
204 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
205 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
206 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
207 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
208 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
209 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
210
26623
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
211 $ 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
212 $ 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
213 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
214 adding changesets
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
215 adding manifests
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
216 adding file changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
217 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
218 finished applying clone bundle
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
219 searching for changes
5a95fe44121d clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
220 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
221 2 local changesets published
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
222
26857
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
223 Feature works over SSH
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
224
47920
9c4204b7f3e4 tests: rely on dummyssh being the default
Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
parents: 46884
diff changeset
225 $ 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
226 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
227 adding changesets
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
228 adding manifests
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
229 adding file changes
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
230 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
231 finished applying clone bundle
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
232 searching for changes
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
233 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
234 2 local changesets published
26857
e5a1df51bb25 wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26855
diff changeset
235
50686
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
236 Feature works over SSH with inline bundle
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
237 $ mkdir server/.hg/bundle-cache/
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
238 $ cp full.hg server/.hg/bundle-cache/
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
239 $ echo "peer-bundle-cache://full.hg" > server/.hg/clonebundles.manifest
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
240 $ hg clone -U ssh://user@dummy/server ssh-inline-clone
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
241 applying clone bundle from peer-bundle-cache://full.hg
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
242 adding changesets
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
243 adding manifests
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
244 adding file changes
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
245 added 2 changesets with 2 changes to 2 files
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
246 finished applying clone bundle
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
247 searching for changes
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
248 no changes found
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
249 2 local changesets published
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
250
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
251 Hooks work with inline bundle
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
252 $ cp server/.hg/hgrc server/.hg/hgrc-beforeinlinehooks
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
253 $ echo "[hooks]" >> server/.hg/hgrc
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
254 $ echo "pretransmit-inline-clone-bundle=echo foo" >> server/.hg/hgrc
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
255 $ hg clone -U ssh://user@dummy/server ssh-inline-clone-hook
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
256 applying clone bundle from peer-bundle-cache://full.hg
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
257 remote: foo
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
258 adding changesets
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
259 adding manifests
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
260 adding file changes
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
261 added 2 changesets with 2 changes to 2 files
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
262 finished applying clone bundle
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
263 searching for changes
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
264 no changes found
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
265 2 local changesets published
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
266
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
267 Hooks can make an inline bundle fail
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
268 $ cp server/.hg/hgrc-beforeinlinehooks server/.hg/hgrc
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
269 $ echo "[hooks]" >> server/.hg/hgrc
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
270 $ echo "pretransmit-inline-clone-bundle=echo bar && false" >> server/.hg/hgrc
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
271 $ hg clone -U ssh://user@dummy/server ssh-inline-clone-hook-fail
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
272 applying clone bundle from peer-bundle-cache://full.hg
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
273 remote: bar
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
274 remote: abort: pretransmit-inline-clone-bundle hook exited with status 1
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
275 abort: stream ended unexpectedly (got 0 bytes, expected 1)
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
276 [255]
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
277 $ cp server/.hg/hgrc-beforeinlinehooks server/.hg/hgrc
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
278
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
279 Feature does not use inline bundle over HTTP(S) because there is no protocaps support
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
280 (so no way for the client to announce that it supports inline clonebundles)
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
281 $ hg clone -U http://localhost:$HGPORT http-inline-clone
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
282 requesting all changes
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
283 adding changesets
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
284 adding manifests
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
285 adding file changes
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
286 added 2 changesets with 2 changes to 2 files
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
287 new changesets 53245c60e682:aaff8d2ffbbf
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
288
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
289 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
290
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
291 $ cat > server/.hg/clonebundles.manifest << EOF
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
292 > http://bad.entry1 BUNDLESPEC=UNKNOWN
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
293 > http://bad.entry2 BUNDLESPEC=xz-v1
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
294 > http://bad.entry3 BUNDLESPEC=none-v100
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
295 > http://localhost:$HGPORT1/full.hg BUNDLESPEC=gzip-v2
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
296 > EOF
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
297
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
298 $ 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
299 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
300 adding changesets
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
301 adding manifests
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
302 adding file changes
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
303 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
304 finished applying clone bundle
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
305 searching for changes
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
306 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
307 2 local changesets published
26644
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
308
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
309 Automatic fallback when all entries are filtered
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
310
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
311 $ cat > server/.hg/clonebundles.manifest << EOF
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
312 > http://bad.entry BUNDLESPEC=UNKNOWN
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
313 > EOF
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
314
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
315 $ hg clone -U http://localhost:$HGPORT filter-all
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
316 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
317 (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
318 requesting all changes
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
319 adding changesets
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
320 adding manifests
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
321 adding file changes
74de1c59f71c clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26643
diff changeset
322 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
323 new changesets 53245c60e682:aaff8d2ffbbf
26645
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
324
44881
89f83e47e9c9 tests: remove "sslcontext" check
Manuel Jacob <me@manueljacob.de>
parents: 44628
diff changeset
325 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
326 are not filtered.
26645
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
327
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
328 $ cp full.hg sni.hg
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
329 $ cat > server/.hg/clonebundles.manifest << EOF
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
330 > http://localhost:$HGPORT1/sni.hg REQUIRESNI=true
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
331 > http://localhost:$HGPORT1/full.hg
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
332 > EOF
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
333
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
334 $ hg clone -U http://localhost:$HGPORT sni-supported
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
335 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
336 adding changesets
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
337 adding manifests
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
338 adding file changes
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
339 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
340 finished applying clone bundle
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
341 searching for changes
2faa7671a4b3 clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26644
diff changeset
342 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
343 2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
344
26761
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
345 Stream clone bundles are supported
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
346
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
347 $ 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
348 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
349 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
350 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
351 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
352
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
353 No bundle spec should work
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
354
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
355 $ 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
356 > http://localhost:$HGPORT1/packed.hg
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
357 > EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
358
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
359 $ 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
360 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
361 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
362 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
363 finished applying clone bundle
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
364 searching for changes
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
365 no changes found
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
366
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
367 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
368
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
369 $ 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
370 > 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
371 > EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
372
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
373 $ 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
374 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
375 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
376 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
377 finished applying clone bundle
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
378 searching for changes
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
379 no changes found
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
380
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
381 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
382
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
383 $ 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
384 > 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
385 > EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
386
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
387 $ 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
388 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
389 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
390 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
391 finished applying clone bundle
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
392 searching for changes
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
393 no changes found
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
394
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
395 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
396
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
397 $ 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
398 > 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
399 > EOF
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
400
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
401 $ 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
402 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
403 (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
404 requesting all changes
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
405 adding changesets
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
406 adding manifests
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
407 adding file changes
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
408 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
409 new changesets 53245c60e682:aaff8d2ffbbf
26761
8270ee357dd9 exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26732
diff changeset
410
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
411 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
412 (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
413 important)
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
414
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
415 $ 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
416 $ 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
417 $ 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
418 $ 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
419 $ 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
420 > 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
421 > 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
422 > 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
423 > 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
424 > EOF
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 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
427
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
428 $ 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
429 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
430 adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
431 adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
432 adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
433 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
434 finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
435 searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
436 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
437 2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
438
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
439 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
440
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
441 $ 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
442 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
443 adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
444 adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
445 adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
446 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
447 finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
448 searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
449 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
450 2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
451
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
452 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
453
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
454 $ 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
455 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
456 adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
457 adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
458 adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
459 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
460 finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
461 searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
462 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
463 2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
464
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
465 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
466
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
467 $ 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
468 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
469 adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
470 adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
471 adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
472 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
473 finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
474 searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
475 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
476 2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
477
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
478 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
479
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
480 $ 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
481 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
482 adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
483 adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
484 adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
485 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
486 finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
487 searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
488 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
489 2 local changesets published
26648
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
490
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
491 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
492
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
493 $ 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
494 > 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
495 > 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
496 > 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
497 > 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
498 > EOF
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
499
27737
482eb357fe98 exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents: 27736
diff changeset
500 $ 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
501 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
502 adding changesets
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
503 adding manifests
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
504 adding file changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
505 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
506 finished applying clone bundle
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
507 searching for changes
c347d532bb56 exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26645
diff changeset
508 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
509 2 local changesets published
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
510
44282
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
511 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
512
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
513 $ 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
514 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
515 (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
516 [255]
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
517 $ 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
518 > -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
519 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
520 (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
521 [255]
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
522
877805928f85 exchange: check the `ui.clonebundleprefers` form while processing (issue6257)
Matt Harbison <matt_harbison@yahoo.com>
parents: 42964
diff changeset
523
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
524 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
525
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
526 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
527
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
528 $ 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
529 > 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
530 > EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
531
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
532 $ 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
533 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
534 (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
535 streaming all changes
39722
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 38833
diff changeset
536 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
537 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
538
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
539 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
540
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
541 $ 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
542 > http://localhost:$HGPORT1/packed.hg
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
543 > EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
544
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
545 $ 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
546 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
547 (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
548 streaming all changes
39722
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 38833
diff changeset
549 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
550 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
551
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
552 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
553
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
554 $ 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
555 > 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
556 > 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
557 > EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
558
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
559 $ 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
560 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
561 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
562 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
563 finished applying clone bundle
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
564 searching for changes
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
565 no changes found
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
566
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
567 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
568
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
569 $ 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
570 > 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
571 > 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
572 > EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
573
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
574 $ 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
575 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
576 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
577 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
578 finished applying clone bundle
34363
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
579 searching for changes
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
580 no changes found
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
581
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
582 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
583
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
584 $ 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
585 > 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
586 > 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
587 > EOF
880e47351d1a tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
588
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
589 $ 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
590 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
591 (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
592 streaming all changes
39722
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 38833
diff changeset
593 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
594 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
595
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
596 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
597
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
598 $ 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
599 > [extensions]
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
600 > largefiles=
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
601 > EOF
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
602 $ killdaemons.py
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
603 $ 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
604 $ 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
605
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
606 $ 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
607 1f74b3d08286b9b3a16fb3fa185dd29219cbc6ae
35565
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
608
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
609 $ 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
610 > 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
611 > EOF
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
612
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
613 $ 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
614 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
615 adding changesets
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
616 adding manifests
bdae51a83dfb clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents: 35268
diff changeset
617 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
618 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
619 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
620 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
621 no changes found
38250
d0abd7949ea3 phases: use "published" in the phase movement message
Boris Feld <boris.feld@octobus.net>
parents: 38249
diff changeset
622 2 local changesets published
45062
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
623 $ killdaemons.py
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
624
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
625 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
626 on a 32MB system.
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
627
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
628 $ "$PYTHON" $TESTDIR/dumbhttp.py -p $HGPORT1 --pid http.pid
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
629 $ cat http.pid >> $DAEMON_PIDS
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
630 $ 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
631 $ cat hg.pid >> $DAEMON_PIDS
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
632
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
633 $ cat > server/.hg/clonebundles.manifest << EOF
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
634 > 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
635 > EOF
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
636
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
637 $ 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
638 using http://localhost:$HGPORT/
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
639 sending capabilities command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
640 sending clonebundles command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
641 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
642 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
643 (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
644 query 1; heads
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
645 sending batch command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
646 requesting all changes
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
647 sending getbundle command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
648 bundle2-input-bundle: with-transaction
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
649 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
650 adding changesets
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
651 add changeset 53245c60e682
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
652 add changeset aaff8d2ffbbf
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
653 adding manifests
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
654 adding file changes
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
655 adding bar revisions
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
656 adding foo revisions
50686
a41eeb877d07 branching: merge with stable
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50542
diff changeset
657 bundle2-input-part: total payload size 936
45062
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
658 bundle2-input-part: "listkeys" (params: 1 mandatory) supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
659 bundle2-input-part: "phase-heads" supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
660 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
661 bundle2-input-bundle: 3 parts total
45062
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
662 checking for updated bookmarks
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
663 updating the branch cache
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
664 added 2 changesets with 2 changes to 2 files
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
665 new changesets 53245c60e682:aaff8d2ffbbf
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
666 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
667 updating the branch cache
45062
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
668 (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
669
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
670 $ 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
671 using http://localhost:$HGPORT/
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
672 sending capabilities command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
673 sending clonebundles command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
674 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
675 bundle2-input-bundle: 1 params with-transaction
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
676 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
677 adding changesets
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
678 add changeset 53245c60e682
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
679 add changeset aaff8d2ffbbf
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
680 adding manifests
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
681 adding file changes
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
682 adding bar revisions
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
683 adding foo revisions
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
684 bundle2-input-part: total payload size 920
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
685 bundle2-input-part: "cache:rev-branch-cache" (advisory) supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
686 bundle2-input-part: total payload size 59
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
687 bundle2-input-bundle: 2 parts total
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
688 updating the branch cache
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
689 added 2 changesets with 2 changes to 2 files
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
690 finished applying clone bundle
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
691 query 1; heads
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
692 sending batch command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
693 searching for changes
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
694 all remote heads known locally
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
695 no changes found
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
696 sending getbundle command
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
697 bundle2-input-bundle: with-transaction
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
698 bundle2-input-part: "listkeys" (params: 1 mandatory) supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
699 bundle2-input-part: "phase-heads" supported
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
700 bundle2-input-part: total payload size 24
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
701 bundle2-input-bundle: 2 parts total
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
702 checking for updated bookmarks
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
703 2 local changesets published
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
704 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
705 updating the branch cache
45062
72feaeb510b3 clonebundles: optional memory-requirement attribution
Joerg Sonnenberger <joerg@bec.de>
parents: 44881
diff changeset
706 (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
707 $ 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
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 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
710 ==================================================================
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
711
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
712 $ 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
713 > [format]
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
714 > 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
715 > 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
716 > EOF
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
717
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
718 $ 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
719 $ 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
720 $ 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
721 > [extensions]
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
722 > clonebundles =
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
723 > EOF
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
724 $ 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
725 $ 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
726 $ 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
727 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
728 $ 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
729 .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
730 $ 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
731 .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
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 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
734
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
735 $ $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
736 $ 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
737 $ 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
738 $ 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
739 $ cd ..
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 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
741 $ 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
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 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
744 $ 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
745 .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
746 .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
747 $ 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
748 .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
749 .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
750
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
751 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
752
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
753 $ 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
754 $ 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
755
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
756 $ cd ..
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
757
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
758 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
759
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
760 $ 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
761 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
762
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
763 $ 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
764 > 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
765 > EOF
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
766
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
767 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
768
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
769 $ "$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
770 $ 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
771 $ 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
772 $ 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
773
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
774 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
775 ===========================
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
776
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
777 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
778 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
779 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
780
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
781 $ 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
782 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
783 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
784 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
785 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
786 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
787 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
788 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
789 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
790 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
791 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
792 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
793 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
794 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
795 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
796 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
797
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
798 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
799
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
800 $ 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
801 $ 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
802 .hg/store/00manifest.d: size=499037
50348
f952be90b051 revlog-split: make sure the self._indexfile attribut is reset (issue6811)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50346
diff changeset
803 .hg/store/00manifest.i: size=192
50346
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
804 $ 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
805 .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
806 .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
807
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
808 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
809
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
810 $ hg files -r tip | wc -l
50348
f952be90b051 revlog-split: make sure the self._indexfile attribut is reset (issue6811)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50346
diff changeset
811 \s*10001 (re)
50346
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
812
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
813 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
814
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
815 $ hg cat -r tip A | wc -l
50348
f952be90b051 revlog-split: make sure the self._indexfile attribut is reset (issue6811)
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50346
diff changeset
816 \s*100001 (re)
50346
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
817
54f68495ab2a revlog-split: show manifest data loss situation when using clonebundle
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 48693
diff changeset
818