Show More
@@ -1,139 +1,146 b'' | |||||
1 | =================================== |
|
1 | =================================== | |
2 | Test the persistent on-disk nodemap |
|
2 | Test the persistent on-disk nodemap | |
3 | =================================== |
|
3 | =================================== | |
4 |
|
4 | |||
5 |
|
5 | |||
6 | $ hg init test-repo |
|
6 | $ hg init test-repo | |
7 | $ cd test-repo |
|
7 | $ cd test-repo | |
8 | $ cat << EOF >> .hg/hgrc |
|
8 | $ cat << EOF >> .hg/hgrc | |
9 | > [experimental] |
|
9 | > [experimental] | |
10 | > exp-persistent-nodemap=yes |
|
10 | > exp-persistent-nodemap=yes | |
11 | > [devel] |
|
11 | > [devel] | |
12 | > persistent-nodemap=yes |
|
12 | > persistent-nodemap=yes | |
13 | > EOF |
|
13 | > EOF | |
14 | $ hg debugbuilddag .+5000 |
|
14 | $ hg debugbuilddag .+5000 | |
15 | $ hg debugnodemap --metadata |
|
15 | $ hg debugnodemap --metadata | |
16 | uid: ???????????????? (glob) |
|
16 | uid: ???????????????? (glob) | |
17 | tip-rev: 5000 |
|
17 | tip-rev: 5000 | |
18 | data-length: 122880 |
|
18 | data-length: 122880 | |
19 | data-unused: 0 |
|
19 | data-unused: 0 | |
20 | $ f --size .hg/store/00changelog.n |
|
20 | $ f --size .hg/store/00changelog.n | |
21 | .hg/store/00changelog.n: size=42 |
|
21 | .hg/store/00changelog.n: size=42 | |
|
22 | ||||
|
23 | Simple lookup works | |||
|
24 | ||||
|
25 | $ ANYNODE=`hg log --template '{node|short}\n' --rev tip` | |||
|
26 | $ hg log -r "$ANYNODE" --template '{rev}\n' | |||
|
27 | 5000 | |||
|
28 | ||||
22 | $ f --sha256 .hg/store/00changelog-*.nd |
|
29 | $ f --sha256 .hg/store/00changelog-*.nd | |
23 | .hg/store/00changelog-????????????????.nd: sha256=b961925120e1c9bc345c199b2cc442abc477029fdece37ef9d99cbe59c0558b7 (glob) |
|
30 | .hg/store/00changelog-????????????????.nd: sha256=b961925120e1c9bc345c199b2cc442abc477029fdece37ef9d99cbe59c0558b7 (glob) | |
24 | $ hg debugnodemap --dump-new | f --sha256 --size |
|
31 | $ hg debugnodemap --dump-new | f --sha256 --size | |
25 | size=122880, sha256=b961925120e1c9bc345c199b2cc442abc477029fdece37ef9d99cbe59c0558b7 |
|
32 | size=122880, sha256=b961925120e1c9bc345c199b2cc442abc477029fdece37ef9d99cbe59c0558b7 | |
26 | $ hg debugnodemap --dump-disk | f --sha256 --bytes=256 --hexdump --size |
|
33 | $ hg debugnodemap --dump-disk | f --sha256 --bytes=256 --hexdump --size | |
27 | size=122880, sha256=b961925120e1c9bc345c199b2cc442abc477029fdece37ef9d99cbe59c0558b7 |
|
34 | size=122880, sha256=b961925120e1c9bc345c199b2cc442abc477029fdece37ef9d99cbe59c0558b7 | |
28 | 0000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| |
|
35 | 0000: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| | |
29 | 0010: ff ff ff ff ff ff ff ff ff ff fa c2 ff ff ff ff |................| |
|
36 | 0010: ff ff ff ff ff ff ff ff ff ff fa c2 ff ff ff ff |................| | |
30 | 0020: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| |
|
37 | 0020: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| | |
31 | 0030: ff ff ff ff ff ff ed b3 ff ff ff ff ff ff ff ff |................| |
|
38 | 0030: ff ff ff ff ff ff ed b3 ff ff ff ff ff ff ff ff |................| | |
32 | 0040: ff ff ff ff ff ff ee 34 00 00 00 00 ff ff ff ff |.......4........| |
|
39 | 0040: ff ff ff ff ff ff ee 34 00 00 00 00 ff ff ff ff |.......4........| | |
33 | 0050: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| |
|
40 | 0050: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| | |
34 | 0060: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| |
|
41 | 0060: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| | |
35 | 0070: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| |
|
42 | 0070: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| | |
36 | 0080: ff ff ff ff ff ff f8 50 ff ff ff ff ff ff ff ff |.......P........| |
|
43 | 0080: ff ff ff ff ff ff f8 50 ff ff ff ff ff ff ff ff |.......P........| | |
37 | 0090: ff ff ff ff ff ff ff ff ff ff ec c7 ff ff ff ff |................| |
|
44 | 0090: ff ff ff ff ff ff ff ff ff ff ec c7 ff ff ff ff |................| | |
38 | 00a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| |
|
45 | 00a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| | |
39 | 00b0: ff ff ff ff ff ff fa be ff ff f2 fc ff ff ff ff |................| |
|
46 | 00b0: ff ff ff ff ff ff fa be ff ff f2 fc ff ff ff ff |................| | |
40 |
00c0: ff ff ff ff ff ff ef ea ff ff ff ff ff ff f9 17 | |
|
47 | 00c0: ff ff ff ff ff ff ef ea ff ff ff ff ff ff f9 17 |................| | |
41 | 00d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| |
|
48 | 00d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| | |
42 | 00e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| |
|
49 | 00e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| | |
43 | 00f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| |
|
50 | 00f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................| | |
44 | $ hg debugnodemap --check |
|
51 | $ hg debugnodemap --check | |
45 | revision in index: 5001 |
|
52 | revision in index: 5001 | |
46 | revision in nodemap: 5001 |
|
53 | revision in nodemap: 5001 | |
47 |
|
54 | |||
48 | add a new commit |
|
55 | add a new commit | |
49 |
|
56 | |||
50 |
$ |
|
57 | $ hg up | |
51 | 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
58 | 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
52 | $ echo foo > foo |
|
59 | $ echo foo > foo | |
53 | $ hg add foo |
|
60 | $ hg add foo | |
54 | $ hg ci -m 'foo' |
|
61 | $ hg ci -m 'foo' | |
55 |
|
62 | |||
56 | #if pure |
|
63 | #if pure | |
57 |
$ |
|
64 | $ hg debugnodemap --metadata | |
58 | uid: ???????????????? (glob) |
|
65 | uid: ???????????????? (glob) | |
59 | tip-rev: 5001 |
|
66 | tip-rev: 5001 | |
60 | data-length: 123072 |
|
67 | data-length: 123072 | |
61 | data-unused: 192 |
|
68 | data-unused: 192 | |
62 | #else |
|
69 | #else | |
63 |
$ |
|
70 | $ hg debugnodemap --metadata | |
64 | uid: ???????????????? (glob) |
|
71 | uid: ???????????????? (glob) | |
65 | tip-rev: 5001 |
|
72 | tip-rev: 5001 | |
66 | data-length: 122880 |
|
73 | data-length: 122880 | |
67 | data-unused: 0 |
|
74 | data-unused: 0 | |
68 | #endif |
|
75 | #endif | |
69 |
$ |
|
76 | $ f --size .hg/store/00changelog.n | |
70 | .hg/store/00changelog.n: size=42 |
|
77 | .hg/store/00changelog.n: size=42 | |
71 |
|
78 | |||
72 | (The pure code use the debug code that perform incremental update, the C code reencode from scratch) |
|
79 | (The pure code use the debug code that perform incremental update, the C code reencode from scratch) | |
73 |
|
80 | |||
74 | #if pure |
|
81 | #if pure | |
75 |
$ |
|
82 | $ f --sha256 .hg/store/00changelog-*.nd --size | |
76 | .hg/store/00changelog-????????????????.nd: size=123072, sha256=136472751566c8198ff09e306a7d2f9bd18bd32298d614752b73da4d6df23340 (glob) |
|
83 | .hg/store/00changelog-????????????????.nd: size=123072, sha256=136472751566c8198ff09e306a7d2f9bd18bd32298d614752b73da4d6df23340 (glob) | |
77 |
|
84 | |||
78 | #else |
|
85 | #else | |
79 |
$ |
|
86 | $ f --sha256 .hg/store/00changelog-*.nd --size | |
80 | .hg/store/00changelog-????????????????.nd: size=122880, sha256=bfafebd751c4f6d116a76a37a1dee2a251747affe7efbcc4f4842ccc746d4db9 (glob) |
|
87 | .hg/store/00changelog-????????????????.nd: size=122880, sha256=bfafebd751c4f6d116a76a37a1dee2a251747affe7efbcc4f4842ccc746d4db9 (glob) | |
81 |
|
88 | |||
82 | #endif |
|
89 | #endif | |
83 |
|
90 | |||
84 | $ hg debugnodemap --check |
|
91 | $ hg debugnodemap --check | |
85 | revision in index: 5002 |
|
92 | revision in index: 5002 | |
86 | revision in nodemap: 5002 |
|
93 | revision in nodemap: 5002 | |
87 |
|
94 | |||
88 | Test code path without mmap |
|
95 | Test code path without mmap | |
89 | --------------------------- |
|
96 | --------------------------- | |
90 |
|
97 | |||
91 | $ echo bar > bar |
|
98 | $ echo bar > bar | |
92 | $ hg add bar |
|
99 | $ hg add bar | |
93 | $ hg ci -m 'bar' --config experimental.exp-persistent-nodemap.mmap=no |
|
100 | $ hg ci -m 'bar' --config experimental.exp-persistent-nodemap.mmap=no | |
94 |
|
101 | |||
95 | $ hg debugnodemap --check --config experimental.exp-persistent-nodemap.mmap=yes |
|
102 | $ hg debugnodemap --check --config experimental.exp-persistent-nodemap.mmap=yes | |
96 | revision in index: 5003 |
|
103 | revision in index: 5003 | |
97 | revision in nodemap: 5003 |
|
104 | revision in nodemap: 5003 | |
98 |
$ |
|
105 | $ hg debugnodemap --check --config experimental.exp-persistent-nodemap.mmap=no | |
99 | revision in index: 5003 |
|
106 | revision in index: 5003 | |
100 | revision in nodemap: 5003 |
|
107 | revision in nodemap: 5003 | |
101 |
|
108 | |||
102 |
|
109 | |||
103 | #if pure |
|
110 | #if pure | |
104 |
$ |
|
111 | $ hg debugnodemap --metadata | |
105 | uid: ???????????????? (glob) |
|
112 | uid: ???????????????? (glob) | |
106 | tip-rev: 5002 |
|
113 | tip-rev: 5002 | |
107 | data-length: 123328 |
|
114 | data-length: 123328 | |
108 | data-unused: 384 |
|
115 | data-unused: 384 | |
109 |
$ |
|
116 | $ f --sha256 .hg/store/00changelog-*.nd --size | |
110 | .hg/store/00changelog-????????????????.nd: size=123328, sha256=10d26e9776b6596af0f89143a54eba8cc581e929c38242a02a7b0760698c6c70 (glob) |
|
117 | .hg/store/00changelog-????????????????.nd: size=123328, sha256=10d26e9776b6596af0f89143a54eba8cc581e929c38242a02a7b0760698c6c70 (glob) | |
111 |
|
118 | |||
112 | #else |
|
119 | #else | |
113 |
$ |
|
120 | $ hg debugnodemap --metadata | |
114 | uid: ???????????????? (glob) |
|
121 | uid: ???????????????? (glob) | |
115 | tip-rev: 5002 |
|
122 | tip-rev: 5002 | |
116 | data-length: 122944 |
|
123 | data-length: 122944 | |
117 | data-unused: 0 |
|
124 | data-unused: 0 | |
118 |
$ |
|
125 | $ f --sha256 .hg/store/00changelog-*.nd --size | |
119 | .hg/store/00changelog-????????????????.nd: size=122944, sha256=755976b22b64ab680401b45395953504e64e7fa8c31ac570f58dee21e15f9bc0 (glob) |
|
126 | .hg/store/00changelog-????????????????.nd: size=122944, sha256=755976b22b64ab680401b45395953504e64e7fa8c31ac570f58dee21e15f9bc0 (glob) | |
120 | #endif |
|
127 | #endif | |
121 |
|
128 | |||
122 | Test force warming the cache |
|
129 | Test force warming the cache | |
123 |
|
130 | |||
124 | $ rm .hg/store/00changelog.n |
|
131 | $ rm .hg/store/00changelog.n | |
125 | $ hg debugnodemap --metadata |
|
132 | $ hg debugnodemap --metadata | |
126 | $ hg debugupdatecache |
|
133 | $ hg debugupdatecache | |
127 | #if pure |
|
134 | #if pure | |
128 | $ hg debugnodemap --metadata |
|
135 | $ hg debugnodemap --metadata | |
129 | uid: ???????????????? (glob) |
|
136 | uid: ???????????????? (glob) | |
130 | tip-rev: 5002 |
|
137 | tip-rev: 5002 | |
131 | data-length: 122944 |
|
138 | data-length: 122944 | |
132 | data-unused: 0 |
|
139 | data-unused: 0 | |
133 | #else |
|
140 | #else | |
134 |
$ |
|
141 | $ hg debugnodemap --metadata | |
135 | uid: ???????????????? (glob) |
|
142 | uid: ???????????????? (glob) | |
136 | tip-rev: 5002 |
|
143 | tip-rev: 5002 | |
137 | data-length: 122944 |
|
144 | data-length: 122944 | |
138 | data-unused: 0 |
|
145 | data-unused: 0 | |
139 | #endif |
|
146 | #endif |
General Comments 0
You need to be logged in to leave comments.
Login now