view tests/test-update-reverse.out @ 1534:80a3d6a0af71

Optimize manifest.add Testing shows that manifest.add is spending a significant percentage of its time running calcoffsets and doing text = "".join(addlist). This patch removes the need for both of these by storying the manifest in a character array, and using a modified bisect search to find lines without the help of a separate index of line offsets. manifest.add was also reworked to push delta construction/combination into the main loop. Time to apply 2751 patches (without psyco, ext3 noatime,data=writeback): Stock hg: 4m45s real 3m32s user 55s sys patched: 2m48s real 1m53s user 43s sys quilt: 2m30s real 45s user 50s sys (quilt does much more io...)
author mason@suse.com
date Fri, 11 Nov 2005 18:20:22 -0800
parents 3a0b69ea5708
children 6d50d6189269
line wrap: on
line source

Main should be gone
a
changeset:   3:91ebc10ed028
tag:         tip
user:        test
date:        Thu Jan  1 00:00:00 1970 +0000
summary:     Added side2

changeset:   2:b932d7dbb1e1
parent:      0:c2eda428b523
user:        test
date:        Thu Jan  1 00:00:00 1970 +0000
summary:     Added side1

changeset:   1:71a760306caf
user:        test
date:        Thu Jan  1 00:00:00 1970 +0000
summary:     Added main

changeset:   0:c2eda428b523
user:        test
date:        Thu Jan  1 00:00:00 1970 +0000
summary:     Added a

Should have two heads, side2 and main
changeset:   3:91ebc10ed028
tag:         tip
user:        test
date:        Thu Jan  1 00:00:00 1970 +0000
summary:     Added side2

changeset:   1:71a760306caf
user:        test
date:        Thu Jan  1 00:00:00 1970 +0000
summary:     Added main

Should show a side1 side2
a
side1
side2
resolving manifests
 force 1 allow None moddirstate True linear False
 ancestor 8515d4bfda76 local 1c0f48f8ece6 remote 0594b9004bae
remote deleted side2, clobbering
remote deleted side1, clobbering
remote created main
getting main
removing side1
removing side2
Should only show a main
a
main