Show More
@@ -1014,7 +1014,7 b' def perfignore(ui, repo, **opts):' | |||
|
1014 | 1014 | fm.end() |
|
1015 | 1015 | |
|
1016 | 1016 | @command(b'perfindex', [ |
|
1017 |
(b'', b'rev', |
|
|
1017 | (b'', b'rev', [], b'revision to be looked up (default tip)'), | |
|
1018 | 1018 | (b'', b'no-lookup', None, b'do not revision lookup post creation'), |
|
1019 | 1019 | ] + formatteropts) |
|
1020 | 1020 | def perfindex(ui, repo, **opts): |
@@ -1023,7 +1023,18 b' def perfindex(ui, repo, **opts):' | |||
|
1023 | 1023 | The default is to look `tip` up. Depending on the index implementation, |
|
1024 | 1024 | the revision looked up can matters. For example, an implementation |
|
1025 | 1025 | scanning the index will have a faster lookup time for `--rev tip` than for |
|
1026 | `--rev 0`. | |
|
1026 | `--rev 0`. The number of looked up revisions and their order can also | |
|
1027 | matters. | |
|
1028 | ||
|
1029 | Example of useful set to test: | |
|
1030 | * tip | |
|
1031 | * 0 | |
|
1032 | * -10: | |
|
1033 | * :10 | |
|
1034 | * -10: + :10 | |
|
1035 | * :10: + -10: | |
|
1036 | * -10000: | |
|
1037 | * -10000: + 0 | |
|
1027 | 1038 | |
|
1028 | 1039 | It is not currently possible to check for lookup of a missing node.""" |
|
1029 | 1040 | import mercurial.revlog |
@@ -1031,12 +1042,15 b' def perfindex(ui, repo, **opts):' | |||
|
1031 | 1042 | timer, fm = gettimer(ui, opts) |
|
1032 | 1043 | mercurial.revlog._prereadsize = 2**24 # disable lazy parser in old hg |
|
1033 | 1044 | if opts[b'no_lookup']: |
|
1034 | n = None | |
|
1035 | elif opts[b'rev'] is None: | |
|
1036 | n = repo[b"tip"].node() | |
|
1045 | if opts['rev']: | |
|
1046 | raise error.Abort('--no-lookup and --rev are mutually exclusive') | |
|
1047 | nodes = [] | |
|
1048 | elif not opts[b'rev']: | |
|
1049 | nodes = [repo[b"tip"].node()] | |
|
1037 | 1050 | else: |
|
1038 |
rev = scmutil.rev |
|
|
1039 |
|
|
|
1051 | revs = scmutil.revrange(repo, opts[b'rev']) | |
|
1052 | cl = repo.changelog | |
|
1053 | nodes = [cl.node(r) for r in revs] | |
|
1040 | 1054 | |
|
1041 | 1055 | unfi = repo.unfiltered() |
|
1042 | 1056 | # find the filecache func directly |
@@ -1047,7 +1061,7 b' def perfindex(ui, repo, **opts):' | |||
|
1047 | 1061 | clearchangelog(unfi) |
|
1048 | 1062 | def d(): |
|
1049 | 1063 | cl = makecl(unfi) |
|
1050 |
|
|
|
1064 | for n in nodes: | |
|
1051 | 1065 | cl.rev(n) |
|
1052 | 1066 | timer(d, setup=setup) |
|
1053 | 1067 | fm.end() |
General Comments 0
You need to be logged in to leave comments.
Login now