author | Pierre-Yves David <pierre-yves.david@octobus.net> |
Tue, 23 May 2023 10:18:01 +0200 | |
changeset 50708 | 999b710d48d2 |
child 50709 | 517fcefe8a39 |
permissions | -rw-r--r-- |
50708
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
1 |
======================================================= |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
2 |
Test the persistent on-disk nodemap during stream-clone |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
3 |
======================================================= |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
4 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
5 |
Setup |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
6 |
===== |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
7 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
8 |
#if no-rust |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
9 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
10 |
$ cat << EOF >> $HGRCPATH |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
11 |
> [format] |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
12 |
> use-persistent-nodemap=yes |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
13 |
> [devel] |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
14 |
> persistent-nodemap=yes |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
15 |
> [storage] |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
16 |
> # to avoid spamming the test |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
17 |
> revlog.persistent-nodemap.slow-path=allow |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
18 |
> EOF |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
19 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
20 |
#endif |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
21 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
22 |
Recreate the same repo as in `test-persistent-nodemap.t` |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
23 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
24 |
$ hg init test-repo --config storage.revlog.persistent-nodemap.slow-path=allow |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
25 |
$ hg -R test-repo debugbuilddag .+5000 --new-file |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
26 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
27 |
stream clone |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
28 |
============ |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
29 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
30 |
The persistent nodemap should exist after a streaming clone |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
31 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
32 |
Simple case |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
33 |
----------- |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
34 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
35 |
No race condition |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
36 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
37 |
$ hg clone -U --stream ssh://user@dummy/test-repo stream-clone --debug | egrep '00(changelog|manifest)' |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
38 |
adding [s] 00manifest.n (62 bytes) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
39 |
adding [s] 00manifest-*.nd (118 KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
40 |
adding [s] 00manifest.d (4?? KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
41 |
adding [s] 00manifest.i (313 KB) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
42 |
adding [s] 00changelog.n (62 bytes) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
43 |
adding [s] 00changelog-*.nd (118 KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
44 |
adding [s] 00changelog.d (3?? KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
45 |
adding [s] 00changelog.i (313 KB) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
46 |
$ ls -1 stream-clone/.hg/store/ | egrep '00(changelog|manifest)(\.n|-.*\.nd)' |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
47 |
00changelog-*.nd (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
48 |
00changelog.n |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
49 |
00manifest-*.nd (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
50 |
00manifest.n |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
51 |
$ hg -R stream-clone debugnodemap --metadata |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
52 |
uid: * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
53 |
tip-rev: 5000 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
54 |
tip-node: 6b02b8c7b96654c25e86ba69eda198d7e6ad8b3c |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
55 |
data-length: 121088 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
56 |
data-unused: 0 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
57 |
data-unused: 0.000% |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
58 |
$ hg verify -R stream-clone |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
59 |
checking changesets |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
60 |
checking manifests |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
61 |
crosschecking files in changesets and manifests |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
62 |
checking files |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
63 |
checking dirstate |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
64 |
checked 5001 changesets with 5001 changes to 5001 files |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
65 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
66 |
new data appened |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
67 |
----------------- |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
68 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
69 |
Other commit happening on the server during the stream clone |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
70 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
71 |
setup the step-by-step stream cloning |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
72 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
73 |
$ HG_TEST_STREAM_WALKED_FILE_1="$TESTTMP/sync_file_walked_1" |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
74 |
$ export HG_TEST_STREAM_WALKED_FILE_1 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
75 |
$ HG_TEST_STREAM_WALKED_FILE_2="$TESTTMP/sync_file_walked_2" |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
76 |
$ export HG_TEST_STREAM_WALKED_FILE_2 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
77 |
$ HG_TEST_STREAM_WALKED_FILE_3="$TESTTMP/sync_file_walked_3" |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
78 |
$ export HG_TEST_STREAM_WALKED_FILE_3 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
79 |
$ cat << EOF >> test-repo/.hg/hgrc |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
80 |
> [extensions] |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
81 |
> steps=$RUNTESTDIR/testlib/ext-stream-clone-steps.py |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
82 |
> EOF |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
83 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
84 |
Check and record file state beforehand |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
85 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
86 |
$ f --size test-repo/.hg/store/00changelog* |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
87 |
test-repo/.hg/store/00changelog-*.nd: size=121088 (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
88 |
test-repo/.hg/store/00changelog.d: size=3????? (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
89 |
test-repo/.hg/store/00changelog.i: size=320064 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
90 |
test-repo/.hg/store/00changelog.n: size=62 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
91 |
$ hg -R test-repo debugnodemap --metadata | tee server-metadata.txt |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
92 |
uid: * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
93 |
tip-rev: 5000 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
94 |
tip-node: 6b02b8c7b96654c25e86ba69eda198d7e6ad8b3c |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
95 |
data-length: 121088 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
96 |
data-unused: 0 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
97 |
data-unused: 0.000% |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
98 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
99 |
Prepare a commit |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
100 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
101 |
$ echo foo >> test-repo/foo |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
102 |
$ hg -R test-repo/ add test-repo/foo |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
103 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
104 |
Do a mix of clone and commit at the same time so that the file listed on disk differ at actual transfer time. |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
105 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
106 |
$ (hg clone -U --stream ssh://user@dummy/test-repo stream-clone-race-1 --debug 2>> clone-output | egrep '00(changelog|manifest)' >> clone-output; touch $HG_TEST_STREAM_WALKED_FILE_3) & |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
107 |
$ $RUNTESTDIR/testlib/wait-on-file 10 $HG_TEST_STREAM_WALKED_FILE_1 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
108 |
$ hg -R test-repo/ commit -m foo |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
109 |
created new head |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
110 |
$ touch $HG_TEST_STREAM_WALKED_FILE_2 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
111 |
$ $RUNTESTDIR/testlib/wait-on-file 10 $HG_TEST_STREAM_WALKED_FILE_3 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
112 |
$ cat clone-output |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
113 |
adding [s] 00manifest.n (62 bytes) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
114 |
adding [s] 00manifest-*.nd (118 KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
115 |
adding [s] 00manifest.d (4?? KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
116 |
adding [s] 00manifest.i (313 KB) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
117 |
adding [s] 00changelog.n (62 bytes) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
118 |
adding [s] 00changelog-*.nd (118 KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
119 |
adding [s] 00changelog.d (36? KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
120 |
adding [s] 00changelog.i (313 KB) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
121 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
122 |
Check the result state |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
123 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
124 |
$ f --size stream-clone-race-1/.hg/store/00changelog* |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
125 |
stream-clone-race-1/.hg/store/00changelog-*.nd: size=121088 (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
126 |
stream-clone-race-1/.hg/store/00changelog.d: size=3????? (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
127 |
stream-clone-race-1/.hg/store/00changelog.i: size=320064 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
128 |
stream-clone-race-1/.hg/store/00changelog.n: size=62 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
129 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
130 |
$ hg -R stream-clone-race-1 debugnodemap --metadata | tee client-metadata.txt |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
131 |
uid: * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
132 |
tip-rev: 5000 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
133 |
tip-node: 6b02b8c7b96654c25e86ba69eda198d7e6ad8b3c |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
134 |
data-length: 121088 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
135 |
data-unused: 0 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
136 |
data-unused: 0.000% |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
137 |
$ hg verify -R stream-clone-race-1 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
138 |
checking changesets |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
139 |
checking manifests |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
140 |
crosschecking files in changesets and manifests |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
141 |
checking files |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
142 |
checking dirstate |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
143 |
checked 5001 changesets with 5001 changes to 5001 files |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
144 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
145 |
We get a usable nodemap, so no rewrite would be needed and the metadata should be identical |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
146 |
(ie: the following diff should be empty) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
147 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
148 |
This isn't the case for the `no-rust` `no-pure` implementation as it use a very minimal nodemap implementation that unconditionnaly rewrite the nodemap "all the time". |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
149 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
150 |
#if no-rust no-pure |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
151 |
$ diff -u server-metadata.txt client-metadata.txt |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
152 |
--- server-metadata.txt * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
153 |
+++ client-metadata.txt * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
154 |
@@ -1,4 +1,4 @@ |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
155 |
-uid: * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
156 |
+uid: * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
157 |
tip-rev: 5000 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
158 |
tip-node: 6b02b8c7b96654c25e86ba69eda198d7e6ad8b3c |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
159 |
data-length: 121088 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
160 |
[1] |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
161 |
#else |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
162 |
$ diff -u server-metadata.txt client-metadata.txt |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
163 |
#endif |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
164 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
165 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
166 |
Clean up after the test. |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
167 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
168 |
$ rm -f "$HG_TEST_STREAM_WALKED_FILE_1" |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
169 |
$ rm -f "$HG_TEST_STREAM_WALKED_FILE_2" |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
170 |
$ rm -f "$HG_TEST_STREAM_WALKED_FILE_3" |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
171 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
172 |
full regeneration |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
173 |
----------------- |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
174 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
175 |
A full nodemap is generated |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
176 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
177 |
(ideally this test would append enough data to make sure the nodemap data file |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
178 |
get changed, however to make thing simpler we will force the regeneration for |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
179 |
this test. |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
180 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
181 |
Check the initial state |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
182 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
183 |
$ f --size test-repo/.hg/store/00changelog* |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
184 |
test-repo/.hg/store/00changelog-*.nd: size=121??? (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
185 |
test-repo/.hg/store/00changelog.d: size=3????? (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
186 |
test-repo/.hg/store/00changelog.i: size=320128 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
187 |
test-repo/.hg/store/00changelog.n: size=62 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
188 |
$ hg -R test-repo debugnodemap --metadata | tee server-metadata-2.txt |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
189 |
uid: * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
190 |
tip-rev: 5001 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
191 |
tip-node: e63c23eaa88ae77967edcf4ea194d31167c478b0 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
192 |
data-length: 121408 (pure !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
193 |
data-unused: 256 (pure !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
194 |
data-unused: 0.211% (pure !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
195 |
data-length: 121408 (rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
196 |
data-unused: 256 (rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
197 |
data-unused: 0.211% (rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
198 |
data-length: 121152 (no-pure no-rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
199 |
data-unused: 0 (no-pure no-rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
200 |
data-unused: 0.000% (no-pure no-rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
201 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
202 |
Performe the mix of clone and full refresh of the nodemap, so that the files |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
203 |
(and filenames) are different between listing time and actual transfer time. |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
204 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
205 |
$ (hg clone -U --stream ssh://user@dummy/test-repo stream-clone-race-2 --debug 2>> clone-output-2 | egrep '00(changelog|manifest)' >> clone-output-2; touch $HG_TEST_STREAM_WALKED_FILE_3) & |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
206 |
$ $RUNTESTDIR/testlib/wait-on-file 10 $HG_TEST_STREAM_WALKED_FILE_1 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
207 |
$ rm test-repo/.hg/store/00changelog.n |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
208 |
$ rm test-repo/.hg/store/00changelog-*.nd |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
209 |
$ hg -R test-repo/ debugupdatecache |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
210 |
$ touch $HG_TEST_STREAM_WALKED_FILE_2 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
211 |
$ $RUNTESTDIR/testlib/wait-on-file 10 $HG_TEST_STREAM_WALKED_FILE_3 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
212 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
213 |
(note: the stream clone code wronly pick the `undo.` files) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
214 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
215 |
$ cat clone-output-2 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
216 |
adding [s] 00manifest.n (62 bytes) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
217 |
adding [s] 00manifest-*.nd (118 KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
218 |
adding [s] 00manifest.d (4?? KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
219 |
adding [s] 00manifest.i (313 KB) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
220 |
adding [s] 00changelog.n (62 bytes) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
221 |
adding [s] 00changelog-*.nd (11? KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
222 |
adding [s] 00changelog.d (3?? KB) (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
223 |
adding [s] 00changelog.i (313 KB) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
224 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
225 |
Check the result. |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
226 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
227 |
$ f --size stream-clone-race-2/.hg/store/00changelog* |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
228 |
stream-clone-race-2/.hg/store/00changelog-*.nd: size=1????? (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
229 |
stream-clone-race-2/.hg/store/00changelog.d: size=3????? (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
230 |
stream-clone-race-2/.hg/store/00changelog.i: size=320128 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
231 |
stream-clone-race-2/.hg/store/00changelog.n: size=62 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
232 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
233 |
$ hg -R stream-clone-race-2 debugnodemap --metadata | tee client-metadata-2.txt |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
234 |
uid: * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
235 |
tip-rev: 5001 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
236 |
tip-node: e63c23eaa88ae77967edcf4ea194d31167c478b0 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
237 |
data-length: 121408 (pure !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
238 |
data-unused: 256 (pure !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
239 |
data-unused: 0.211% (pure !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
240 |
data-length: 121408 (rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
241 |
data-unused: 256 (rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
242 |
data-unused: 0.211% (rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
243 |
data-length: 121152 (no-pure no-rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
244 |
data-unused: 0 (no-pure no-rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
245 |
data-unused: 0.000% (no-pure no-rust !) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
246 |
$ hg verify -R stream-clone-race-2 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
247 |
checking changesets |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
248 |
checking manifests |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
249 |
crosschecking files in changesets and manifests |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
250 |
checking files |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
251 |
checking dirstate |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
252 |
checked 5002 changesets with 5002 changes to 5002 files |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
253 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
254 |
We get a usable nodemap, so no rewrite would be needed and the metadata should be identical |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
255 |
(ie: the following diff should be empty) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
256 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
257 |
This isn't the case for the `no-rust` `no-pure` implementation as it use a very minimal nodemap implementation that unconditionnaly rewrite the nodemap "all the time". |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
258 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
259 |
#if no-rust no-pure |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
260 |
$ diff -u server-metadata-2.txt client-metadata-2.txt |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
261 |
--- server-metadata-2.txt * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
262 |
+++ client-metadata-2.txt * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
263 |
@@ -1,4 +1,4 @@ |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
264 |
-uid: * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
265 |
+uid: * (glob) |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
266 |
tip-rev: 5001 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
267 |
tip-node: e63c23eaa88ae77967edcf4ea194d31167c478b0 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
268 |
data-length: 121152 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
269 |
[1] |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
270 |
#else |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
271 |
$ diff -u server-metadata-2.txt client-metadata-2.txt |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
272 |
#endif |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
273 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
274 |
Clean up after the test |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
275 |
|
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
276 |
$ rm -f $HG_TEST_STREAM_WALKED_FILE_1 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
277 |
$ rm -f $HG_TEST_STREAM_WALKED_FILE_2 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
278 |
$ rm -f $HG_TEST_STREAM_WALKED_FILE_3 |
999b710d48d2
stream-clone: split the stream part out of test-persistent-nodemap.t
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
diff
changeset
|
279 |