tests/test-gendoc-de.t
author Gregory Szorc <gregory.szorc@gmail.com>
Thu, 23 Mar 2017 19:54:59 -0700
branchstable
changeset 31587 ed5b25874d99
parent 28809 7a1ad08b9ff5
permissions -rw-r--r--
changegroup: store old heads as a set Previously, the "oldheads" variable was a list. On a repository at Mozilla with 46,492 heads, profiling revealed that list membership testing was dominating execution time of applying small changegroups. This patch converts the list of old heads to a set. This makes membership testing significantly faster. On the aforementioned repository with 46,492 heads: $ hg unbundle <file with 1 changeset> before: 18.535s wall after: 1.303s Consumers of this variable only check for truthiness (`if oldheads`), length (`len(oldheads)`), and (most importantly) item membership (`h not in oldheads` - which occurs twice). So, the change to a set should be safe and suitable for stable. The practical effect of this change is that changegroup application and related operations (like `hg push`) no longer exhibit an O(n^2) CPU explosion as the number of heads grows.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
28809
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
diff changeset
     1
#require docutils gettext
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
diff changeset
     2
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
diff changeset
     3
  $ $TESTDIR/check-gendoc de
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
diff changeset
     4
  checking for parse errors
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
diff changeset
     5
  Die Dateien werden dem Projektarchiv beim n\xc3\xa4chsten \xc3\x9cbernehmen (commit) hinzugef\xc3\xbcgt. Um dies vorher r\xc3\xbcckg\xc3\xa4ngig zu machen, siehe:hg:`forget`. (esc)
7a1ad08b9ff5 tests: splitting test-gendoc.t into per file tests
timeless <timeless@mozdev.org>
parents:
diff changeset
     6
  warning: please have a space before :hg: