comparison tests/test-persistent-nodemap.t @ 44336:8374b69aef75

nodemap: track the total and unused amount of data in the rawdata file We need to keep that information around: * total data will allow transaction to start appending new information without confusing other reader. * unused data will allow to detect when we should regenerate new rawdata file. Differential Revision: https://phab.mercurial-scm.org/D7889
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 15 Jan 2020 15:50:24 +0100
parents e41a164db7a9
children f7459da77f23
comparison
equal deleted inserted replaced
44335:e41a164db7a9 44336:8374b69aef75
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
19 data-unused: 0
18 $ f --size .hg/store/00changelog.n 20 $ f --size .hg/store/00changelog.n
19 .hg/store/00changelog.n: size=26 21 .hg/store/00changelog.n: size=42
20 $ f --sha256 .hg/store/00changelog-*.nd 22 $ f --sha256 .hg/store/00changelog-*.nd
21 .hg/store/00changelog-????????????????.nd: sha256=b961925120e1c9bc345c199b2cc442abc477029fdece37ef9d99cbe59c0558b7 (glob) 23 .hg/store/00changelog-????????????????.nd: sha256=b961925120e1c9bc345c199b2cc442abc477029fdece37ef9d99cbe59c0558b7 (glob)
22 $ hg debugnodemap --dump-new | f --sha256 --size 24 $ hg debugnodemap --dump-new | f --sha256 --size
23 size=122880, sha256=b961925120e1c9bc345c199b2cc442abc477029fdece37ef9d99cbe59c0558b7 25 size=122880, sha256=b961925120e1c9bc345c199b2cc442abc477029fdece37ef9d99cbe59c0558b7
24 $ hg debugnodemap --dump-disk | f --sha256 --bytes=256 --hexdump --size 26 $ hg debugnodemap --dump-disk | f --sha256 --bytes=256 --hexdump --size
48 $ hg up 50 $ hg up
49 0 files updated, 0 files merged, 0 files removed, 0 files unresolved 51 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
50 $ echo foo > foo 52 $ echo foo > foo
51 $ hg add foo 53 $ hg add foo
52 $ hg ci -m 'foo' 54 $ hg ci -m 'foo'
55
56 #if pure
53 $ hg debugnodemap --metadata 57 $ hg debugnodemap --metadata
54 uid: ???????????????? (glob) 58 uid: ???????????????? (glob)
55 tip-rev: 5001 59 tip-rev: 5001
60 data-length: 123072
61 data-unused: 192
62 #else
63 $ hg debugnodemap --metadata
64 uid: ???????????????? (glob)
65 tip-rev: 5001
66 data-length: 122880
67 data-unused: 0
68 #endif
56 $ f --size .hg/store/00changelog.n 69 $ f --size .hg/store/00changelog.n
57 .hg/store/00changelog.n: size=26 70 .hg/store/00changelog.n: size=42
58 71
59 (The pure code use the debug code that perform incremental update, the C code reencode from scratch) 72 (The pure code use the debug code that perform incremental update, the C code reencode from scratch)
60 73
61 #if pure 74 #if pure
62 $ f --sha256 .hg/store/00changelog-*.nd --size 75 $ f --sha256 .hg/store/00changelog-*.nd --size