annotate tests/test-obsolete-tag-cache.t @ 28205:53f42c8d5f71

verify: show progress while verifying dirlogs In repos with treemanifests, the non-root-directory dirlogs often have many more total revisions than the root manifest log has. This change adds progress out to that part of 'hg verify'. Since the verification is recursive along the directory tree, we don't know how many total revisions there are at the beginning of the command, so instead we report progress in units of directories, much like we report progress for verification of files today. I'm not very happy with passing both 'storefiles' and 'progress' into the recursive calls. I tried passing in just a 'visitdir(dir)' callback, but the results did not seem better overall. I'm happy to update if anyone has better ideas.
author Martin von Zweigbergk <martinvonz@google.com>
date Thu, 11 Feb 2016 15:38:56 -0800
parents ab6468270b83
children e8ad56d95fbb
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
24144
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
1 $ cat >> $HGRCPATH << EOF
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
2 > [extensions]
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
3 > blackbox=
24144
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
4 > rebase=
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
5 > mock=$TESTDIR/mockblackbox.py
24144
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
6 >
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
7 > [experimental]
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
8 > evolution = createmarkers
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
9 > EOF
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
10
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
11 Create a repo with some tags
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
12
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
13 $ hg init repo
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
14 $ cd repo
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
15 $ echo initial > foo
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
16 $ hg -q commit -A -m initial
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
17 $ hg tag -m 'test tag' test1
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
18 $ echo first > first
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
19 $ hg -q commit -A -m first
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
20 $ hg tag -m 'test2 tag' test2
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
21 $ hg -q up -r 0
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
22 $ echo newhead > newhead
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
23 $ hg commit -A -m newhead
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
24 adding newhead
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
25 created new head
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
26 $ hg tag -m 'test head 2 tag' head2
24144
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
27
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
28 $ hg log -G -T '{rev}:{node|short} {tags} {desc}\n'
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
29 @ 5:2942a772f72a tip test head 2 tag
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
30 |
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
31 o 4:042eb6bfcc49 head2 newhead
24144
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
32 |
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
33 | o 3:c3cb30f2d2cd test2 tag
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
34 | |
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
35 | o 2:d75775ffbc6b test2 first
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
36 | |
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
37 | o 1:5f97d42da03f test tag
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
38 |/
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
39 o 0:55482a6fb4b1 test1 initial
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
40
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
41
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
42 Trigger tags cache population by doing something that accesses tags info
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
43
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
44 $ hg tags
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
45 tip 5:2942a772f72a
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
46 head2 4:042eb6bfcc49
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
47 test2 2:d75775ffbc6b
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
48 test1 0:55482a6fb4b1
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
49
24762
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
50 $ cat .hg/cache/tags2-visible
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
51 5 2942a772f72a444bef4bef13874d515f50fa27b6
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
52 042eb6bfcc4909bad84a1cbf6eb1ddf0ab587d41 head2
24144
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
53 55482a6fb4b1881fa8f746fd52cf6f096bb21c89 test1
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
54 d75775ffbc6bca1794d300f5571272879bd280da test2
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
55
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
56 Hiding a non-tip changeset should change filtered hash and cause tags recompute
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
57
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
58 $ hg debugobsolete -d '0 0' c3cb30f2d2cd0aae008cc91a07876e3c5131fd22 -u dummyuser
24144
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
59
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
60 $ hg tags
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
61 tip 5:2942a772f72a
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
62 head2 4:042eb6bfcc49
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
63 test1 0:55482a6fb4b1
24144
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
64
24762
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
65 $ cat .hg/cache/tags2-visible
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
66 5 2942a772f72a444bef4bef13874d515f50fa27b6 f34fbc9a9769ba9eff5aff3d008a6b49f85c08b1
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
67 042eb6bfcc4909bad84a1cbf6eb1ddf0ab587d41 head2
24144
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
68 55482a6fb4b1881fa8f746fd52cf6f096bb21c89 test1
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
69
28025
ab6468270b83 blackbox: flush output file descriptor
timeless <timeless@mozdev.org>
parents: 26185
diff changeset
70 $ hg blackbox -l 5
26185
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
71 1970/01/01 00:00:00 bob (*)> tags (glob)
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
72 1970/01/01 00:00:00 bob (*)> 2/2 cache hits/lookups in * seconds (glob)
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
73 1970/01/01 00:00:00 bob (*)> writing .hg/cache/tags2-visible with 2 tags (glob)
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
74 1970/01/01 00:00:00 bob (*)> tags exited 0 after * seconds (glob)
28025
ab6468270b83 blackbox: flush output file descriptor
timeless <timeless@mozdev.org>
parents: 26185
diff changeset
75 1970/01/01 00:00:00 bob (*)> blackbox -l 5 (glob)
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
76
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
77 Hiding another changeset should cause the filtered hash to change
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
78
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
79 $ hg debugobsolete -d '0 0' d75775ffbc6bca1794d300f5571272879bd280da -u dummyuser
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
80 $ hg debugobsolete -d '0 0' 5f97d42da03fd56f3b228b03dfe48af5c0adf75b -u dummyuser
24144
a35b59d4df33 tests: add test showing tags cache drops filtered heads (issue4550)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff changeset
81
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
82 $ hg tags
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
83 tip 5:2942a772f72a
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
84 head2 4:042eb6bfcc49
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
85
24762
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
86 $ cat .hg/cache/tags2-visible
24760
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
87 5 2942a772f72a444bef4bef13874d515f50fa27b6 2fce1eec33263d08a4d04293960fc73a555230e4
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
88 042eb6bfcc4909bad84a1cbf6eb1ddf0ab587d41 head2
410f3856196f tags: change format of tags cache files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24737
diff changeset
89
28025
ab6468270b83 blackbox: flush output file descriptor
timeless <timeless@mozdev.org>
parents: 26185
diff changeset
90 $ hg blackbox -l 5
26185
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
91 1970/01/01 00:00:00 bob (*)> tags (glob)
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
92 1970/01/01 00:00:00 bob (*)> 1/1 cache hits/lookups in * seconds (glob)
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
93 1970/01/01 00:00:00 bob (*)> writing .hg/cache/tags2-visible with 1 tags (glob)
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
94 1970/01/01 00:00:00 bob (*)> tags exited 0 after * seconds (glob)
28025
ab6468270b83 blackbox: flush output file descriptor
timeless <timeless@mozdev.org>
parents: 26185
diff changeset
95 1970/01/01 00:00:00 bob (*)> blackbox -l 5 (glob)
24762
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
96
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
97 Resolving tags on an unfiltered repo writes a separate tags cache
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
98
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
99 $ hg --hidden tags
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
100 tip 5:2942a772f72a
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
101 head2 4:042eb6bfcc49
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
102 test2 2:d75775ffbc6b
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
103 test1 0:55482a6fb4b1
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
104
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
105 $ cat .hg/cache/tags2
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
106 5 2942a772f72a444bef4bef13874d515f50fa27b6
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
107 042eb6bfcc4909bad84a1cbf6eb1ddf0ab587d41 head2
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
108 55482a6fb4b1881fa8f746fd52cf6f096bb21c89 test1
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
109 d75775ffbc6bca1794d300f5571272879bd280da test2
1062663808ce tags: write a separate tags cache file for unfiltered repos
Gregory Szorc <gregory.szorc@gmail.com>
parents: 24760
diff changeset
110
28025
ab6468270b83 blackbox: flush output file descriptor
timeless <timeless@mozdev.org>
parents: 26185
diff changeset
111 $ hg blackbox -l 5
26185
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
112 1970/01/01 00:00:00 bob (*)> --hidden tags (glob)
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
113 1970/01/01 00:00:00 bob (*)> 2/2 cache hits/lookups in * seconds (glob)
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
114 1970/01/01 00:00:00 bob (*)> writing .hg/cache/tags2 with 3 tags (glob)
e8f9dffca36f blackbox: add pid to output
Durham Goode <durham@fb.com>
parents: 24763
diff changeset
115 1970/01/01 00:00:00 bob (*)> --hidden tags exited 0 after * seconds (glob)
28025
ab6468270b83 blackbox: flush output file descriptor
timeless <timeless@mozdev.org>
parents: 26185
diff changeset
116 1970/01/01 00:00:00 bob (*)> blackbox -l 5 (glob)