annotate tests/test-revlog-mmapindex.t @ 50404:64cdd80d6909

branching: merge stable into default
author Raphaël Gomès <rgomes@octobus.net>
date Fri, 24 Mar 2023 10:43:47 +0100
parents 42d2b31cee0b
children dcaa2df1f688
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
34296
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
1 create verbosemmap.py
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
2 $ cat << EOF > verbosemmap.py
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
3 > # extension to make util.mmapread verbose
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
4 >
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
5 >
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
6 > from mercurial import (
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
7 > extensions,
35404
6ebe899b6551 py3: pass bytes from extension to ui.write() in test-revlog-mmapindex.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35393
diff changeset
8 > pycompat,
34296
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
9 > util,
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
10 > )
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
11 >
34446
b0c97e44576f test-revlog-mmapindex: make it compatible with chg
Jun Wu <quark@fb.com>
parents: 34296
diff changeset
12 > def extsetup(ui):
b0c97e44576f test-revlog-mmapindex: make it compatible with chg
Jun Wu <quark@fb.com>
parents: 34296
diff changeset
13 > def mmapread(orig, fp):
35404
6ebe899b6551 py3: pass bytes from extension to ui.write() in test-revlog-mmapindex.t
Pulkit Goyal <7895pulkit@gmail.com>
parents: 35393
diff changeset
14 > ui.write(b"mmapping %s\n" % pycompat.bytestr(fp.name))
34446
b0c97e44576f test-revlog-mmapindex: make it compatible with chg
Jun Wu <quark@fb.com>
parents: 34296
diff changeset
15 > ui.flush()
b0c97e44576f test-revlog-mmapindex: make it compatible with chg
Jun Wu <quark@fb.com>
parents: 34296
diff changeset
16 > return orig(fp)
34296
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
17 >
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
18 > extensions.wrapfunction(util, 'mmapread', mmapread)
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
19 > EOF
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
20
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
21 setting up base repo
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
22 $ hg init a
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
23 $ cd a
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
24 $ touch a
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
25 $ hg add a
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
26 $ hg commit -qm base
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
27 $ for i in `$TESTDIR/seq.py 1 100` ; do
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
28 > echo $i > a
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
29 > hg commit -qm $i
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
30 > done
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
31
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
32 set up verbosemmap extension
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
33 $ cat << EOF >> $HGRCPATH
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
34 > [extensions]
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
35 > verbosemmap=$TESTTMP/verbosemmap.py
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
36 > EOF
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
37
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
38 mmap index which is now more than 4k long
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
39 $ hg log -l 5 -T '{rev}\n' --config experimental.mmapindexthreshold=4k
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 34446
diff changeset
40 mmapping $TESTTMP/a/.hg/store/00changelog.i
34296
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
41 100
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
42 99
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
43 98
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
44 97
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
45 96
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
46
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
47 do not mmap index which is still less than 32k
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
48 $ hg log -l 5 -T '{rev}\n' --config experimental.mmapindexthreshold=32k
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
49 100
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
50 99
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
51 98
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
52 97
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
53 96
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
54
3c9691728237 revlog: add option to mmap revlog index
Mark Thomas <mbthomas@fb.com>
parents:
diff changeset
55 $ cd ..