##// END OF EJS Templates
revlog: faster hash computation when one of the parent node is null...
revlog: faster hash computation when one of the parent node is null Because we often compute sha1(nullid), it's interesting to copy a precomputed hash of nullid instead of computing everytime the same hash. Similarly, when one of the parents is null, we can avoid a < comparison (sort). Overall, this change adds a string equality comparison on each hash() call, but when p2 is null, we drop one string < comparison, and copy a hash instead of computing it. Since it is common to have revisions with only one parent, this change makes hash() 25% faster when cloning a big repository.
Nicolas Dumazet -
r7883:c63c30ae default
Show More
Name Size Modified Last Commit Author
/ mercurial
hgweb
pure
__init__.py Loading ...
ancestor.py Loading ...
archival.py Loading ...
base85.c Loading ...
bdiff.c Loading ...
bundlerepo.py Loading ...
byterange.py Loading ...
changegroup.py Loading ...
changelog.py Loading ...
cmdutil.py Loading ...
commands.py Loading ...
context.py Loading ...
copies.py Loading ...
demandimport.py Loading ...
diffhelpers.c Loading ...
dirstate.py Loading ...
dispatch.py Loading ...
error.py Loading ...
extensions.py Loading ...
fancyopts.py Loading ...
filelog.py Loading ...
filemerge.py Loading ...
graphmod.py Loading ...
hbisect.py Loading ...
help.py Loading ...
hg.py Loading ...
hook.py Loading ...
httprepo.py Loading ...
i18n.py Loading ...
ignore.py Loading ...
keepalive.py Loading ...
localrepo.py Loading ...
lock.py Loading ...
lsprof.py Loading ...
mail.py Loading ...
manifest.py Loading ...
match.py Loading ...
mdiff.py Loading ...
merge.py Loading ...
mpatch.c Loading ...
node.py Loading ...
osutil.c Loading ...
parsers.c Loading ...
patch.py Loading ...
repair.py Loading ...
repo.py Loading ...
revlog.py Loading ...
simplemerge.py Loading ...
sshrepo.py Loading ...
sshserver.py Loading ...
statichttprepo.py Loading ...
store.py Loading ...
streamclone.py Loading ...
strutil.py Loading ...
templatefilters.py Loading ...
templater.py Loading ...
transaction.py Loading ...
ui.py Loading ...
url.py Loading ...
util.py Loading ...
util_win32.py Loading ...
verify.py Loading ...