diff tests/test-command-template.t @ 30232:362740e05460 stable

templater: use unfiltered changelog to calculate shortest() at constant time cl._partialmatch() can be pretty slow if hidden revisions are involved. This patch cancels the slowdown introduced by the previous patch by using an unfiltered changelog, which means shortest(node) isn't always the shortest. The result isn't perfect, but seems okay as long as shortest(node) is short enough to type and can be used as an identifier. (with hidden revisions) % hg log -R hg-committed -r0:20000 -T '{node|shortest}\n' --time > /dev/null (.^^) time: real 1.530 secs (user 1.480+0.000 sys 0.040+0.000) (.^) time: real 43.080 secs (user 43.060+0.000 sys 0.030+0.000) (.) time: real 1.680 secs (user 1.650+0.000 sys 0.020+0.000)
author Yuya Nishihara <yuya@tcha.org>
date Tue, 25 Oct 2016 21:49:30 +0900
parents 741e5d7f282d
children 94ef2f00b8a4
line wrap: on
line diff
--- a/tests/test-command-template.t	Sun Oct 23 14:05:23 2016 +0900
+++ b/tests/test-command-template.t	Tue Oct 25 21:49:30 2016 +0900
@@ -3469,9 +3469,10 @@
   4:107
 
  node 'c562' should be unique if the other 'c562' nodes are hidden
+ (but we don't try the slow path to filter out hidden nodes for now)
 
   $ hg log -r 8 -T '{rev}:{node|shortest}\n'
-  8:c562
+  8:c5625
   $ hg log -r 8:10 -T '{rev}:{node|shortest}\n' --hidden
   8:c5625
   9:c5623