##// END OF EJS Templates
nodemap: check that a simple lookup works fine...
marmoute -
r44954:23df5ecf default
parent child Browse files
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 $ hg up
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 $ hg debugnodemap --metadata
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 $ hg debugnodemap --metadata
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 $ f --size .hg/store/00changelog.n
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 $ f --sha256 .hg/store/00changelog-*.nd --size
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 $ f --sha256 .hg/store/00changelog-*.nd --size
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 $ hg debugnodemap --check --config experimental.exp-persistent-nodemap.mmap=no
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 $ hg debugnodemap --metadata
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 $ f --sha256 .hg/store/00changelog-*.nd --size
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 $ hg debugnodemap --metadata
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 $ f --sha256 .hg/store/00changelog-*.nd --size
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 $ hg debugnodemap --metadata
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