annotate tests/test-clone-uncompressed.t @ 41247:a89b20a49c13

rust-cpython: using MissingAncestors from Python code As precedently done with LazyAncestors on cpython.rs, we test for the presence of the 'rustext' module. incrementalmissingrevs() has two callers within the Mercurial core: `setdiscovery.partialdiscovery` and the `only()` revset. This move shows a significant discovery performance improvement in cases where the baseline is slow: using perfdiscovery on the PyPy repos, prepared with `contrib/discovery-helper <repo> 50 100`, we get averaged medians of 403ms with the Rust version vs 742ms without (about 45% better). But there are still indications that performance can be worse in cases the baseline is fast, possibly due to the conversion from Python to Rust and back becoming the bottleneck. We could measure this on mozilla-central in cases were the delta is just a few changesets. This requires confirmation, but if that's the reason, then an upcoming `partialdiscovery` fully in Rust should solve the problem. Differential Revision: https://phab.mercurial-scm.org/D5551
author Georges Racinet <georges.racinet@octobus.net>
date Fri, 30 Nov 2018 14:35:57 +0100
parents 42f59d3f714d
children 34a46d48d24e
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: 37667
diff changeset
1 #require serve no-reposimplestore no-chg
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
2
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
3 #testcases stream-legacy stream-bundle2
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
4
39722
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 39721
diff changeset
5 #if stream-legacy
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
6 $ cat << EOF >> $HGRCPATH
39721
1b5880352314 bundle2: graduate bundle2.stream option from experimental to server section
Anton Shestakov <av6@dwimlabs.net>
parents: 39301
diff changeset
7 > [server]
39722
4bd6e444c76f bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents: 39721
diff changeset
8 > bundle2.stream = no
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
9 > EOF
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
10 #endif
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
11
28389
9ab45fbe045e bdiff: (pure) support array.array arrays (issue5130)
timeless <timeless@mozdev.org>
parents: 27897
diff changeset
12 Initialize repository
9ab45fbe045e bdiff: (pure) support array.array arrays (issue5130)
timeless <timeless@mozdev.org>
parents: 27897
diff changeset
13 the status call is to check for issue5130
9ab45fbe045e bdiff: (pure) support array.array arrays (issue5130)
timeless <timeless@mozdev.org>
parents: 27897
diff changeset
14
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
15 $ hg init server
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
16 $ cd server
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
17 $ touch foo
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
18 $ hg -q commit -A -m initial
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
19 >>> for i in range(1024):
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
20 ... with open(str(i), 'wb') as fh:
37667
701c261fba83 py3: use b"%d" instead of str() to convert int to bytes
Pulkit Goyal <7895pulkit@gmail.com>
parents: 37349
diff changeset
21 ... fh.write(b"%d" % i) and None
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
22 $ hg -q commit -A -m 'add a lot of files'
28389
9ab45fbe045e bdiff: (pure) support array.array arrays (issue5130)
timeless <timeless@mozdev.org>
parents: 27897
diff changeset
23 $ hg st
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
24 $ hg --config server.uncompressed=false serve -p $HGPORT -d --pid-file=hg.pid
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
25 $ cat hg.pid > $DAEMON_PIDS
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
26 $ cd ..
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
27
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
28 Cannot stream clone when server.uncompressed is set
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
29
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
30 $ get-with-headers.py $LOCALIP:$HGPORT '?cmd=stream_out'
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
31 200 Script output follows
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
32
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
33 1
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
34
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
35 #if stream-legacy
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
36 $ hg debugcapabilities http://localhost:$HGPORT
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
37 Main capabilities:
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
38 batch
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
39 branchmap
35792
1d118f9f4f57 bundle2: always advertise client support for stream parts
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35791
diff changeset
40 $USUAL_BUNDLE2_CAPS_SERVER$
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
41 changegroupsubset
35806
ab239e3de23b tests: add a pattern to fix --pure tests
Augie Fackler <augie@google.com>
parents: 35805
diff changeset
42 compression=$BUNDLE2_COMPRESSIONS$
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
43 getbundle
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
44 httpheader=1024
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
45 httpmediatype=0.1rx,0.1tx,0.2tx
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
46 known
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
47 lookup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
48 pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
49 unbundle=HG10GZ,HG10BZ,HG10UN
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
50 unbundlehash
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
51 Bundle2 capabilities:
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
52 HG20
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
53 bookmarks
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
54 changegroup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
55 01
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
56 02
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
57 digests
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
58 md5
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
59 sha1
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
60 sha512
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
61 error
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
62 abort
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
63 unsupportedcontent
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
64 pushraced
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
65 pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
66 hgtagsfnodes
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
67 listkeys
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
68 phases
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
69 heads
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
70 pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
71 remote-changegroup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
72 http
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
73 https
36968
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 35813
diff changeset
74 rev-branch-cache
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
75
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
76 $ hg clone --stream -U http://localhost:$HGPORT server-disabled
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
77 warning: stream clone requested but server has them disabled
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
78 requesting all changes
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
79 adding changesets
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
80 adding manifests
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
81 adding file changes
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
82 added 2 changesets with 1025 changes to 1025 files
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
83 new changesets 96ee1d7354c4:c17445101a72
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
84
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
85 $ get-with-headers.py $LOCALIP:$HGPORT '?cmd=getbundle' content-type --bodyfile body --hgproto 0.2 --requestheader "x-hgarg-1=bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=0&common=0000000000000000000000000000000000000000&heads=c17445101a72edac06facd130d14808dfbd5c7c2&stream=1"
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
86 200 Script output follows
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
87 content-type: application/mercurial-0.2
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
88
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
89
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
90 $ f --size body --hexdump --bytes 100
35791
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
91 body: size=232
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
92 0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......|
35791
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
93 0010: cf 0b 45 52 52 4f 52 3a 41 42 4f 52 54 00 00 00 |..ERROR:ABORT...|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
94 0020: 00 01 01 07 3c 04 72 6d 65 73 73 61 67 65 73 74 |....<.rmessagest|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
95 0030: 72 65 61 6d 20 64 61 74 61 20 72 65 71 75 65 73 |ream data reques|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
96 0040: 74 65 64 20 62 75 74 20 73 65 72 76 65 72 20 64 |ted but server d|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
97 0050: 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 74 68 |oes not allow th|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
98 0060: 69 73 20 66 |is f|
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
99
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
100 #endif
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
101 #if stream-bundle2
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
102 $ hg debugcapabilities http://localhost:$HGPORT
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
103 Main capabilities:
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
104 batch
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
105 branchmap
35792
1d118f9f4f57 bundle2: always advertise client support for stream parts
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35791
diff changeset
106 $USUAL_BUNDLE2_CAPS_SERVER$
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
107 changegroupsubset
35806
ab239e3de23b tests: add a pattern to fix --pure tests
Augie Fackler <augie@google.com>
parents: 35805
diff changeset
108 compression=$BUNDLE2_COMPRESSIONS$
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
109 getbundle
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
110 httpheader=1024
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
111 httpmediatype=0.1rx,0.1tx,0.2tx
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
112 known
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
113 lookup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
114 pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
115 unbundle=HG10GZ,HG10BZ,HG10UN
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
116 unbundlehash
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
117 Bundle2 capabilities:
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
118 HG20
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
119 bookmarks
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
120 changegroup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
121 01
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
122 02
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
123 digests
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
124 md5
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
125 sha1
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
126 sha512
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
127 error
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
128 abort
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
129 unsupportedcontent
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
130 pushraced
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
131 pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
132 hgtagsfnodes
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
133 listkeys
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
134 phases
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
135 heads
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
136 pushkey
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
137 remote-changegroup
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
138 http
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
139 https
36968
2090044a288d revbranchcache: advertise and use 'rbc' exchange capability
Boris Feld <boris.feld@octobus.net>
parents: 35813
diff changeset
140 rev-branch-cache
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
141
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
142 $ hg clone --stream -U http://localhost:$HGPORT server-disabled
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
143 warning: stream clone requested but server has them disabled
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
144 requesting all changes
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
145 adding changesets
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
146 adding manifests
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
147 adding file changes
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
148 added 2 changesets with 1025 changes to 1025 files
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
149 new changesets 96ee1d7354c4:c17445101a72
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
150
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
151 $ get-with-headers.py $LOCALIP:$HGPORT '?cmd=getbundle' content-type --bodyfile body --hgproto 0.2 --requestheader "x-hgarg-1=bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=0&common=0000000000000000000000000000000000000000&heads=c17445101a72edac06facd130d14808dfbd5c7c2&stream=1"
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
152 200 Script output follows
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
153 content-type: application/mercurial-0.2
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
154
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
155
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
156 $ f --size body --hexdump --bytes 100
35791
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
157 body: size=232
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
158 0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......|
35791
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
159 0010: cf 0b 45 52 52 4f 52 3a 41 42 4f 52 54 00 00 00 |..ERROR:ABORT...|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
160 0020: 00 01 01 07 3c 04 72 6d 65 73 73 61 67 65 73 74 |....<.rmessagest|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
161 0030: 72 65 61 6d 20 64 61 74 61 20 72 65 71 75 65 73 |ream data reques|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
162 0040: 74 65 64 20 62 75 74 20 73 65 72 76 65 72 20 64 |ted but server d|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
163 0050: 6f 65 73 20 6e 6f 74 20 61 6c 6c 6f 77 20 74 68 |oes not allow th|
9adae6a20e1f exchange: don't send stream data when server.uncompressed is set
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35790
diff changeset
164 0060: 69 73 20 66 |is f|
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
165
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
166 #endif
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
167
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
168 $ killdaemons.py
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
169 $ cd server
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
170 $ hg serve -p $HGPORT -d --pid-file=hg.pid
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
171 $ cat hg.pid > $DAEMON_PIDS
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
172 $ cd ..
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
173
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
174 Basic clone
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
175
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
176 #if stream-legacy
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
177 $ hg clone --stream -U http://localhost:$HGPORT clone1
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
178 streaming all changes
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
179 1027 files to transfer, 96.3 KB of data
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
180 transferred 96.3 KB in * seconds (*/sec) (glob)
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
181 searching for changes
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
182 no changes found
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
183 #endif
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
184 #if stream-bundle2
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
185 $ hg clone --stream -U http://localhost:$HGPORT clone1
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
186 streaming all changes
40978
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
187 1030 files to transfer, 96.5 KB of data
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
188 transferred 96.5 KB in * seconds (* */sec) (glob)
35767
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
189
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
190 $ ls -1 clone1/.hg/cache
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
191 branch2-served
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
192 rbc-names-v1
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
193 rbc-revs-v1
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
194 #endif
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
195
35787
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
196 getbundle requests with stream=1 are uncompressed
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
197
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
198 $ get-with-headers.py $LOCALIP:$HGPORT '?cmd=getbundle' content-type --bodyfile body --hgproto '0.1 0.2 comp=zlib,none' --requestheader "x-hgarg-1=bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=0&common=0000000000000000000000000000000000000000&heads=c17445101a72edac06facd130d14808dfbd5c7c2&stream=1"
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
199 200 Script output follows
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
200 content-type: application/mercurial-0.2
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
201
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
202
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
203 $ f --size --hex --bytes 256 body
40978
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
204 body: size=112262
35787
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
205 0000: 04 6e 6f 6e 65 48 47 32 30 00 00 00 00 00 00 00 |.noneHG20.......|
40890
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
206 0010: 7f 07 53 54 52 45 41 4d 32 00 00 00 00 03 00 09 |..STREAM2.......|
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
207 0020: 05 09 04 0c 44 62 79 74 65 63 6f 75 6e 74 39 38 |....Dbytecount98|
40978
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
208 0030: 37 37 35 66 69 6c 65 63 6f 75 6e 74 31 30 33 30 |775filecount1030|
35788
b116a66bcc44 bundle2: move version of stream clone into part name
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35787
diff changeset
209 0040: 72 65 71 75 69 72 65 6d 65 6e 74 73 64 6f 74 65 |requirementsdote|
35813
768326377e4d bundle2: fix the formatting of the stream part requirements
Boris Feld <boris.feld@octobus.net>
parents: 35806
diff changeset
210 0050: 6e 63 6f 64 65 25 32 43 66 6e 63 61 63 68 65 25 |ncode%2Cfncache%|
768326377e4d bundle2: fix the formatting of the stream part requirements
Boris Feld <boris.feld@octobus.net>
parents: 35806
diff changeset
211 0060: 32 43 67 65 6e 65 72 61 6c 64 65 6c 74 61 25 32 |2Cgeneraldelta%2|
40890
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
212 0070: 43 72 65 76 6c 6f 67 76 31 25 32 43 73 70 61 72 |Crevlogv1%2Cspar|
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
213 0080: 73 65 72 65 76 6c 6f 67 25 32 43 73 74 6f 72 65 |serevlog%2Cstore|
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
214 0090: 00 00 80 00 73 08 42 64 61 74 61 2f 30 2e 69 00 |....s.Bdata/0.i.|
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
215 00a0: 03 00 01 00 00 00 00 00 00 00 02 00 00 00 01 00 |................|
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
216 00b0: 00 00 00 00 00 00 01 ff ff ff ff ff ff ff ff 80 |................|
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
217 00c0: 29 63 a0 49 d3 23 87 bf ce fe 56 67 92 67 2c 69 |)c.I.#....Vg.g,i|
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
218 00d0: d1 ec 39 00 00 00 00 00 00 00 00 00 00 00 00 75 |..9............u|
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
219 00e0: 30 73 08 42 64 61 74 61 2f 31 2e 69 00 03 00 01 |0s.Bdata/1.i....|
5db7efa238bd test: enable sparse-revlog for test-clone-uncompressed.t
Boris Feld <boris.feld@octobus.net>
parents: 40399
diff changeset
220 00f0: 00 00 00 00 00 00 00 02 00 00 00 01 00 00 00 00 |................|
35787
a84dbc87dae9 exchange: send bundle2 stream clones uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35767
diff changeset
221
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
222 --uncompressed is an alias to --stream
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
223
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
224 #if stream-legacy
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
225 $ hg clone --uncompressed -U http://localhost:$HGPORT clone1-uncompressed
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
226 streaming all changes
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
227 1027 files to transfer, 96.3 KB of data
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
228 transferred 96.3 KB in * seconds (*/sec) (glob)
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
229 searching for changes
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
230 no changes found
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
231 #endif
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
232 #if stream-bundle2
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
233 $ hg clone --uncompressed -U http://localhost:$HGPORT clone1-uncompressed
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
234 streaming all changes
40978
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
235 1030 files to transfer, 96.5 KB of data
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
236 transferred 96.5 KB in * seconds (* */sec) (glob)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
237 #endif
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
238
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
239 Clone with background file closing enabled
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
240
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
241 #if stream-legacy
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
242 $ hg --debug --config worker.backgroundclose=true --config worker.backgroundcloseminfilecount=1 clone --stream -U http://localhost:$HGPORT clone-background | grep -v adding
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
243 using http://localhost:$HGPORT/
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
244 sending capabilities command
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
245 sending branchmap command
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
246 streaming all changes
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
247 sending stream_out command
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
248 1027 files to transfer, 96.3 KB of data
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
249 starting 4 threads for background file closing
39301
5763216ba311 transaction: remember original len(repo) instead of tracking added revs (API)
Yuya Nishihara <yuya@tcha.org>
parents: 38021
diff changeset
250 updating the branch cache
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
251 transferred 96.3 KB in * seconds (*/sec) (glob)
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
252 query 1; heads
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
253 sending batch command
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
254 searching for changes
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
255 all remote heads known locally
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
256 no changes found
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
257 sending getbundle command
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
258 bundle2-input-bundle: with-transaction
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
259 bundle2-input-part: "listkeys" (params: 1 mandatory) supported
34322
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 32744
diff changeset
260 bundle2-input-part: "phase-heads" supported
10e162bb9bf5 pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents: 32744
diff changeset
261 bundle2-input-part: total payload size 24
27897
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
262 bundle2-input-bundle: 1 parts total
2fdbf22a1b63 streamclone: use backgroundfilecloser (issue4889)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
263 checking for updated bookmarks
40034
393e44324037 httppeer: report http statistics
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39722
diff changeset
264 (sent 5 HTTP requests and * bytes; received * bytes in responses) (glob)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
265 #endif
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
266 #if stream-bundle2
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
267 $ hg --debug --config worker.backgroundclose=true --config worker.backgroundcloseminfilecount=1 clone --stream -U http://localhost:$HGPORT clone-background | grep -v adding
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
268 using http://localhost:$HGPORT/
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
269 sending capabilities command
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
270 query 1; heads
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
271 sending batch command
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
272 streaming all changes
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
273 sending getbundle command
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
274 bundle2-input-bundle: with-transaction
35788
b116a66bcc44 bundle2: move version of stream clone into part name
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35787
diff changeset
275 bundle2-input-part: "stream2" (params: 3 mandatory) supported
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
276 applying stream bundle
40978
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
277 1030 files to transfer, 96.5 KB of data
35767
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
278 starting 4 threads for background file closing
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
279 starting 4 threads for background file closing
39301
5763216ba311 transaction: remember original len(repo) instead of tracking added revs (API)
Yuya Nishihara <yuya@tcha.org>
parents: 38021
diff changeset
280 updating the branch cache
40978
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
281 transferred 96.5 KB in * seconds (* */sec) (glob)
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
282 bundle2-input-part: total payload size 112094
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
283 bundle2-input-part: "listkeys" (params: 1 mandatory) supported
35765
56c30b31afbe streamclone: add support for cloning non append-only file
Boris Feld <boris.feld@octobus.net>
parents: 35764
diff changeset
284 bundle2-input-bundle: 1 parts total
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
285 checking for updated bookmarks
40034
393e44324037 httppeer: report http statistics
Gregory Szorc <gregory.szorc@gmail.com>
parents: 39722
diff changeset
286 (sent 3 HTTP requests and * bytes; received * bytes in responses) (glob)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
287 #endif
28517
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
288
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
289 Cannot stream clone when there are secret changesets
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
290
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
291 $ hg -R server phase --force --secret -r tip
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
292 $ hg clone --stream -U http://localhost:$HGPORT secret-denied
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
293 warning: stream clone requested but server has them disabled
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
294 requesting all changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
295 adding changesets
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
296 adding manifests
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
297 adding file changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
298 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: 34483
diff changeset
299 new changesets 96ee1d7354c4
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
300
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
301 $ killdaemons.py
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
302
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
303 Streaming of secrets can be overridden by server config
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
304
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
305 $ cd server
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
306 $ hg serve --config server.uncompressedallowsecret=true -p $HGPORT -d --pid-file=hg.pid
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
307 $ cat hg.pid > $DAEMON_PIDS
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
308 $ cd ..
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
309
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
310 #if stream-legacy
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
311 $ hg clone --stream -U http://localhost:$HGPORT secret-allowed
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
312 streaming all changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
313 1027 files to transfer, 96.3 KB of data
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
314 transferred 96.3 KB in * seconds (*/sec) (glob)
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
315 searching for changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
316 no changes found
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
317 #endif
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
318 #if stream-bundle2
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
319 $ hg clone --stream -U http://localhost:$HGPORT secret-allowed
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
320 streaming all changes
40978
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
321 1030 files to transfer, 96.5 KB of data
42f59d3f714d delta: exclude base candidate much smaller than the target
Boris Feld <boris.feld@octobus.net>
parents: 40919
diff changeset
322 transferred 96.5 KB in * seconds (* */sec) (glob)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
323 #endif
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
324
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
325 $ killdaemons.py
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
326
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
327 Verify interaction between preferuncompressed and secret presence
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
328
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
329 $ cd server
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
330 $ hg serve --config server.preferuncompressed=true -p $HGPORT -d --pid-file=hg.pid
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
331 $ cat hg.pid > $DAEMON_PIDS
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
332 $ cd ..
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
333
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
334 $ hg clone -U http://localhost:$HGPORT preferuncompressed-secret
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
335 requesting all changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
336 adding changesets
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
337 adding manifests
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
338 adding file changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
339 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: 34483
diff changeset
340 new changesets 96ee1d7354c4
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
341
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
342 $ killdaemons.py
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
343
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
344 Clone not allowed when full bundles disabled and can't serve secrets
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
345
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
346 $ cd server
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
347 $ hg serve --config server.disablefullbundle=true -p $HGPORT -d --pid-file=hg.pid
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
348 $ cat hg.pid > $DAEMON_PIDS
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
349 $ cd ..
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
350
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
351 $ hg clone --stream http://localhost:$HGPORT secret-full-disabled
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
352 warning: stream clone requested but server has them disabled
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
353 requesting all changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
354 remote: abort: server has pull-based clones disabled
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
355 abort: pull failed on remote
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
356 (remove --pull if specified or upgrade Mercurial)
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
357 [255]
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
358
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
359 Local stream clone with secrets involved
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
360 (This is just a test over behavior: if you have access to the repo's files,
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
361 there is no security so it isn't important to prevent a clone here.)
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
362
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
363 $ hg clone -U --stream server local-secret
32744
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
364 warning: stream clone requested but server has them disabled
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
365 requesting all changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
366 adding changesets
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
367 adding manifests
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
368 adding file changes
33b7283a3828 streamclone: consider secret changesets (BC) (issue5589)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31252
diff changeset
369 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: 34483
diff changeset
370 new changesets 96ee1d7354c4
28517
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
371
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
372 Stream clone while repo is changing:
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
373
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
374 $ mkdir changing
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
375 $ cd changing
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
376
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
377 extension for delaying the server process so we reliably can modify the repo
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
378 while cloning
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
379
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
380 $ cat > delayer.py <<EOF
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
381 > import time
31252
e7a35f18d91f vfs: use 'vfs' module directly in 'test-clone-uncompressed'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29064
diff changeset
382 > from mercurial import extensions, vfs
28517
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
383 > def __call__(orig, self, path, *args, **kwargs):
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
384 > if path == 'data/f1.i':
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
385 > time.sleep(2)
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
386 > return orig(self, path, *args, **kwargs)
31252
e7a35f18d91f vfs: use 'vfs' module directly in 'test-clone-uncompressed'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 29064
diff changeset
387 > extensions.wrapfunction(vfs.vfs, '__call__', __call__)
28517
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
388 > EOF
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
389
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
390 prepare repo with small and big file to cover both code paths in emitrevlogdata
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
391
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
392 $ hg init repo
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
393 $ touch repo/f1
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
394 $ $TESTDIR/seq.py 50000 > repo/f2
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
395 $ hg -R repo ci -Aqm "0"
34483
a6d95a8b7243 serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents: 34393
diff changeset
396 $ hg serve -R repo -p $HGPORT1 -d --pid-file=hg.pid --config extensions.delayer=delayer.py
28517
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
397 $ cat hg.pid >> $DAEMON_PIDS
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
398
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
399 clone while modifying the repo between stating file with write lock and
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
400 actually serving file content
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
401
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34322
diff changeset
402 $ hg clone -q --stream -U http://localhost:$HGPORT1 clone &
28517
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
403 $ sleep 1
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
404 $ echo >> repo/f1
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
405 $ echo >> repo/f2
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
406 $ hg -R repo ci -m "1"
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
407 $ wait
95163ababeb8 tests: add test of stream clone of repo that is changing
Mads Kiilerich <madski@unity3d.com>
parents: 28389
diff changeset
408 $ hg -R clone id
28518
aa440c3d7c5d streamclone: fix error when store files grow while stream cloning
Mads Kiilerich <madski@unity3d.com>
parents: 28517
diff changeset
409 000000000000
35747
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
410 $ cd ..
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
411
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
412 Stream repository with bookmarks
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
413 --------------------------------
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
414
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
415 (revert introduction of secret changeset)
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
416
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
417 $ hg -R server phase --draft 'secret()'
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
418
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
419 add a bookmark
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
420
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
421 $ hg -R server bookmark -r tip some-bookmark
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
422
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
423 clone it
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
424
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
425 #if stream-legacy
35747
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
426 $ hg clone --stream http://localhost:$HGPORT with-bookmarks
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
427 streaming all changes
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
428 1027 files to transfer, 96.3 KB of data
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
429 transferred 96.3 KB in * seconds (*) (glob)
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
430 searching for changes
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
431 no changes found
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
432 updating to branch default
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
433 1025 files updated, 0 files merged, 0 files removed, 0 files unresolved
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
434 #endif
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
435 #if stream-bundle2
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
436 $ hg clone --stream http://localhost:$HGPORT with-bookmarks
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
437 streaming all changes
35767
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
438 1033 files to transfer, 96.6 KB of data
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
439 transferred 96.6 KB in * seconds (* */sec) (glob)
35763
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
440 updating to branch default
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
441 1025 files updated, 0 files merged, 0 files removed, 0 files unresolved
7eedbd5d4880 streamclone: add support for bundle2 based stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35747
diff changeset
442 #endif
35747
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
443 $ hg -R with-bookmarks bookmarks
de32acb24949 stream: add a test showing we also clone bookmarks
Boris Feld <boris.feld@octobus.net>
parents: 34661
diff changeset
444 some-bookmark 1:c17445101a72
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
445
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
446 Stream repository with phases
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
447 -----------------------------
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
448
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
449 Clone as publishing
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
450
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
451 $ hg -R server phase -r 'all()'
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
452 0: draft
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
453 1: draft
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
454
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
455 #if stream-legacy
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
456 $ hg clone --stream http://localhost:$HGPORT phase-publish
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
457 streaming all changes
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
458 1027 files to transfer, 96.3 KB of data
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
459 transferred 96.3 KB in * seconds (*) (glob)
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
460 searching for changes
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
461 no changes found
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
462 updating to branch default
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
463 1025 files updated, 0 files merged, 0 files removed, 0 files unresolved
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
464 #endif
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
465 #if stream-bundle2
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
466 $ hg clone --stream http://localhost:$HGPORT phase-publish
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
467 streaming all changes
35767
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
468 1033 files to transfer, 96.6 KB of data
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
469 transferred 96.6 KB in * seconds (* */sec) (glob)
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
470 updating to branch default
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
471 1025 files updated, 0 files merged, 0 files removed, 0 files unresolved
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
472 #endif
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
473 $ hg -R phase-publish phase -r 'all()'
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
474 0: public
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
475 1: public
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
476
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
477 Clone as non publishing
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
478
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
479 $ cat << EOF >> server/.hg/hgrc
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
480 > [phases]
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
481 > publish = False
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
482 > EOF
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
483 $ killdaemons.py
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
484 $ hg -R server serve -p $HGPORT -d --pid-file=hg.pid
35789
8ed5f7609728 tests: add more testing around server.uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35788
diff changeset
485 $ cat hg.pid > $DAEMON_PIDS
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
486
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
487 #if stream-legacy
35805
784ac51f8bab streamclone: add a comment about non-publishing being broken with v1
Boris Feld <boris.feld@octobus.net>
parents: 35793
diff changeset
488
784ac51f8bab streamclone: add a comment about non-publishing being broken with v1
Boris Feld <boris.feld@octobus.net>
parents: 35793
diff changeset
489 With v1 of the stream protocol, changeset are always cloned as public. It make
784ac51f8bab streamclone: add a comment about non-publishing being broken with v1
Boris Feld <boris.feld@octobus.net>
parents: 35793
diff changeset
490 stream v1 unsuitable for non-publishing repository.
784ac51f8bab streamclone: add a comment about non-publishing being broken with v1
Boris Feld <boris.feld@octobus.net>
parents: 35793
diff changeset
491
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
492 $ hg clone --stream http://localhost:$HGPORT phase-no-publish
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
493 streaming all changes
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
494 1027 files to transfer, 96.3 KB of data
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
495 transferred 96.3 KB in * seconds (*) (glob)
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
496 searching for changes
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
497 no changes found
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
498 updating to branch default
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
499 1025 files updated, 0 files merged, 0 files removed, 0 files unresolved
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
500 $ hg -R phase-no-publish phase -r 'all()'
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
501 0: public
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
502 1: public
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
503 #endif
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
504 #if stream-bundle2
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
505 $ hg clone --stream http://localhost:$HGPORT phase-no-publish
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
506 streaming all changes
35767
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
507 1034 files to transfer, 96.7 KB of data
5f5fb279fd39 streamclone: also stream caches to the client
Boris Feld <boris.feld@octobus.net>
parents: 35765
diff changeset
508 transferred 96.7 KB in * seconds (* */sec) (glob)
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
509 updating to branch default
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
510 1025 files updated, 0 files merged, 0 files removed, 0 files unresolved
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
511 $ hg -R phase-no-publish phase -r 'all()'
35765
56c30b31afbe streamclone: add support for cloning non append-only file
Boris Feld <boris.feld@octobus.net>
parents: 35764
diff changeset
512 0: draft
56c30b31afbe streamclone: add support for cloning non append-only file
Boris Feld <boris.feld@octobus.net>
parents: 35764
diff changeset
513 1: draft
35764
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
514 #endif
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
515
b6ffd4194639 streamclone: tests phase exchange during stream clone
Boris Feld <boris.feld@octobus.net>
parents: 35763
diff changeset
516 $ killdaemons.py
40398
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
517
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
518 #if stream-legacy
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
519
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
520 With v1 of the stream protocol, changeset are always cloned as public. There's
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
521 no obsolescence markers exchange in stream v1.
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
522
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
523 #endif
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
524 #if stream-bundle2
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
525
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
526 Stream repository with obsolescence
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
527 -----------------------------------
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
528
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
529 Clone non-publishing with obsolescence
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
530
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
531 $ cat >> $HGRCPATH << EOF
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
532 > [experimental]
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
533 > evolution=all
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
534 > EOF
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
535
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
536 $ cd server
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
537 $ echo foo > foo
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
538 $ hg -q commit -m 'about to be pruned'
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
539 $ hg debugobsolete `hg log -r . -T '{node}'` -d '0 0' -u test --record-parents
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
540 obsoleted 1 changesets
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
541 $ hg up null -q
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
542 $ hg log -T '{rev}: {phase}\n'
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
543 1: draft
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
544 0: draft
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
545 $ hg serve -p $HGPORT -d --pid-file=hg.pid
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
546 $ cat hg.pid > $DAEMON_PIDS
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
547 $ cd ..
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
548
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
549 $ hg clone -U --stream http://localhost:$HGPORT with-obsolescence
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
550 streaming all changes
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
551 1035 files to transfer, 97.1 KB of data
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
552 transferred 97.1 KB in * seconds (* */sec) (glob)
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
553 $ hg -R with-obsolescence log -T '{rev}: {phase}\n'
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
554 1: draft
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
555 0: draft
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
556 $ hg debugobsolete -R with-obsolescence
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
557 50382b884f66690b7045cac93a540cba4d4c906f 0 {c17445101a72edac06facd130d14808dfbd5c7c2} (Thu Jan 01 00:00:00 1970 +0000) {'user': 'test'}
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
558
40399
4ab6e7b4fe8a streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents: 40398
diff changeset
559 $ hg clone -U --stream --config experimental.evolution=0 http://localhost:$HGPORT with-obsolescence-no-evolution
4ab6e7b4fe8a streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents: 40398
diff changeset
560 streaming all changes
4ab6e7b4fe8a streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents: 40398
diff changeset
561 remote: abort: server has obsolescence markers, but client cannot receive them via stream clone
4ab6e7b4fe8a streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents: 40398
diff changeset
562 abort: pull failed on remote
4ab6e7b4fe8a streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents: 40398
diff changeset
563 [255]
4ab6e7b4fe8a streamclone: abort when client needs to handle obsmarkers, but doesn't
Anton Shestakov <av6@dwimlabs.net>
parents: 40398
diff changeset
564
40398
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
565 $ killdaemons.py
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
566
0ac794e0e285 streamclone: include obsstore file into stream bundle if client can read it
Anton Shestakov <av6@dwimlabs.net>
parents: 40034
diff changeset
567 #endif