tests/test-stablerange.t
changeset 2083 778afb036245
parent 2082 3f787182509f
child 2207 f82a398162f5
--- a/tests/test-stablerange.t	Thu Mar 09 22:57:41 2017 -0800
+++ b/tests/test-stablerange.t	Fri Mar 10 10:36:46 2017 -0800
@@ -17,113 +17,113 @@
   $ cd repo_linear
   $ hg debugbuilddag '.+6'
   $ hg debugstablerange --rev 1
-  rev         node index size depth
-    1 66f7d451a68b     0    2     2
-    0 1ea73414a91b     0    1     1
-    1 66f7d451a68b     1    1     2
+  rev         node index size depth      obshash
+    1 66f7d451a68b     0    2     2 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
   $ hg debugstablerange --rev 1 > 1.range
 
 bigger subset reuse most of the previous one
 
   $ hg debugstablerange --rev 4
-  rev         node index size depth
-    4 bebd167eb94d     0    5     5
-    3 2dc09a01254d     0    4     4
-    3 2dc09a01254d     2    2     4
-    1 66f7d451a68b     0    2     2
-    2 01241442b3c2     2    1     3
-    0 1ea73414a91b     0    1     1
-    3 2dc09a01254d     3    1     4
-    1 66f7d451a68b     1    1     2
-    4 bebd167eb94d     4    1     5
+  rev         node index size depth      obshash
+    4 bebd167eb94d     0    5     5 000000000000
+    3 2dc09a01254d     0    4     4 000000000000
+    3 2dc09a01254d     2    2     4 000000000000
+    1 66f7d451a68b     0    2     2 000000000000
+    2 01241442b3c2     2    1     3 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    3 2dc09a01254d     3    1     4 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
+    4 bebd167eb94d     4    1     5 000000000000
   $ hg debugstablerange --rev 4 > 4.range
   $ diff -u 1.range 4.range
   --- 1.range	* (glob)
   +++ 4.range	* (glob)
   @@ -1,4 +1,10 @@
-   rev         node index size depth
-  +  4 bebd167eb94d     0    5     5
-  +  3 2dc09a01254d     0    4     4
-  +  3 2dc09a01254d     2    2     4
-     1 66f7d451a68b     0    2     2
-  +  2 01241442b3c2     2    1     3
-     0 1ea73414a91b     0    1     1
-  +  3 2dc09a01254d     3    1     4
-     1 66f7d451a68b     1    1     2
-  +  4 bebd167eb94d     4    1     5
+   rev         node index size depth      obshash
+  +  4 bebd167eb94d     0    5     5 000000000000
+  +  3 2dc09a01254d     0    4     4 000000000000
+  +  3 2dc09a01254d     2    2     4 000000000000
+     1 66f7d451a68b     0    2     2 000000000000
+  +  2 01241442b3c2     2    1     3 000000000000
+     0 1ea73414a91b     0    1     1 000000000000
+  +  3 2dc09a01254d     3    1     4 000000000000
+     1 66f7d451a68b     1    1     2 000000000000
+  +  4 bebd167eb94d     4    1     5 000000000000
   [1]
 
 Using a range not ending on 2**N boundary
 we fall back on 2**N as much as possible
 
   $ hg debugstablerange --rev 5
-  rev         node index size depth
-    5 c8d03c1b5e94     0    6     6
-    3 2dc09a01254d     0    4     4
-    3 2dc09a01254d     2    2     4
-    1 66f7d451a68b     0    2     2
-    5 c8d03c1b5e94     4    2     6
-    2 01241442b3c2     2    1     3
-    0 1ea73414a91b     0    1     1
-    3 2dc09a01254d     3    1     4
-    1 66f7d451a68b     1    1     2
-    4 bebd167eb94d     4    1     5
-    5 c8d03c1b5e94     5    1     6
+  rev         node index size depth      obshash
+    5 c8d03c1b5e94     0    6     6 000000000000
+    3 2dc09a01254d     0    4     4 000000000000
+    3 2dc09a01254d     2    2     4 000000000000
+    1 66f7d451a68b     0    2     2 000000000000
+    5 c8d03c1b5e94     4    2     6 000000000000
+    2 01241442b3c2     2    1     3 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    3 2dc09a01254d     3    1     4 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
+    4 bebd167eb94d     4    1     5 000000000000
+    5 c8d03c1b5e94     5    1     6 000000000000
   $ hg debugstablerange --rev 5 > 5.range
   $ diff -u 4.range 5.range
   --- 4.range	* (glob)
   +++ 5.range	* (glob)
   @@ -1,10 +1,12 @@
-   rev         node index size depth
-  -  4 bebd167eb94d     0    5     5
-  +  5 c8d03c1b5e94     0    6     6
-     3 2dc09a01254d     0    4     4
-     3 2dc09a01254d     2    2     4
-     1 66f7d451a68b     0    2     2
-  +  5 c8d03c1b5e94     4    2     6
-     2 01241442b3c2     2    1     3
-     0 1ea73414a91b     0    1     1
-     3 2dc09a01254d     3    1     4
-     1 66f7d451a68b     1    1     2
-     4 bebd167eb94d     4    1     5
-  +  5 c8d03c1b5e94     5    1     6
+   rev         node index size depth      obshash
+  -  4 bebd167eb94d     0    5     5 000000000000
+  +  5 c8d03c1b5e94     0    6     6 000000000000
+     3 2dc09a01254d     0    4     4 000000000000
+     3 2dc09a01254d     2    2     4 000000000000
+     1 66f7d451a68b     0    2     2 000000000000
+  +  5 c8d03c1b5e94     4    2     6 000000000000
+     2 01241442b3c2     2    1     3 000000000000
+     0 1ea73414a91b     0    1     1 000000000000
+     3 2dc09a01254d     3    1     4 000000000000
+     1 66f7d451a68b     1    1     2 000000000000
+     4 bebd167eb94d     4    1     5 000000000000
+  +  5 c8d03c1b5e94     5    1     6 000000000000
   [1]
 
 Even two unperfect range overlap a lot
 
   $ hg debugstablerange --rev tip
-  rev         node index size depth
-    6 f69452c5b1af     0    7     7
-    3 2dc09a01254d     0    4     4
-    6 f69452c5b1af     4    3     7
-    3 2dc09a01254d     2    2     4
-    1 66f7d451a68b     0    2     2
-    5 c8d03c1b5e94     4    2     6
-    2 01241442b3c2     2    1     3
-    0 1ea73414a91b     0    1     1
-    3 2dc09a01254d     3    1     4
-    1 66f7d451a68b     1    1     2
-    4 bebd167eb94d     4    1     5
-    5 c8d03c1b5e94     5    1     6
-    6 f69452c5b1af     6    1     7
+  rev         node index size depth      obshash
+    6 f69452c5b1af     0    7     7 000000000000
+    3 2dc09a01254d     0    4     4 000000000000
+    6 f69452c5b1af     4    3     7 000000000000
+    3 2dc09a01254d     2    2     4 000000000000
+    1 66f7d451a68b     0    2     2 000000000000
+    5 c8d03c1b5e94     4    2     6 000000000000
+    2 01241442b3c2     2    1     3 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    3 2dc09a01254d     3    1     4 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
+    4 bebd167eb94d     4    1     5 000000000000
+    5 c8d03c1b5e94     5    1     6 000000000000
+    6 f69452c5b1af     6    1     7 000000000000
   $ hg debugstablerange --rev tip > tip.range
   $ diff -u 5.range tip.range
   --- 5.range	* (glob)
   +++ tip.range	* (glob)
   @@ -1,6 +1,7 @@
-   rev         node index size depth
-  -  5 c8d03c1b5e94     0    6     6
-  +  6 f69452c5b1af     0    7     7
-     3 2dc09a01254d     0    4     4
-  +  6 f69452c5b1af     4    3     7
-     3 2dc09a01254d     2    2     4
-     1 66f7d451a68b     0    2     2
-     5 c8d03c1b5e94     4    2     6
+   rev         node index size depth      obshash
+  -  5 c8d03c1b5e94     0    6     6 000000000000
+  +  6 f69452c5b1af     0    7     7 000000000000
+     3 2dc09a01254d     0    4     4 000000000000
+  +  6 f69452c5b1af     4    3     7 000000000000
+     3 2dc09a01254d     2    2     4 000000000000
+     1 66f7d451a68b     0    2     2 000000000000
+     5 c8d03c1b5e94     4    2     6 000000000000
   @@ -10,3 +11,4 @@
-     1 66f7d451a68b     1    1     2
-     4 bebd167eb94d     4    1     5
-     5 c8d03c1b5e94     5    1     6
-  +  6 f69452c5b1af     6    1     7
+     1 66f7d451a68b     1    1     2 000000000000
+     4 bebd167eb94d     4    1     5 000000000000
+     5 c8d03c1b5e94     5    1     6 000000000000
+  +  6 f69452c5b1af     6    1     7 000000000000
   [1]
 
   $ cd ..
@@ -169,131 +169,131 @@
 (left branch)
 
   $ hg debugstablerange --rev 'left~2'
-  rev         node index size depth
-    1 66f7d451a68b     0    2     2
-    0 1ea73414a91b     0    1     1
-    1 66f7d451a68b     1    1     2
+  rev         node index size depth      obshash
+    1 66f7d451a68b     0    2     2 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
   $ hg debugstablerange --rev 'left~2' > left-2.range
   $ hg debugstablerange --rev left
-  rev         node index size depth
-    3 2dc09a01254d     0    4     4
-    3 2dc09a01254d     2    2     4
-    1 66f7d451a68b     0    2     2
-    2 01241442b3c2     2    1     3
-    0 1ea73414a91b     0    1     1
-    3 2dc09a01254d     3    1     4
-    1 66f7d451a68b     1    1     2
+  rev         node index size depth      obshash
+    3 2dc09a01254d     0    4     4 000000000000
+    3 2dc09a01254d     2    2     4 000000000000
+    1 66f7d451a68b     0    2     2 000000000000
+    2 01241442b3c2     2    1     3 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    3 2dc09a01254d     3    1     4 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
   $ hg debugstablerange --rev 'left' > left.range
   $ diff -u left-2.range left.range
   --- left-2.range	* (glob)
   +++ left.range	* (glob)
   @@ -1,4 +1,8 @@
-   rev         node index size depth
-  +  3 2dc09a01254d     0    4     4
-  +  3 2dc09a01254d     2    2     4
-     1 66f7d451a68b     0    2     2
-  +  2 01241442b3c2     2    1     3
-     0 1ea73414a91b     0    1     1
-  +  3 2dc09a01254d     3    1     4
-     1 66f7d451a68b     1    1     2
+   rev         node index size depth      obshash
+  +  3 2dc09a01254d     0    4     4 000000000000
+  +  3 2dc09a01254d     2    2     4 000000000000
+     1 66f7d451a68b     0    2     2 000000000000
+  +  2 01241442b3c2     2    1     3 000000000000
+     0 1ea73414a91b     0    1     1 000000000000
+  +  3 2dc09a01254d     3    1     4 000000000000
+     1 66f7d451a68b     1    1     2 000000000000
   [1]
 
 (right branch)
 
   $ hg debugstablerange --rev right~2
-  rev         node index size depth
-    4 e7bd5218ca15     0    2     2
-    0 1ea73414a91b     0    1     1
-    4 e7bd5218ca15     1    1     2
+  rev         node index size depth      obshash
+    4 e7bd5218ca15     0    2     2 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    4 e7bd5218ca15     1    1     2 000000000000
   $ hg debugstablerange --rev 'right~2' > right-2.range
   $ hg debugstablerange --rev right
-  rev         node index size depth
-    6 a2f58e9c1e56     0    4     4
-    6 a2f58e9c1e56     2    2     4
-    4 e7bd5218ca15     0    2     2
-    0 1ea73414a91b     0    1     1
-    5 3a367db1fabc     2    1     3
-    6 a2f58e9c1e56     3    1     4
-    4 e7bd5218ca15     1    1     2
+  rev         node index size depth      obshash
+    6 a2f58e9c1e56     0    4     4 000000000000
+    6 a2f58e9c1e56     2    2     4 000000000000
+    4 e7bd5218ca15     0    2     2 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    5 3a367db1fabc     2    1     3 000000000000
+    6 a2f58e9c1e56     3    1     4 000000000000
+    4 e7bd5218ca15     1    1     2 000000000000
   $ hg debugstablerange --rev 'right' > right.range
   $ diff -u right-2.range right.range
   --- right-2.range	* (glob)
   +++ right.range	* (glob)
   @@ -1,4 +1,8 @@
-   rev         node index size depth
-  +  6 a2f58e9c1e56     0    4     4
-  +  6 a2f58e9c1e56     2    2     4
-     4 e7bd5218ca15     0    2     2
-     0 1ea73414a91b     0    1     1
-  +  5 3a367db1fabc     2    1     3
-  +  6 a2f58e9c1e56     3    1     4
-     4 e7bd5218ca15     1    1     2
+   rev         node index size depth      obshash
+  +  6 a2f58e9c1e56     0    4     4 000000000000
+  +  6 a2f58e9c1e56     2    2     4 000000000000
+     4 e7bd5218ca15     0    2     2 000000000000
+     0 1ea73414a91b     0    1     1 000000000000
+  +  5 3a367db1fabc     2    1     3 000000000000
+  +  6 a2f58e9c1e56     3    1     4 000000000000
+     4 e7bd5218ca15     1    1     2 000000000000
   [1]
 
 The merge reuse as much of the slicing created for one of the branch
 
   $ hg debugstablerange --rev merge
-  rev         node index size depth
-    7 5f18015f9110     0    8     8
-    3 2dc09a01254d     0    4     4
-    7 5f18015f9110     4    4     8
-    3 2dc09a01254d     2    2     4
-    5 3a367db1fabc     1    2     3
-    7 5f18015f9110     6    2     8
-    1 66f7d451a68b     0    2     2
-    2 01241442b3c2     2    1     3
-    0 1ea73414a91b     0    1     1
-    3 2dc09a01254d     3    1     4
-    5 3a367db1fabc     2    1     3
-    7 5f18015f9110     7    1     8
-    1 66f7d451a68b     1    1     2
-    6 a2f58e9c1e56     3    1     4
-    4 e7bd5218ca15     1    1     2
+  rev         node index size depth      obshash
+    7 5f18015f9110     0    8     8 000000000000
+    3 2dc09a01254d     0    4     4 000000000000
+    7 5f18015f9110     4    4     8 000000000000
+    3 2dc09a01254d     2    2     4 000000000000
+    5 3a367db1fabc     1    2     3 000000000000
+    7 5f18015f9110     6    2     8 000000000000
+    1 66f7d451a68b     0    2     2 000000000000
+    2 01241442b3c2     2    1     3 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    3 2dc09a01254d     3    1     4 000000000000
+    5 3a367db1fabc     2    1     3 000000000000
+    7 5f18015f9110     7    1     8 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
+    6 a2f58e9c1e56     3    1     4 000000000000
+    4 e7bd5218ca15     1    1     2 000000000000
   $ hg debugstablerange --rev 'merge' > merge.range
   $ diff -u left.range merge.range
   --- left.range	* (glob)
   +++ merge.range	* (glob)
   @@ -1,8 +1,16 @@
-   rev         node index size depth
-  +  7 5f18015f9110     0    8     8
-     3 2dc09a01254d     0    4     4
-  +  7 5f18015f9110     4    4     8
-     3 2dc09a01254d     2    2     4
-  +  5 3a367db1fabc     1    2     3
-  +  7 5f18015f9110     6    2     8
-     1 66f7d451a68b     0    2     2
-     2 01241442b3c2     2    1     3
-     0 1ea73414a91b     0    1     1
-     3 2dc09a01254d     3    1     4
-  +  5 3a367db1fabc     2    1     3
-  +  7 5f18015f9110     7    1     8
-     1 66f7d451a68b     1    1     2
-  +  6 a2f58e9c1e56     3    1     4
-  +  4 e7bd5218ca15     1    1     2
+   rev         node index size depth      obshash
+  +  7 5f18015f9110     0    8     8 000000000000
+     3 2dc09a01254d     0    4     4 000000000000
+  +  7 5f18015f9110     4    4     8 000000000000
+     3 2dc09a01254d     2    2     4 000000000000
+  +  5 3a367db1fabc     1    2     3 000000000000
+  +  7 5f18015f9110     6    2     8 000000000000
+     1 66f7d451a68b     0    2     2 000000000000
+     2 01241442b3c2     2    1     3 000000000000
+     0 1ea73414a91b     0    1     1 000000000000
+     3 2dc09a01254d     3    1     4 000000000000
+  +  5 3a367db1fabc     2    1     3 000000000000
+  +  7 5f18015f9110     7    1     8 000000000000
+     1 66f7d451a68b     1    1     2 000000000000
+  +  6 a2f58e9c1e56     3    1     4 000000000000
+  +  4 e7bd5218ca15     1    1     2 000000000000
   [1]
   $ diff -u right.range merge.range
   --- right.range	* (glob)
   +++ merge.range	* (glob)
   @@ -1,8 +1,16 @@
-   rev         node index size depth
-  -  6 a2f58e9c1e56     0    4     4
-  -  6 a2f58e9c1e56     2    2     4
-  -  4 e7bd5218ca15     0    2     2
-  +  7 5f18015f9110     0    8     8
-  +  3 2dc09a01254d     0    4     4
-  +  7 5f18015f9110     4    4     8
-  +  3 2dc09a01254d     2    2     4
-  +  5 3a367db1fabc     1    2     3
-  +  7 5f18015f9110     6    2     8
-  +  1 66f7d451a68b     0    2     2
-  +  2 01241442b3c2     2    1     3
-     0 1ea73414a91b     0    1     1
-  +  3 2dc09a01254d     3    1     4
-     5 3a367db1fabc     2    1     3
-  +  7 5f18015f9110     7    1     8
-  +  1 66f7d451a68b     1    1     2
-     6 a2f58e9c1e56     3    1     4
-     4 e7bd5218ca15     1    1     2
+   rev         node index size depth      obshash
+  -  6 a2f58e9c1e56     0    4     4 000000000000
+  -  6 a2f58e9c1e56     2    2     4 000000000000
+  -  4 e7bd5218ca15     0    2     2 000000000000
+  +  7 5f18015f9110     0    8     8 000000000000
+  +  3 2dc09a01254d     0    4     4 000000000000
+  +  7 5f18015f9110     4    4     8 000000000000
+  +  3 2dc09a01254d     2    2     4 000000000000
+  +  5 3a367db1fabc     1    2     3 000000000000
+  +  7 5f18015f9110     6    2     8 000000000000
+  +  1 66f7d451a68b     0    2     2 000000000000
+  +  2 01241442b3c2     2    1     3 000000000000
+     0 1ea73414a91b     0    1     1 000000000000
+  +  3 2dc09a01254d     3    1     4 000000000000
+     5 3a367db1fabc     2    1     3 000000000000
+  +  7 5f18015f9110     7    1     8 000000000000
+  +  1 66f7d451a68b     1    1     2 000000000000
+     6 a2f58e9c1e56     3    1     4 000000000000
+     4 e7bd5218ca15     1    1     2 000000000000
   [1]
   $ cd ..
 
@@ -349,84 +349,84 @@
 (left branch)
 
   $ hg debugstablerange --rev 'left~2'
-  rev         node index size depth
-    2 01241442b3c2     0    3     3
-    1 66f7d451a68b     0    2     2
-    2 01241442b3c2     2    1     3
-    0 1ea73414a91b     0    1     1
-    1 66f7d451a68b     1    1     2
+  rev         node index size depth      obshash
+    2 01241442b3c2     0    3     3 000000000000
+    1 66f7d451a68b     0    2     2 000000000000
+    2 01241442b3c2     2    1     3 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
   $ hg debugstablerange --rev 'left~2' > left-2.range
   $ hg debugstablerange --rev left
-  rev         node index size depth
-    4 bebd167eb94d     0    5     5
-    3 2dc09a01254d     0    4     4
-    3 2dc09a01254d     2    2     4
-    1 66f7d451a68b     0    2     2
-    2 01241442b3c2     2    1     3
-    0 1ea73414a91b     0    1     1
-    3 2dc09a01254d     3    1     4
-    1 66f7d451a68b     1    1     2
-    4 bebd167eb94d     4    1     5
+  rev         node index size depth      obshash
+    4 bebd167eb94d     0    5     5 000000000000
+    3 2dc09a01254d     0    4     4 000000000000
+    3 2dc09a01254d     2    2     4 000000000000
+    1 66f7d451a68b     0    2     2 000000000000
+    2 01241442b3c2     2    1     3 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    3 2dc09a01254d     3    1     4 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
+    4 bebd167eb94d     4    1     5 000000000000
   $ hg debugstablerange --rev 'left' > left.range
   $ diff -u left-2.range left.range
   --- left-2.range	* (glob)
   +++ left.range	* (glob)
   @@ -1,6 +1,10 @@
-   rev         node index size depth
-  -  2 01241442b3c2     0    3     3
-  +  4 bebd167eb94d     0    5     5
-  +  3 2dc09a01254d     0    4     4
-  +  3 2dc09a01254d     2    2     4
-     1 66f7d451a68b     0    2     2
-     2 01241442b3c2     2    1     3
-     0 1ea73414a91b     0    1     1
-  +  3 2dc09a01254d     3    1     4
-     1 66f7d451a68b     1    1     2
-  +  4 bebd167eb94d     4    1     5
+   rev         node index size depth      obshash
+  -  2 01241442b3c2     0    3     3 000000000000
+  +  4 bebd167eb94d     0    5     5 000000000000
+  +  3 2dc09a01254d     0    4     4 000000000000
+  +  3 2dc09a01254d     2    2     4 000000000000
+     1 66f7d451a68b     0    2     2 000000000000
+     2 01241442b3c2     2    1     3 000000000000
+     0 1ea73414a91b     0    1     1 000000000000
+  +  3 2dc09a01254d     3    1     4 000000000000
+     1 66f7d451a68b     1    1     2 000000000000
+  +  4 bebd167eb94d     4    1     5 000000000000
   [1]
 
 (right branch)
 
   $ hg debugstablerange --rev right~2
-  rev         node index size depth
-    7 42b07e8da27d     0    4     4
-    7 42b07e8da27d     2    2     4
-    5 de561312eff4     0    2     2
-    0 1ea73414a91b     0    1     1
-    7 42b07e8da27d     3    1     4
-    6 b9bc20507e0b     2    1     3
-    5 de561312eff4     1    1     2
+  rev         node index size depth      obshash
+    7 42b07e8da27d     0    4     4 000000000000
+    7 42b07e8da27d     2    2     4 000000000000
+    5 de561312eff4     0    2     2 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    7 42b07e8da27d     3    1     4 000000000000
+    6 b9bc20507e0b     2    1     3 000000000000
+    5 de561312eff4     1    1     2 000000000000
   $ hg debugstablerange --rev 'right~2' > right-2.range
   $ hg debugstablerange --rev right
-  rev         node index size depth
-    9 f4b7da68b467     0    6     6
-    7 42b07e8da27d     0    4     4
-    7 42b07e8da27d     2    2     4
-    5 de561312eff4     0    2     2
-    9 f4b7da68b467     4    2     6
-    0 1ea73414a91b     0    1     1
-    7 42b07e8da27d     3    1     4
-    8 857477a9aebb     4    1     5
-    6 b9bc20507e0b     2    1     3
-    5 de561312eff4     1    1     2
-    9 f4b7da68b467     5    1     6
+  rev         node index size depth      obshash
+    9 f4b7da68b467     0    6     6 000000000000
+    7 42b07e8da27d     0    4     4 000000000000
+    7 42b07e8da27d     2    2     4 000000000000
+    5 de561312eff4     0    2     2 000000000000
+    9 f4b7da68b467     4    2     6 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    7 42b07e8da27d     3    1     4 000000000000
+    8 857477a9aebb     4    1     5 000000000000
+    6 b9bc20507e0b     2    1     3 000000000000
+    5 de561312eff4     1    1     2 000000000000
+    9 f4b7da68b467     5    1     6 000000000000
   $ hg debugstablerange --rev 'right' > right.range
   $ diff -u right-2.range right.range
   --- right-2.range	* (glob)
   +++ right.range	* (glob)
   @@ -1,8 +1,12 @@
-   rev         node index size depth
-  +  9 f4b7da68b467     0    6     6
-     7 42b07e8da27d     0    4     4
-     7 42b07e8da27d     2    2     4
-     5 de561312eff4     0    2     2
-  +  9 f4b7da68b467     4    2     6
-     0 1ea73414a91b     0    1     1
-     7 42b07e8da27d     3    1     4
-  +  8 857477a9aebb     4    1     5
-     6 b9bc20507e0b     2    1     3
-     5 de561312eff4     1    1     2
-  +  9 f4b7da68b467     5    1     6
+   rev         node index size depth      obshash
+  +  9 f4b7da68b467     0    6     6 000000000000
+     7 42b07e8da27d     0    4     4 000000000000
+     7 42b07e8da27d     2    2     4 000000000000
+     5 de561312eff4     0    2     2 000000000000
+  +  9 f4b7da68b467     4    2     6 000000000000
+     0 1ea73414a91b     0    1     1 000000000000
+     7 42b07e8da27d     3    1     4 000000000000
+  +  8 857477a9aebb     4    1     5 000000000000
+     6 b9bc20507e0b     2    1     3 000000000000
+     5 de561312eff4     1    1     2 000000000000
+  +  9 f4b7da68b467     5    1     6 000000000000
   [1]
 
 In this case, the bottom of the split will have multiple heads,
@@ -436,147 +436,147 @@
 We are still able to reuse one of the branch however
 
   $ hg debugstablerange --rev merge
-  rev         node index size depth
-   10 8aca7f8c9bd2     0   11    11
-    4 bebd167eb94d     0    5     5
-    3 2dc09a01254d     0    4     4
-    7 42b07e8da27d     0    4     4
-   10 8aca7f8c9bd2     8    3    11
-    3 2dc09a01254d     2    2     4
-    7 42b07e8da27d     2    2     4
-    1 66f7d451a68b     0    2     2
-    5 de561312eff4     0    2     2
-    9 f4b7da68b467     4    2     6
-    2 01241442b3c2     2    1     3
-    0 1ea73414a91b     0    1     1
-    3 2dc09a01254d     3    1     4
-    7 42b07e8da27d     3    1     4
-    1 66f7d451a68b     1    1     2
-    8 857477a9aebb     4    1     5
-   10 8aca7f8c9bd2    10    1    11
-    6 b9bc20507e0b     2    1     3
-    4 bebd167eb94d     4    1     5
-    5 de561312eff4     1    1     2
-    9 f4b7da68b467     5    1     6
+  rev         node index size depth      obshash
+   10 8aca7f8c9bd2     0   11    11 000000000000
+    4 bebd167eb94d     0    5     5 000000000000
+    3 2dc09a01254d     0    4     4 000000000000
+    7 42b07e8da27d     0    4     4 000000000000
+   10 8aca7f8c9bd2     8    3    11 000000000000
+    3 2dc09a01254d     2    2     4 000000000000
+    7 42b07e8da27d     2    2     4 000000000000
+    1 66f7d451a68b     0    2     2 000000000000
+    5 de561312eff4     0    2     2 000000000000
+    9 f4b7da68b467     4    2     6 000000000000
+    2 01241442b3c2     2    1     3 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    3 2dc09a01254d     3    1     4 000000000000
+    7 42b07e8da27d     3    1     4 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
+    8 857477a9aebb     4    1     5 000000000000
+   10 8aca7f8c9bd2    10    1    11 000000000000
+    6 b9bc20507e0b     2    1     3 000000000000
+    4 bebd167eb94d     4    1     5 000000000000
+    5 de561312eff4     1    1     2 000000000000
+    9 f4b7da68b467     5    1     6 000000000000
   $ hg debugstablerange --rev 'merge' > merge.range
   $ diff -u left.range merge.range
   --- left.range	* (glob)
   +++ merge.range	* (glob)
   @@ -1,10 +1,22 @@
-   rev         node index size depth
-  + 10 8aca7f8c9bd2     0   11    11
-     4 bebd167eb94d     0    5     5
-     3 2dc09a01254d     0    4     4
-  +  7 42b07e8da27d     0    4     4
-  + 10 8aca7f8c9bd2     8    3    11
-     3 2dc09a01254d     2    2     4
-  +  7 42b07e8da27d     2    2     4
-     1 66f7d451a68b     0    2     2
-  +  5 de561312eff4     0    2     2
-  +  9 f4b7da68b467     4    2     6
-     2 01241442b3c2     2    1     3
-     0 1ea73414a91b     0    1     1
-     3 2dc09a01254d     3    1     4
-  +  7 42b07e8da27d     3    1     4
-     1 66f7d451a68b     1    1     2
-  +  8 857477a9aebb     4    1     5
-  + 10 8aca7f8c9bd2    10    1    11
-  +  6 b9bc20507e0b     2    1     3
-     4 bebd167eb94d     4    1     5
-  +  5 de561312eff4     1    1     2
-  +  9 f4b7da68b467     5    1     6
+   rev         node index size depth      obshash
+  + 10 8aca7f8c9bd2     0   11    11 000000000000
+     4 bebd167eb94d     0    5     5 000000000000
+     3 2dc09a01254d     0    4     4 000000000000
+  +  7 42b07e8da27d     0    4     4 000000000000
+  + 10 8aca7f8c9bd2     8    3    11 000000000000
+     3 2dc09a01254d     2    2     4 000000000000
+  +  7 42b07e8da27d     2    2     4 000000000000
+     1 66f7d451a68b     0    2     2 000000000000
+  +  5 de561312eff4     0    2     2 000000000000
+  +  9 f4b7da68b467     4    2     6 000000000000
+     2 01241442b3c2     2    1     3 000000000000
+     0 1ea73414a91b     0    1     1 000000000000
+     3 2dc09a01254d     3    1     4 000000000000
+  +  7 42b07e8da27d     3    1     4 000000000000
+     1 66f7d451a68b     1    1     2 000000000000
+  +  8 857477a9aebb     4    1     5 000000000000
+  + 10 8aca7f8c9bd2    10    1    11 000000000000
+  +  6 b9bc20507e0b     2    1     3 000000000000
+     4 bebd167eb94d     4    1     5 000000000000
+  +  5 de561312eff4     1    1     2 000000000000
+  +  9 f4b7da68b467     5    1     6 000000000000
   [1]
   $ diff -u right.range merge.range
   --- right.range	* (glob)
   +++ merge.range	* (glob)
   @@ -1,12 +1,22 @@
-   rev         node index size depth
-  -  9 f4b7da68b467     0    6     6
-  + 10 8aca7f8c9bd2     0   11    11
-  +  4 bebd167eb94d     0    5     5
-  +  3 2dc09a01254d     0    4     4
-     7 42b07e8da27d     0    4     4
-  + 10 8aca7f8c9bd2     8    3    11
-  +  3 2dc09a01254d     2    2     4
-     7 42b07e8da27d     2    2     4
-  +  1 66f7d451a68b     0    2     2
-     5 de561312eff4     0    2     2
-     9 f4b7da68b467     4    2     6
-  +  2 01241442b3c2     2    1     3
-     0 1ea73414a91b     0    1     1
-  +  3 2dc09a01254d     3    1     4
-     7 42b07e8da27d     3    1     4
-  +  1 66f7d451a68b     1    1     2
-     8 857477a9aebb     4    1     5
-  + 10 8aca7f8c9bd2    10    1    11
-     6 b9bc20507e0b     2    1     3
-  +  4 bebd167eb94d     4    1     5
-     5 de561312eff4     1    1     2
-     9 f4b7da68b467     5    1     6
+   rev         node index size depth      obshash
+  -  9 f4b7da68b467     0    6     6 000000000000
+  + 10 8aca7f8c9bd2     0   11    11 000000000000
+  +  4 bebd167eb94d     0    5     5 000000000000
+  +  3 2dc09a01254d     0    4     4 000000000000
+     7 42b07e8da27d     0    4     4 000000000000
+  + 10 8aca7f8c9bd2     8    3    11 000000000000
+  +  3 2dc09a01254d     2    2     4 000000000000
+     7 42b07e8da27d     2    2     4 000000000000
+  +  1 66f7d451a68b     0    2     2 000000000000
+     5 de561312eff4     0    2     2 000000000000
+     9 f4b7da68b467     4    2     6 000000000000
+  +  2 01241442b3c2     2    1     3 000000000000
+     0 1ea73414a91b     0    1     1 000000000000
+  +  3 2dc09a01254d     3    1     4 000000000000
+     7 42b07e8da27d     3    1     4 000000000000
+  +  1 66f7d451a68b     1    1     2 000000000000
+     8 857477a9aebb     4    1     5 000000000000
+  + 10 8aca7f8c9bd2    10    1    11 000000000000
+     6 b9bc20507e0b     2    1     3 000000000000
+  +  4 bebd167eb94d     4    1     5 000000000000
+     5 de561312eff4     1    1     2 000000000000
+     9 f4b7da68b467     5    1     6 000000000000
   [1]
 
 Range above the merge, reuse subrange from the merge
 
   $ hg debugstablerange --rev tip
-  rev         node index size depth
-   12 e6b8d5b46647     0   13    13
-    4 bebd167eb94d     0    5     5
-   12 e6b8d5b46647     8    5    13
-    3 2dc09a01254d     0    4     4
-    7 42b07e8da27d     0    4     4
-   11 485383494a89     8    4    12
-    3 2dc09a01254d     2    2     4
-    7 42b07e8da27d     2    2     4
-   11 485383494a89    10    2    12
-    1 66f7d451a68b     0    2     2
-    5 de561312eff4     0    2     2
-    9 f4b7da68b467     4    2     6
-    2 01241442b3c2     2    1     3
-    0 1ea73414a91b     0    1     1
-    3 2dc09a01254d     3    1     4
-    7 42b07e8da27d     3    1     4
-   11 485383494a89    11    1    12
-    1 66f7d451a68b     1    1     2
-    8 857477a9aebb     4    1     5
-   10 8aca7f8c9bd2    10    1    11
-    6 b9bc20507e0b     2    1     3
-    4 bebd167eb94d     4    1     5
-    5 de561312eff4     1    1     2
-   12 e6b8d5b46647    12    1    13
-    9 f4b7da68b467     5    1     6
+  rev         node index size depth      obshash
+   12 e6b8d5b46647     0   13    13 000000000000
+    4 bebd167eb94d     0    5     5 000000000000
+   12 e6b8d5b46647     8    5    13 000000000000
+    3 2dc09a01254d     0    4     4 000000000000
+    7 42b07e8da27d     0    4     4 000000000000
+   11 485383494a89     8    4    12 000000000000
+    3 2dc09a01254d     2    2     4 000000000000
+    7 42b07e8da27d     2    2     4 000000000000
+   11 485383494a89    10    2    12 000000000000
+    1 66f7d451a68b     0    2     2 000000000000
+    5 de561312eff4     0    2     2 000000000000
+    9 f4b7da68b467     4    2     6 000000000000
+    2 01241442b3c2     2    1     3 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    3 2dc09a01254d     3    1     4 000000000000
+    7 42b07e8da27d     3    1     4 000000000000
+   11 485383494a89    11    1    12 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
+    8 857477a9aebb     4    1     5 000000000000
+   10 8aca7f8c9bd2    10    1    11 000000000000
+    6 b9bc20507e0b     2    1     3 000000000000
+    4 bebd167eb94d     4    1     5 000000000000
+    5 de561312eff4     1    1     2 000000000000
+   12 e6b8d5b46647    12    1    13 000000000000
+    9 f4b7da68b467     5    1     6 000000000000
   $ hg debugstablerange --rev 'tip' > tip.range
   $ diff -u merge.range tip.range
   --- merge.range	* (glob)
   +++ tip.range	* (glob)
   @@ -1,11 +1,13 @@
-   rev         node index size depth
-  - 10 8aca7f8c9bd2     0   11    11
-  + 12 e6b8d5b46647     0   13    13
-     4 bebd167eb94d     0    5     5
-  + 12 e6b8d5b46647     8    5    13
-     3 2dc09a01254d     0    4     4
-     7 42b07e8da27d     0    4     4
-  - 10 8aca7f8c9bd2     8    3    11
-  + 11 485383494a89     8    4    12
-     3 2dc09a01254d     2    2     4
-     7 42b07e8da27d     2    2     4
-  + 11 485383494a89    10    2    12
-     1 66f7d451a68b     0    2     2
-     5 de561312eff4     0    2     2
-     9 f4b7da68b467     4    2     6
+   rev         node index size depth      obshash
+  - 10 8aca7f8c9bd2     0   11    11 000000000000
+  + 12 e6b8d5b46647     0   13    13 000000000000
+     4 bebd167eb94d     0    5     5 000000000000
+  + 12 e6b8d5b46647     8    5    13 000000000000
+     3 2dc09a01254d     0    4     4 000000000000
+     7 42b07e8da27d     0    4     4 000000000000
+  - 10 8aca7f8c9bd2     8    3    11 000000000000
+  + 11 485383494a89     8    4    12 000000000000
+     3 2dc09a01254d     2    2     4 000000000000
+     7 42b07e8da27d     2    2     4 000000000000
+  + 11 485383494a89    10    2    12 000000000000
+     1 66f7d451a68b     0    2     2 000000000000
+     5 de561312eff4     0    2     2 000000000000
+     9 f4b7da68b467     4    2     6 000000000000
   @@ -13,10 +15,12 @@
-     0 1ea73414a91b     0    1     1
-     3 2dc09a01254d     3    1     4
-     7 42b07e8da27d     3    1     4
-  + 11 485383494a89    11    1    12
-     1 66f7d451a68b     1    1     2
-     8 857477a9aebb     4    1     5
-    10 8aca7f8c9bd2    10    1    11
-     6 b9bc20507e0b     2    1     3
-     4 bebd167eb94d     4    1     5
-     5 de561312eff4     1    1     2
-  + 12 e6b8d5b46647    12    1    13
-     9 f4b7da68b467     5    1     6
+     0 1ea73414a91b     0    1     1 000000000000
+     3 2dc09a01254d     3    1     4 000000000000
+     7 42b07e8da27d     3    1     4 000000000000
+  + 11 485383494a89    11    1    12 000000000000
+     1 66f7d451a68b     1    1     2 000000000000
+     8 857477a9aebb     4    1     5 000000000000
+    10 8aca7f8c9bd2    10    1    11 000000000000
+     6 b9bc20507e0b     2    1     3 000000000000
+     4 bebd167eb94d     4    1     5 000000000000
+     5 de561312eff4     1    1     2 000000000000
+  + 12 e6b8d5b46647    12    1    13 000000000000
+     9 f4b7da68b467     5    1     6 000000000000
   [1]
 
   $ cd ..
@@ -633,40 +633,40 @@
   o  0 1ea73414a91b r0
   
   $ hg debugstablerange --rev 'head()'
-  rev         node index size depth
-   15 1d8d22637c2d     0    8     8
-    9 dcbb326fdec2     0    7     7
-   10 ff43616e5d0f     0    7     7
-   13 b4594d867745     0    6     6
-   12 e46a4836065c     0    6     6
-    6 2702dd0c91e7     0    5     5
-   15 1d8d22637c2d     4    4     8
-    3 2b6d669947cd     0    4     4
-    5 f0f3ef9a6cd5     0    4     4
-    9 dcbb326fdec2     4    3     7
-   10 ff43616e5d0f     4    3     7
-   15 1d8d22637c2d     6    2     8
-    3 2b6d669947cd     2    2     4
-    1 66f7d451a68b     0    2     2
-   13 b4594d867745     4    2     6
-    8 d62d843c9a01     4    2     6
-   12 e46a4836065c     4    2     6
-    5 f0f3ef9a6cd5     2    2     4
-    2 fa942426a6fd     0    2     2
-   15 1d8d22637c2d     7    1     8
-    0 1ea73414a91b     0    1     1
-    6 2702dd0c91e7     4    1     5
-    3 2b6d669947cd     3    1     4
-   14 43227190fef8     4    1     5
-    4 4c748ffd1a46     2    1     3
-    1 66f7d451a68b     1    1     2
-   13 b4594d867745     5    1     6
-   11 bab5d5bf48bd     4    1     5
-    8 d62d843c9a01     5    1     6
-    9 dcbb326fdec2     6    1     7
-   12 e46a4836065c     5    1     6
-    7 e7d9710d9fc6     4    1     5
-    5 f0f3ef9a6cd5     3    1     4
-    2 fa942426a6fd     1    1     2
-   10 ff43616e5d0f     6    1     7
+  rev         node index size depth      obshash
+   15 1d8d22637c2d     0    8     8 000000000000
+    9 dcbb326fdec2     0    7     7 000000000000
+   10 ff43616e5d0f     0    7     7 000000000000
+   13 b4594d867745     0    6     6 000000000000
+   12 e46a4836065c     0    6     6 000000000000
+    6 2702dd0c91e7     0    5     5 000000000000
+   15 1d8d22637c2d     4    4     8 000000000000
+    3 2b6d669947cd     0    4     4 000000000000
+    5 f0f3ef9a6cd5     0    4     4 000000000000
+    9 dcbb326fdec2     4    3     7 000000000000
+   10 ff43616e5d0f     4    3     7 000000000000
+   15 1d8d22637c2d     6    2     8 000000000000
+    3 2b6d669947cd     2    2     4 000000000000
+    1 66f7d451a68b     0    2     2 000000000000
+   13 b4594d867745     4    2     6 000000000000
+    8 d62d843c9a01     4    2     6 000000000000
+   12 e46a4836065c     4    2     6 000000000000
+    5 f0f3ef9a6cd5     2    2     4 000000000000
+    2 fa942426a6fd     0    2     2 000000000000
+   15 1d8d22637c2d     7    1     8 000000000000
+    0 1ea73414a91b     0    1     1 000000000000
+    6 2702dd0c91e7     4    1     5 000000000000
+    3 2b6d669947cd     3    1     4 000000000000
+   14 43227190fef8     4    1     5 000000000000
+    4 4c748ffd1a46     2    1     3 000000000000
+    1 66f7d451a68b     1    1     2 000000000000
+   13 b4594d867745     5    1     6 000000000000
+   11 bab5d5bf48bd     4    1     5 000000000000
+    8 d62d843c9a01     5    1     6 000000000000
+    9 dcbb326fdec2     6    1     7 000000000000
+   12 e46a4836065c     5    1     6 000000000000
+    7 e7d9710d9fc6     4    1     5 000000000000
+    5 f0f3ef9a6cd5     3    1     4 000000000000
+    2 fa942426a6fd     1    1     2 000000000000
+   10 ff43616e5d0f     6    1     7 000000000000
   $ cd ..