##// END OF EJS Templates
bookmarks: cache reverse mapping (issue5868)...
bookmarks: cache reverse mapping (issue5868) I chose a simpler implementation. If the initial cost of building reverse mapping is significant, we'll have to move it under @propertycache. The nodemap could be a dict of sets, but I think keeping a sorted list is better since each node is likely to have zero/one bookmark. Micro-benchmark with 1001 bookmarks and 1001 revisions: $ for n in `seq 0 1000`; do touch $n; hg book book$n; hg ci -qAm$n; done $ hg bookmarks --time > /dev/null (orig) time: real 0.040 secs (user 0.050+0.000 sys 0.000+0.000) (new) time: real 0.040 secs (user 0.040+0.000 sys 0.010+0.000) $ hg log -T '{bookmarks}\n' --time > /dev/null (orig) time: real 0.160 secs (user 0.160+0.000 sys 0.000+0.000) (new) time: real 0.090 secs (user 0.100+0.000 sys 0.000+0.000)
Yuya Nishihara -
r37869:04ceb267 @26 default
Show More
Name Size Modified Last Commit Author
/ mercurial / templates / paper
bookmarks.tmpl Loading ...
branches.tmpl Loading ...
changeset.tmpl Loading ...
diffstat.tmpl Loading ...
error.tmpl Loading ...
fileannotate.tmpl Loading ...
filecomparison.tmpl Loading ...
filediff.tmpl Loading ...
filelog.tmpl Loading ...
filelogentry.tmpl Loading ...
filerevision.tmpl Loading ...
footer.tmpl Loading ...
graph.tmpl Loading ...
graphentry.tmpl Loading ...
header.tmpl Loading ...
help.tmpl Loading ...
helptopics.tmpl Loading ...
index.tmpl Loading ...
manifest.tmpl Loading ...
map Loading ...
notfound.tmpl Loading ...
search.tmpl Loading ...
shortlog.tmpl Loading ...
shortlogentry.tmpl Loading ...
tags.tmpl Loading ...