annotate tests/test-clone-stream-revlog-split.t @ 52042:92e23ba257d1

rust-hg-cpython: add an `HgProgressBar` util This will be the entry point for all progress bars from a Python context in upcoming patches. Like the `Progress` trait, this is subject to change once we have more use cases, but this is good enough for now.
author Raphaël Gomès <rgomes@octobus.net>
date Mon, 30 Sep 2024 16:04:51 +0200
parents b8528c8bebf5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
50626
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
1 Test stream cloning while a revlog split happens
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
2 ------------------------------------------------
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
3
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
4 #testcases stream-bundle2-v2 stream-bundle2-v3
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
5
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
6 #if stream-bundle2-v3
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
7 $ cat << EOF >> $HGRCPATH
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
8 > [experimental]
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
9 > stream-v3 = yes
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
10 > EOF
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
11 #endif
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
12
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
13 setup a repository for tests
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
14 ----------------------------
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
15
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
16 $ cat >> $HGRCPATH << EOF
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
17 > [format]
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
18 > # skip compression to make it easy to trigger a split
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
19 > revlog-compression=none
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
20 > [phases]
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
21 > publish=no
50626
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
22 > EOF
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
23
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
24 $ hg init server
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
25 $ cd server
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
26 $ file="some-file"
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
27 $ printf '%20d' '1' > $file
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
28 $ hg commit -Aqma
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
29 $ printf '%1024d' '1' > $file
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
30 $ hg commit -Aqmb
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
31 $ printf '%20d' '1' > $file
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
32 $ hg commit -Aqmc
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
33
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
34 check the revlog is inline
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
35
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
36 $ f -s .hg/store/data/some-file*
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
37 .hg/store/data/some-file.i: size=1259
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
38 $ hg debug-revlog-index some-file
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
39 rev linkrev nodeid p1-nodeid p2-nodeid
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
40 0 0 ed70cecbc103 000000000000 000000000000
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
41 1 1 7241018db64c ed70cecbc103 000000000000
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
42 2 2 fa1120531cc1 7241018db64c 000000000000
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
43 $ cd ..
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
44
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
45 setup synchronisation file
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
46
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
47 $ HG_TEST_STREAM_WALKED_FILE_1="$TESTTMP/sync_file_walked_1"
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
48 $ export HG_TEST_STREAM_WALKED_FILE_1
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
49 $ HG_TEST_STREAM_WALKED_FILE_2="$TESTTMP/sync_file_walked_2"
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
50 $ export HG_TEST_STREAM_WALKED_FILE_2
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
51 $ HG_TEST_STREAM_WALKED_FILE_3="$TESTTMP/sync_file_walked_3"
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
52 $ export HG_TEST_STREAM_WALKED_FILE_3
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
53
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
54
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
55 Test stream-clone raced by a revlog-split
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
56 =========================================
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
57
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
58 Test stream-clone where the file is split right after the lock section is done
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
59
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
60 Start the server
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
61
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
62 $ hg serve -R server \
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
63 > -p $HGPORT1 -d --error errors.log --pid-file=hg.pid \
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
64 > --config extensions.stream_steps="$RUNTESTDIR/testlib/ext-stream-clone-steps.py"
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
65 $ cat hg.pid >> $DAEMON_PIDS
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
66
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
67 Start a client doing a streaming clone
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
68
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
69 $ ( \
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
70 > hg clone --debug --stream -U http://localhost:$HGPORT1 \
51955
b8528c8bebf5 tests: disable `worker.backgroundclose` to stabilize a test on Windows
Matt Harbison <matt_harbison@yahoo.com>
parents: 51906
diff changeset
71 > clone-while-split --config worker.backgroundclose=0 > client.log 2>&1; \
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
72 > touch "$HG_TEST_STREAM_WALKED_FILE_3" \
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
73 > ) &
50626
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
74
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
75 Wait for the server to be done collecting data
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
76
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
77 $ $RUNTESTDIR/testlib/wait-on-file 10 $HG_TEST_STREAM_WALKED_FILE_1
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
78
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
79 trigger a split
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
80
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
81 $ dd if=/dev/zero of=server/$file bs=1k count=128 > /dev/null 2>&1
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
82 $ hg -R server ci -m "triggering a split" --config ui.timeout.warn=-1
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
83
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
84 unlock the stream generation
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
85
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
86 $ touch $HG_TEST_STREAM_WALKED_FILE_2
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
87
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
88 wait for the client to be done cloning.
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
89
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
90 $ $RUNTESTDIR/testlib/wait-on-file 10 $HG_TEST_STREAM_WALKED_FILE_3
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
91
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
92 Check everything is fine
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
93
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
94 $ cat client.log
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
95 using http://localhost:$HGPORT1/
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
96 sending capabilities command
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
97 query 1; heads
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
98 sending batch command
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
99 streaming all changes
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
100 sending getbundle command
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
101 bundle2-input-bundle: with-transaction
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
102 bundle2-input-part: "stream2" (params: 3 mandatory) supported (stream-bundle2-v2 !)
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50641
diff changeset
103 bundle2-input-part: "stream3-exp" (params: 1 mandatory) supported (stream-bundle2-v3 !)
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
104 applying stream bundle
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
105 8 files to transfer, 2.11 KB of data (stream-bundle2-v2 no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
106 10 files to transfer, 2.29 KB of data (stream-bundle2-v2 rust !)
50706
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50641
diff changeset
107 adding [s] data/some-file.i (1.23 KB) (stream-bundle2-v2 !)
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50641
diff changeset
108 7 entries to transfer (stream-bundle2-v3 !)
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50641
diff changeset
109 adding [s] data/some-file.d (1.04 KB) (stream-bundle2-v3 !)
0452af304808 stream-clone: add a v3 version of the protocol
Arseniy Alekseyev <aalekseyev@janestreet.com>
parents: 50641
diff changeset
110 adding [s] data/some-file.i (192 bytes) (stream-bundle2-v3 !)
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
111 adding [s] phaseroots (43 bytes)
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
112 adding [s] 00manifest.i (348 bytes)
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
113 adding [s] 00changelog.n (62 bytes) (rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
114 adding [s] 00changelog-88698448.nd (128 bytes) (rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
115 adding [s] 00changelog.d (189 bytes)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
116 adding [s] 00changelog.i (192 bytes)
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
117 adding [c] branch2-served (94 bytes)
51906
0f26ee69cf36 rev-branch-cache: increment the version to "v2"
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51181
diff changeset
118 adding [c] rbc-names-v2 (7 bytes)
0f26ee69cf36 rev-branch-cache: increment the version to "v2"
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 51181
diff changeset
119 adding [c] rbc-revs-v2 (24 bytes)
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
120 updating the branch cache
51181
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
121 transferred 2.11 KB in * seconds (* */sec) (glob) (no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
122 transferred 2.29 KB in * seconds (* */sec) (glob) (rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
123 bundle2-input-part: total payload size 2285 (stream-bundle2-v2 no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
124 bundle2-input-part: total payload size 2518 (stream-bundle2-v2 rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
125 bundle2-input-part: total payload size 2313 (stream-bundle2-v3 no-rust !)
dcaa2df1f688 changelog: never inline changelog
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50706
diff changeset
126 bundle2-input-part: total payload size 2546 (stream-bundle2-v3 rust !)
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
127 bundle2-input-part: "listkeys" (params: 1 mandatory) supported
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
128 bundle2-input-bundle: 2 parts total
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
129 checking for updated bookmarks
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
130 updating the branch cache
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
131 (sent 3 HTTP requests and * bytes; received * bytes in responses) (glob)
50626
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
132 $ tail -2 errors.log
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
133 $ hg -R clone-while-split verify
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
134 checking changesets
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
135 checking manifests
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
136 crosschecking files in changesets and manifests
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
137 checking files
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
138 checking dirstate
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
139 checked 3 changesets with 3 changes to 1 files
50626
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
140 $ hg -R clone-while-split tip
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
141 changeset: 2:dbd9854c38a6
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
142 tag: tip
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
143 user: test
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
144 date: Thu Jan 01 00:00:00 1970 +0000
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
145 summary: c
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
146
50626
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
147 $ hg -R clone-while-split debug-revlog-index some-file
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
148 rev linkrev nodeid p1-nodeid p2-nodeid
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
149 0 0 ed70cecbc103 000000000000 000000000000
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
150 1 1 7241018db64c ed70cecbc103 000000000000
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
151 2 2 fa1120531cc1 7241018db64c 000000000000
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
152 $ hg -R server phase --rev 'all()'
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
153 0: draft
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
154 1: draft
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
155 2: draft
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
156 3: draft
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
157 $ hg -R clone-while-split phase --rev 'all()'
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
158 0: draft
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
159 1: draft
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
160 2: draft
50626
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
161
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
162 subsequent pull work
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
163
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
164 $ hg -R clone-while-split pull
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
165 pulling from http://localhost:$HGPORT1/
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
166 searching for changes
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
167 adding changesets
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
168 adding manifests
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
169 adding file changes
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
170 added 1 changesets with 1 changes to 1 files
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
171 new changesets df05c6cb1406 (1 drafts)
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
172 (run 'hg update' to get a working copy)
50626
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
173
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
174 $ hg -R clone-while-split debug-revlog-index some-file
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
175 rev linkrev nodeid p1-nodeid p2-nodeid
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
176 0 0 ed70cecbc103 000000000000 000000000000
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
177 1 1 7241018db64c ed70cecbc103 000000000000
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
178 2 2 fa1120531cc1 7241018db64c 000000000000
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
179 3 3 a631378adaa3 fa1120531cc1 000000000000
50626
9b0fe2b075b5 stream-clone: add a test that highlight crash on revlog splitting
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff changeset
180 $ hg -R clone-while-split verify
50641
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
181 checking changesets
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
182 checking manifests
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
183 crosschecking files in changesets and manifests
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
184 checking files
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
185 checking dirstate
5460424092e2 stream-clone: smoothly detect and handle a case were a revlog is split
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 50640
diff changeset
186 checked 4 changesets with 4 changes to 1 files