annotate tests/test-bundle-type.t @ 35012:d80380ba8e7d

changegroup: use any node, not min(), in treemanifest's generatemanifests This is fixing quadratic behavior, which is probably not noticeable in the common case, but if a very large directory gets added here, it can get pretty bad. This was noticed because we had some pushes that spent >25s in changegroup generation calling min() here, according to profiling. The original reasoning for min() being used in 829d369fc5a8 was that, at that point in the series, we were adding almost everything to tmfnodes during the first iteration through the loop , so we needed to avoid sending child directories before parents. Later changes made it so that the child directories were added only when we visited the parent directory (not all of them on the first iteration), so this is no longer necessary - there won't be any child directories in tmfnodes before the parents have been sent. This does mean that the manifests are now exchanged unordered, whereas previously we would essentially do [a, b, b/c, b/c/d, e], we now can send a, b, and e in any order; b/c must still follow b, and b/c/d must still follow b/c. Differential Revision: https://phab.mercurial-scm.org/D1351
author Kyle Lippincott <spectral@google.com>
date Wed, 08 Nov 2017 18:24:43 -0800
parents eb586ed5d8ce
children b89a7ef29013
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
26925
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
1
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
2 $ cat << EOF >> $HGRCPATH
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
3 > [format]
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
4 > usegeneraldelta=yes
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
5 > EOF
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
6
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
7 bundle w/o type option
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
8
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
9 $ hg init t1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
10 $ hg init t2
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
11 $ cd t1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
12 $ echo blablablablabla > file.txt
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
13 $ hg ci -Ama
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
14 adding file.txt
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
15 $ hg log | grep summary
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
16 summary: a
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
17 $ hg bundle ../b1 ../t2
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
18 searching for changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
19 1 changesets found
6570
626cb86a6523 add compression type type parameter to bundle command
Benoit Allard <benoit@aeteurope.nl>
parents:
diff changeset
20
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
21 $ cd ../t2
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
22 $ hg pull ../b1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
23 pulling from ../b1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
24 requesting all changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
25 adding changesets
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
26 adding manifests
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
27 adding file changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
28 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: 34025
diff changeset
29 new changesets c35a0f9217e6
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
30 (run 'hg update' to get a working copy)
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
31 $ hg up
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
32 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
33 $ hg log | grep summary
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
34 summary: a
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
35 $ cd ..
6570
626cb86a6523 add compression type type parameter to bundle command
Benoit Allard <benoit@aeteurope.nl>
parents:
diff changeset
36
31473
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
37 Unknown compression type is rejected
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
38
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
39 $ hg init t3
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
40 $ cd t3
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
41 $ hg -q pull ../b1
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
42 $ hg bundle -a -t unknown out.hg
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
43 abort: unknown is not a recognized bundle specification
31794
54b1af732415 commands: update help for "bundle"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31474
diff changeset
44 (see 'hg help bundlespec' for supported values for --type)
31473
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
45 [255]
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
46
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
47 $ hg bundle -a -t unknown-v2 out.hg
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
48 abort: unknown compression is not supported
31794
54b1af732415 commands: update help for "bundle"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31474
diff changeset
49 (see 'hg help bundlespec' for supported values for --type)
31473
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
50 [255]
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
51
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
52 $ cd ..
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
53
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
54 test bundle types
6570
626cb86a6523 add compression type type parameter to bundle command
Benoit Allard <benoit@aeteurope.nl>
parents:
diff changeset
55
30442
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
56 $ testbundle() {
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
57 > echo % test bundle type $1
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
58 > hg init t$1
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
59 > cd t1
30442
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
60 > hg bundle -t $1 ../b$1 ../t$1
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
61 > f -q -B6 -D ../b$1; echo
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
62 > cd ../t$1
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
63 > hg debugbundle ../b$1
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
64 > hg debugbundle --spec ../b$1
26511
bb3d961c1648 test-bundle-type: replace unbundle with debugbundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24138
diff changeset
65 > echo
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
66 > cd ..
30442
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
67 > }
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
68
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
69 $ for t in "None" "bzip2" "gzip" "none-v2" "v2" "v1" "gzip-v1"; do
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
70 > testbundle $t
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
71 > done
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
72 % test bundle type None
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
73 searching for changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
74 1 changesets found
26925
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
75 HG20\x00\x00 (esc)
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
76 Stream params: {}
34025
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
77 changegroup -- {nbchanges: 1, version: 02}
26925
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
78 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
27885
2370c66110cb commands: teach debugbundle to print bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26925
diff changeset
79 none-v2
26511
bb3d961c1648 test-bundle-type: replace unbundle with debugbundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24138
diff changeset
80
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
81 % test bundle type bzip2
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
82 searching for changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
83 1 changesets found
26925
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
84 HG20\x00\x00 (esc)
34025
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
85 Stream params: {Compression: BZ}
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
86 changegroup -- {nbchanges: 1, version: 02}
26925
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
87 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
27885
2370c66110cb commands: teach debugbundle to print bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26925
diff changeset
88 bzip2-v2
26511
bb3d961c1648 test-bundle-type: replace unbundle with debugbundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24138
diff changeset
89
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
90 % test bundle type gzip
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
91 searching for changes
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
92 1 changesets found
26925
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
93 HG20\x00\x00 (esc)
34025
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
94 Stream params: {Compression: GZ}
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
95 changegroup -- {nbchanges: 1, version: 02}
26925
d8270223a026 test: use generaldelta in 'test-bundle-type.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26905
diff changeset
96 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
27885
2370c66110cb commands: teach debugbundle to print bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26925
diff changeset
97 gzip-v2
26511
bb3d961c1648 test-bundle-type: replace unbundle with debugbundle
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 24138
diff changeset
98
26531
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
99 % test bundle type none-v2
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
100 searching for changes
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
101 1 changesets found
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
102 HG20\x00\x00 (esc)
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
103 Stream params: {}
34025
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
104 changegroup -- {nbchanges: 1, version: 02}
26531
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
105 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
27885
2370c66110cb commands: teach debugbundle to print bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26925
diff changeset
106 none-v2
26531
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
107
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
108 % test bundle type v2
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
109 searching for changes
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
110 1 changesets found
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
111 HG20\x00\x00 (esc)
34025
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
112 Stream params: {Compression: BZ}
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
113 changegroup -- {nbchanges: 1, version: 02}
26531
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
114 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
27885
2370c66110cb commands: teach debugbundle to print bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26925
diff changeset
115 bzip2-v2
26531
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
116
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
117 % test bundle type v1
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
118 searching for changes
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
119 1 changesets found
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
120 HG10BZ
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
121 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
27885
2370c66110cb commands: teach debugbundle to print bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26925
diff changeset
122 bzip2-v1
26531
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
123
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
124 % test bundle type gzip-v1
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
125 searching for changes
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
126 1 changesets found
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
127 HG10GZ
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
128 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
27885
2370c66110cb commands: teach debugbundle to print bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26925
diff changeset
129 gzip-v1
26531
15ce78517d4b bundle: extend the format of --type to support version and compression
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 26511
diff changeset
130
30758
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
131
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
132 Compression level can be adjusted for bundle2 bundles
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
133
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
134 $ hg init test-complevel
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
135 $ cd test-complevel
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
136
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
137 $ cat > file0 << EOF
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
138 > this is a file
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
139 > with some text
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
140 > and some more text
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
141 > and other content
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
142 > EOF
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
143 $ cat > file1 << EOF
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
144 > this is another file
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
145 > with some other content
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
146 > and repeated, repeated, repeated, repeated content
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
147 > EOF
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
148 $ hg -q commit -A -m initial
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
149
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
150 $ hg bundle -a -t gzip-v2 gzip-v2.hg
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
151 1 changesets found
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
152 $ f --size gzip-v2.hg
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
153 gzip-v2.hg: size=427
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
154
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
155 $ hg --config experimental.bundlecomplevel=1 bundle -a -t gzip-v2 gzip-v2-level1.hg
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
156 1 changesets found
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
157 $ f --size gzip-v2-level1.hg
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
158 gzip-v2-level1.hg: size=435
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
159
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
160 $ cd ..
76104a4899ad commands: config option to control bundle compression level
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30442
diff changeset
161
30442
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
162 #if zstd
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
163
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
164 $ for t in "zstd" "zstd-v2"; do
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
165 > testbundle $t
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
166 > done
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
167 % test bundle type zstd
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
168 searching for changes
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
169 1 changesets found
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
170 HG20\x00\x00 (esc)
34025
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
171 Stream params: {Compression: ZS}
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
172 changegroup -- {nbchanges: 1, version: 02}
30442
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
173 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
174 zstd-v2
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
175
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
176 % test bundle type zstd-v2
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
177 searching for changes
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
178 1 changesets found
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
179 HG20\x00\x00 (esc)
34025
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
180 Stream params: {Compression: ZS}
626a28f30dbd debugcommands: stabilize output of debugbundle by having a custom repr
Augie Fackler <raf@durin42.com>
parents: 31794
diff changeset
181 changegroup -- {nbchanges: 1, version: 02}
30442
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
182 c35a0f9217e65d1fdb90c936ffa7dbe679f83ddf
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
183 zstd-v2
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
184
31473
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
185
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
186 Explicit request for zstd on non-generaldelta repos
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
187
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
188 $ hg --config format.usegeneraldelta=false init nogd
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
189 $ hg -q -R nogd pull t1
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
190 $ hg -R nogd bundle -a -t zstd nogd-zstd
31474
10c0ee338535 exchange: use v2 bundles for modern compression engines (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31473
diff changeset
191 1 changesets found
31473
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
192
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
193 zstd-v1 always fails
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
194
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
195 $ hg -R tzstd bundle -a -t zstd-v1 zstd-v1
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
196 abort: compression engine zstd is not supported on v1 bundles
31794
54b1af732415 commands: update help for "bundle"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31474
diff changeset
197 (see 'hg help bundlespec' for supported values for --type)
31473
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
198 [255]
ffed3bf5cd4c exchange: reject new compression engines for v1 bundles (issue5506)
Gregory Szorc <gregory.szorc@gmail.com>
parents: 30758
diff changeset
199
30442
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
200 #else
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
201
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
202 zstd is a valid engine but isn't available
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
203
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
204 $ hg -R t1 bundle -a -t zstd irrelevant.hg
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
205 abort: compression engine zstd could not be loaded
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
206 [255]
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
207
41a8106789ca util: implement zstd compression engine
Gregory Szorc <gregory.szorc@gmail.com>
parents: 29971
diff changeset
208 #endif
6570
626cb86a6523 add compression type type parameter to bundle command
Benoit Allard <benoit@aeteurope.nl>
parents:
diff changeset
209
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
210 test garbage file
6570
626cb86a6523 add compression type type parameter to bundle command
Benoit Allard <benoit@aeteurope.nl>
parents:
diff changeset
211
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
212 $ echo garbage > bgarbage
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
213 $ hg init tgarbage
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
214 $ cd tgarbage
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
215 $ hg pull ../bgarbage
24138
eabe44ec5af5 pull: print "pulling from foo" before accessing the other repo
Thomas Arendsen Hein <thomas@intevation.de>
parents: 16427
diff changeset
216 pulling from ../bgarbage
12044
bcc7139521b7 bundlerepo: remove duplication of bundle decompressors
Matt Mackall <mpm@selenic.com>
parents: 11872
diff changeset
217 abort: ../bgarbage: not a Mercurial bundle
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12044
diff changeset
218 [255]
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
219 $ cd ..
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
220
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
221 test invalid bundle type
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
222
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
223 $ cd t1
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
224 $ hg bundle -a -t garbage ../bgarbage
26640
b13fdcc4e700 exchange: refactor bundle specification parsing
Gregory Szorc <gregory.szorc@gmail.com>
parents: 26595
diff changeset
225 abort: garbage is not a recognized bundle specification
31794
54b1af732415 commands: update help for "bundle"
Gregory Szorc <gregory.szorc@gmail.com>
parents: 31474
diff changeset
226 (see 'hg help bundlespec' for supported values for --type)
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12044
diff changeset
227 [255]
11872
bc436a97038b tests: unify test-bundle-type
Martin Geisler <mg@lazybytes.net>
parents: 7171
diff changeset
228 $ cd ..