sapling/mercurial
Nicolas Dumazet 3ced073c3b 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.
2009-03-23 15:32:29 +01:00
..
hgweb cleanup: drop enumerate() when index is not used 2009-03-23 13:13:11 +01:00
pure kill another trailing space 2009-03-23 13:49:16 +01:00
__init__.py Add back links from file revisions to changeset revisions 2005-05-03 13:16:10 -08:00
ancestor.py ancestor: caching the parent list to improve performance 2009-03-23 15:36:30 +01:00
archival.py fix disappearing symlinks [issue1509] 2009-02-15 11:14:20 -06:00
base85.c Some additional space/tab cleanups 2008-10-20 15:19:05 +02:00
bdiff.c bdiff: add comment about normalization 2009-01-12 17:51:57 +01:00
bundlerepo.py cleanup: drop unused imports 2009-03-23 13:12:07 +01:00
byterange.py use Exception(args)-style raising consistently (py3k compatibility) 2008-09-08 13:07:00 +02:00
changegroup.py improve changegroup.readbundle(), use it in hgweb 2008-02-21 17:02:28 +01:00
changelog.py help: miscellaneous language fixes 2009-02-28 12:38:45 +01:00
cmdutil.py templater: use contexts consistently throughout changeset_templater 2009-03-23 13:15:57 +01:00
commands.py add debugcommands command: an easy to parse command + option index 2009-03-23 13:43:48 +01:00
context.py cleanup: drop variables for unused return values 2009-03-23 13:13:02 +01:00
copies.py cleanup: drop unused imports 2009-03-23 13:12:07 +01:00
demandimport.py demandimport: blacklist pythoncom 2009-03-09 21:00:37 -05:00
diffhelpers.c Handle patches with misformatted empty lines 2007-11-01 17:15:50 -05:00
dirstate.py mq: drop copy records when refreshing regular patches (issue1441) 2009-01-04 21:32:40 +01:00
dispatch.py cleanup: drop unused imports 2009-03-23 13:12:07 +01:00
error.py error: move SignatureError 2009-01-12 13:51:43 -06:00
extensions.py cleanup: drop enumerate() when index is not used 2009-03-23 13:13:11 +01:00
fancyopts.py fancyopts: Parse options that occur after arguments. 2009-02-10 13:26:00 -06:00
filelog.py revlog: kill from-style imports 2009-01-11 22:55:36 -06:00
filemerge.py cleanup: drop unused imports 2009-03-23 13:12:07 +01:00
graphmod.py cleanup: drop unused imports 2009-03-23 13:12:07 +01:00
hbisect.py Circumvent removal of valid bisect candidates due to previously skipped ones 2008-12-27 19:05:26 +01:00
help.py templater: ability to display diffstat for log-like commands 2009-03-23 10:41:42 +01:00
hg.py merge: better error messages to lead users to hg update --clean to abandon merges. 2009-03-04 13:06:16 -06:00
hook.py Introduce HG_PREPEND to solve pretxn races 2009-02-16 19:35:07 -06:00
httprepo.py close sockets on httprepository deletion (issue1487) 2009-01-28 20:06:59 -06:00
i18n.py i18n: encode output in user's local encoding 2009-01-15 00:14:36 +01:00
ignore.py use dict.iteritems() rather than dict.items() 2009-01-12 09:16:03 +01:00
keepalive.py cleanup: drop unused assignments 2009-03-23 13:13:06 +01:00
localrepo.py cleanup: drop unused assignments 2009-03-23 13:13:06 +01:00
lock.py error: move lock errors 2009-01-12 11:09:14 -06:00
lsprof.py cleanup: drop unused assignments 2009-03-23 13:13:06 +01:00
mail.py mail: correct typo in variable name 2008-10-21 10:29:57 +02:00
manifest.py revlog: kill from-style imports 2009-01-11 22:55:36 -06:00
match.py dirstate.walk: speed up calling match function 2008-07-22 13:03:31 -05:00
mdiff.py diff: fix obscure off-by-one error in diff -p 2008-11-27 17:00:54 +01:00
merge.py resolve: move reset to localrepo.commit 2009-03-16 16:58:41 -05:00
mpatch.c allow Mercurial to compile on Haiku 2008-09-17 10:22:35 +02:00
node.py manifest: speed up creation of the manifestdict 2007-07-23 20:44:08 -05:00
osutil.c Some additional space/tab cleanups 2008-10-20 15:19:05 +02:00
parsers.c Some additional space/tab cleanups 2008-10-20 15:19:05 +02:00
patch.py cleanup: drop unused imports 2009-03-23 13:12:07 +01:00
repair.py linkrev: take a revision number rather than a hash 2008-11-12 15:19:14 -06:00
repo.py cleanup: drop unused imports 2009-03-23 13:12:07 +01:00
revlog.py revlog: faster hash computation when one of the parent node is null 2009-03-23 15:32:29 +01:00
simplemerge.py remove unused variables 2008-10-28 19:25:26 +01:00
sshrepo.py cleanup: drop unused imports 2009-03-23 13:12:07 +01:00
sshserver.py cleanup: drop unused assignments 2009-03-23 13:13:06 +01:00
statichttprepo.py cleanup: drop unused imports 2009-03-23 13:12:07 +01:00
store.py store: encode trailing period and space on directory names (issue1417) 2008-12-13 18:32:29 +01:00
streamclone.py error: move lock errors 2009-01-12 11:09:14 -06:00
strutil.py Some additional space/tab cleanups 2008-10-20 15:19:05 +02:00
templatefilters.py templater: fix age filter to state the obvious on future timestamps 2009-01-22 16:07:44 +01:00
templater.py kill some trailing spaces 2008-11-27 16:07:13 +01:00
transaction.py add missing import from d329ec89ce55 2008-11-07 18:42:43 +01:00
ui.py catch CTRL-D at password prompt 2009-02-21 17:46:06 -06:00
url.py url: detect scheme with a regexp instead of urlsplit() 2008-10-28 23:54:01 +01:00
util_win32.py Don't fail on clone on win98 (issue1492) 2009-02-16 17:37:23 -06:00
util.py cleanup: drop unused assignments 2009-03-23 13:13:06 +01:00
verify.py cleanup: drop variables for unused return values 2009-03-23 13:13:02 +01:00