Mercurial > hg
annotate .hgsigs @ 13259:3b616dfa4b17
revlog: do revlog node->rev mapping by scanning
Now that the nodemap is lazily created, we use linear scanning back
from tip for typical node to rev mapping. Given that nodemap creation
is O(n log n) and revisions searched for are usually very close to
tip, this is often a significant performance win for a small number of
searches.
When we do end up building a nodemap for bulk lookups, the scanning
function is replaced with a hash lookup.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Tue, 11 Jan 2011 21:52:03 -0600 |
parents | 5d1bb1174047 |
children | c10e168cbee2 |
rev | line source |
---|---|
2253
ccd5f17f1eea
Added signature for changeset 35fb62a3a673d5322f6274a44ba6456e5e4b3b37
Matt Mackall <mpm@selenic.com>
parents:
diff
changeset
|
1 35fb62a3a673d5322f6274a44ba6456e5e4b3b37 0 iD8DBQBEYmO2ywK+sNU5EO8RAnaYAKCO7x15xUn5mnhqWNXqk/ehlhRt2QCfRDfY0LrUq2q4oK/KypuJYPHgq1A= |
2660
ad329294d808
Added signature for changeset 2be3001847cb18a23c403439d9e7d0ace30804e9
Matt Mackall <mpm@selenic.com>
parents:
2253
diff
changeset
|
2 2be3001847cb18a23c403439d9e7d0ace30804e9 0 iD8DBQBExUbjywK+sNU5EO8RAhzxAKCtyHAQUzcTSZTqlfJ0by6vhREwWQCghaQFHfkfN0l9/40EowNhuMOKnJk= |
3867
d210a1b05cf6
Added signature for changeset 36a957364b1b89c150f2d0e60a99befe0ee08bd3
Matt Mackall <mpm@selenic.com>
parents:
2660
diff
changeset
|
3 36a957364b1b89c150f2d0e60a99befe0ee08bd3 0 iD8DBQBFfL2QywK+sNU5EO8RAjYFAKCoGlaWRTeMsjdmxAjUYx6diZxOBwCfY6IpBYsKvPTwB3oktnPt5Rmrlys= |
3925
93e5f07baf75
Added signature for changeset 27230c29bfec36d5540fbe1c976810aefecfd1d2
Matt Mackall <mpm@selenic.com>
parents:
3867
diff
changeset
|
4 27230c29bfec36d5540fbe1c976810aefecfd1d2 0 iD8DBQBFheweywK+sNU5EO8RAt7VAKCrqJQWT2/uo2RWf0ZI4bLp6v82jACgjrMdsaTbxRsypcmEsdPhlG6/8F4= |
4725
cf8b8f62688a
Added signature for changeset fb4b6d5fe100b0886f8bc3d6731ec0e5ed5c4694
Matt Mackall <mpm@selenic.com>
parents:
3925
diff
changeset
|
5 fb4b6d5fe100b0886f8bc3d6731ec0e5ed5c4694 0 iD8DBQBGgHicywK+sNU5EO8RAgNxAJ0VG8ixAaeudx4sZbhngI1syu49HQCeNUJQfWBgA8bkJ2pvsFpNxwYaX3I= |
5474
5d8f5ad45c12
Added signature for changeset 23889160905a1b09fffe1c07378e9fc1827606eb
Matt Mackall <mpm@selenic.com>
parents:
4725
diff
changeset
|
6 23889160905a1b09fffe1c07378e9fc1827606eb 0 iD8DBQBHGTzoywK+sNU5EO8RAr/UAJ0Y8s4jQtzgS+G9vM8z6CWBThZ8fwCcCT5XDj2XwxKkz/0s6UELwjsO3LU= |
6388
1e4ddc9ac9f7
Added signature for changeset bae2e9c838e9
Matt Mackall <mpm@selenic.com>
parents:
5474
diff
changeset
|
7 bae2e9c838e90a393bae3973a7850280413e091a 0 iD8DBQBH6DO5ywK+sNU5EO8RAsfrAJ0e4r9c9GF/MJsM7Xjd3NesLRC3+ACffj6+6HXdZf8cswAoFPO+DY00oD0= |
6624
1916e629a29d
Added signature for changeset d5cbbe2c49ce
Matt Mackall <mpm@selenic.com>
parents:
6388
diff
changeset
|
8 d5cbbe2c49cee22a9fbeb9ea41daa0ac4e26b846 0 iD8DBQBINdwsywK+sNU5EO8RAjIUAKCPmlFJSpsPAAUKF+iNHAwVnwmzeQCdEXrL27CWclXuUKdbQC8De7LICtE= |
6883
ee1d26bcd7c2
Added signature for changeset d2375bbee6d4
Matt Mackall <mpm@selenic.com>
parents:
6624
diff
changeset
|
9 d2375bbee6d47e62ba8e415c86e83a465dc4dce9 0 iD8DBQBIo1wpywK+sNU5EO8RAmRNAJ94x3OFt6blbqu/yBoypm/AJ44fuACfUaldXcV5z9tht97hSp22DVTEPGc= |
7463
6aafd75fb924
Added signature for changeset 2a67430f92f1
Matt Mackall <mpm@selenic.com>
parents:
6883
diff
changeset
|
10 2a67430f92f15ea5159c26b09ec4839a0c549a26 0 iEYEABECAAYFAkk1hykACgkQywK+sNU5EO85QACeNJNUanjc2tl4wUoPHNuv+lSj0ZMAoIm93wSTc/feyYnO2YCaQ1iyd9Nu |
7532
45b79d3e393e
Added signature for changeset 3773e510d433
Matt Mackall <mpm@selenic.com>
parents:
7463
diff
changeset
|
11 3773e510d433969e277b1863c317b674cbee2065 0 iEYEABECAAYFAklNbbAACgkQywK+sNU5EO8o+gCfeb2/lfIJZMvyDA1m+G1CsBAxfFsAoIa6iAMG8SBY7hW1Q85Yf/LXEvaE |
7556
f03562400824
Added signature for changeset 11a4eb81fb4f
Matt Mackall <mpm@selenic.com>
parents:
7532
diff
changeset
|
12 11a4eb81fb4f4742451591489e2797dc47903277 0 iEYEABECAAYFAklcAnsACgkQywK+sNU5EO+uXwCbBVHNNsLy1g7BlAyQJwadYVyHOXoAoKvtAVO71+bv7EbVoukwTzT+P4Sx |
7825
6542be5df719
Added signature for changeset 11efa41037e2
Matt Mackall <mpm@selenic.com>
parents:
7556
diff
changeset
|
13 11efa41037e280d08cfb07c09ad485df30fb0ea8 0 iEYEABECAAYFAkmvJRQACgkQywK+sNU5EO9XZwCeLMgDgPSMWMm6vgjL4lDs2pEc5+0AnRxfiFbpbBfuEFTqKz9nbzeyoBlx |
7864
c4a73d54126a
Added signature for changeset 02981000012e
Matt Mackall <mpm@selenic.com>
parents:
7825
diff
changeset
|
14 02981000012e3adf40c4849bd7b3d5618f9ce82d 0 iEYEABECAAYFAknEH3wACgkQywK+sNU5EO+uXwCeI+LbLMmhjU1lKSfU3UWJHjjUC7oAoIZLvYDGOL/tNZFUuatc3RnZ2eje |
9011
b81baf9e4dd6
Added signature for changeset 196d40e7c885
Matt Mackall <mpm@selenic.com>
parents:
7864
diff
changeset
|
15 196d40e7c885fa6e95f89134809b3ec7bdbca34b 0 iEYEABECAAYFAkpL2X4ACgkQywK+sNU5EO9FOwCfXJycjyKJXsvQqKkHrglwOQhEKS4An36GfKzptfN8b1qNc3+ya/5c2WOM |
9192
2250b5f1ab76
Added signature for changeset 3ef6c14a1e8e
Matt Mackall <mpm@selenic.com>
parents:
9011
diff
changeset
|
16 3ef6c14a1e8e83a31226f5881b7fe6095bbfa6f6 0 iEYEABECAAYFAkpopLIACgkQywK+sNU5EO8QSgCfZ0ztsd071rOa2lhmp9Fyue/WoI0AoLTei80/xrhRlB8L/rZEf2KBl8dA |
9871
57949bfec718
Added signature for changeset 31ec469f9b55
Matt Mackall <mpm@selenic.com>
parents:
9192
diff
changeset
|
17 31ec469f9b556f11819937cf68ee53f2be927ebf 0 iEYEABECAAYFAksBuxAACgkQywK+sNU5EO+mBwCfagB+A0txzWZ6dRpug3LEoK7Z1QsAoKpbk8vsLjv6/oRDicSk/qBu33+m |
9987
ed290e503b8a
Added signature for changeset 439d7ea6fe3a
Matt Mackall <mpm@selenic.com>
parents:
9871
diff
changeset
|
18 439d7ea6fe3aa4ab9ec274a68846779153789de9 0 iEYEABECAAYFAksVw0kACgkQywK+sNU5EO/oZwCfdfBEkgp38xq6wN2F4nj+SzofrJIAnjmxt04vaJSeOOeHylHvk6lzuQsw |
10194
a275c3997e03
Added signature for changeset 296a0b14a686
Matt Mackall <mpm@selenic.com>
parents:
9987
diff
changeset
|
19 296a0b14a68621f6990c54fdba0083f6f20935bf 0 iEYEABECAAYFAks+jCoACgkQywK+sNU5EO9J8wCeMUGF9E/gS2UBsqIz56WS4HMPRPUAoI5J95mwEIK8Clrl7qFRidNI6APq |
10311
7c5eb0988e7a
Added signature for changeset 4aa619c4c2c0
Matt Mackall <mpm@selenic.com>
parents:
10194
diff
changeset
|
20 4aa619c4c2c09907034d9824ebb1dd0e878206eb 0 iEYEABECAAYFAktm9IsACgkQywK+sNU5EO9XGgCgk4HclRQhexEtooPE5GcUCdB6M8EAn2ptOhMVbIoO+JncA+tNACPFXh0O |
10593
cbea16fb46c3
Added signature for changeset ff2704a8ded3
Matt Mackall <mpm@selenic.com>
parents:
10311
diff
changeset
|
21 ff2704a8ded37fbebd8b6eb5ec733731d725da8a 0 iEYEABECAAYFAkuRoSQACgkQywK+sNU5EO//3QCeJDc5r2uFyFCtAlpSA27DEE5rrxAAn2FSwTy9fhrB3QAdDQlwkEZcQzDh |
10812
37a5a397f150
Added signature for changeset 2b01dab59416
Matt Mackall <mpm@selenic.com>
parents:
10593
diff
changeset
|
22 2b01dab594167bc0dd33331dbaa6dca3dca1b3aa 0 iEYEABECAAYFAku1IwIACgkQywK+sNU5EO9MjgCdHLVwkTZlNHxhcznZKBL1rjN+J7cAoLLWi9LTL6f/TgBaPSKOy1ublbaW |
11082
b8d0b4721aff
Added signature for changeset 39f725929f0c
Matt Mackall <mpm@selenic.com>
parents:
10812
diff
changeset
|
23 39f725929f0c48c5fb3b90c071fc3066012456ca 0 iEYEABECAAYFAkvclvsACgkQywK+sNU5EO9FSwCeL9i5x8ALW/LE5+lCX6MFEAe4MhwAn1ev5o6SX6GrNdDfKweiemfO2VBk |
11171
3b3261f6d9ba
Added signature for changeset fdcf80f26604
Matt Mackall <mpm@selenic.com>
parents:
11082
diff
changeset
|
24 fdcf80f26604f233dc4d8f0a5ef9d7470e317e8a 0 iEYEABECAAYFAkvsKTkACgkQywK+sNU5EO9qEACgiSiRGvTG2vXGJ65tUSOIYihTuFAAnRzRIqEVSw8M8/RGeUXRps0IzaCO |
11261
5ce1949be1e3
Added signature for changeset 24fe2629c6fd
Matt Mackall <mpm@selenic.com>
parents:
11171
diff
changeset
|
25 24fe2629c6fd0c74c90bd066e77387c2b02e8437 0 iEYEABECAAYFAkwFLRsACgkQywK+sNU5EO+pJACgp13tPI+pbwKZV+LeMjcQ4H6tCZYAoJebzhd6a8yYx6qiwpJxA9BXZNXy |
11490
b2468fb58b2b
Added signature for changeset f786fc4b8764
Matt Mackall <mpm@selenic.com>
parents:
11261
diff
changeset
|
26 f786fc4b8764cd2a5526d259cf2f94d8a66924d9 0 iEYEABECAAYFAkwsyxcACgkQywK+sNU5EO+crACfUpNAF57PmClkSri9nJcBjb2goN4AniPCNaKvnki7TnUsi1u2oxltpKKL |
11725
56b41b2cc690
Added signature for changeset bf1774d95bde
Matt Mackall <mpm@selenic.com>
parents:
11490
diff
changeset
|
27 bf1774d95bde614af3956d92b20e2a0c68c5fec7 0 iEYEABECAAYFAkxVwccACgkQywK+sNU5EO+oFQCeJzwZ+we1fIIyBGCddHceOUAN++cAnjvT6A8ZWW0zV21NXIFF1qQmjxJd |
11738
28a450e1f54c
Added signature for changeset c00f03a4982e
Matt Mackall <mpm@selenic.com>
parents:
11725
diff
changeset
|
28 c00f03a4982e467fb6b6bd45908767db6df4771d 0 iEYEABECAAYFAkxXDqsACgkQywK+sNU5EO/GJACfT9Rz4hZOxPQEs91JwtmfjevO84gAmwSmtfo5mmWSm8gtTUebCcdTv0Kf |
12053
b10b07a821c3
Added signature for changeset ff5cec76b1c5
Matt Mackall <mpm@selenic.com>
parents:
11738
diff
changeset
|
29 ff5cec76b1c5b6be9c3bb923aae8c3c6d079d6b9 0 iD8DBQBMdo+qywK+sNU5EO8RAqQpAJ975BL2CCAiWMz9SXthNQ9xG181IwCgp4O+KViHPkufZVFn2aTKMNvcr1A= |
12611
1f6bd49383b3
Added signature for changeset 93d8bff78c96
Matt Mackall <mpm@selenic.com>
parents:
12053
diff
changeset
|
30 93d8bff78c96fe7e33237b257558ee97290048a4 0 iD8DBQBMpfvdywK+sNU5EO8RAsxVAJ0UaL1XB51C76JUBhafc9GBefuMxwCdEWkTOzwvE0SarJBe9i008jhbqW4= |
12911
f766882000c7
Added signature for changeset 333421b9e0f9
Matt Mackall <mpm@selenic.com>
parents:
12611
diff
changeset
|
31 333421b9e0f96c7bc788e5667c146a58a9440a55 0 iD8DBQBMz0HOywK+sNU5EO8RAlsEAJ0USh6yOG7OrWkADGunVt9QimBQnwCbBqeMnKgSbwEw8jZwE3Iz1mdrYlo= |
12989
827aa0992cea
Added signature for changeset 4438875ec01b
Matt Mackall <mpm@selenic.com>
parents:
12911
diff
changeset
|
32 4438875ec01bd0fc32be92b0872eb6daeed4d44f 0 iD8DBQBM4WYUywK+sNU5EO8RAhCVAJ0dJswachwFAHALmk1x0RJehxzqPQCbBNskP9n/X689jB+btNTZTyKU/fw= |
13071
5e51254ad4d4
Added signature for changeset 6aff4f144ad3
Matt Mackall <mpm@selenic.com>
parents:
12989
diff
changeset
|
33 6aff4f144ad356311318b0011df0bb21f2c97429 0 iD8DBQBM9uxXywK+sNU5EO8RAv+4AKCDj4qKP16GdPaq1tP6BUwpM/M1OACfRyzLPp/qiiN8xJTWoWYSe/XjJug= |
13227
5d1bb1174047
Added signature for changeset e3bf16703e26
Matt Mackall <mpm@selenic.com>
parents:
13071
diff
changeset
|
34 e3bf16703e2601de99e563cdb3a5d50b64e6d320 0 iD8DBQBNH8WqywK+sNU5EO8RAiQTAJ9sBO+TeiGro4si77VVaQaA6jcRUgCfSA28dBbjj0oFoQwvPoZjANiZBH8= |