Show More
@@ -357,6 +357,14 b' def repocleartagscachefunc(repo):' | |||||
357 | # - perf.py itself has been available since 1.1 (or eb240755386d) |
|
357 | # - perf.py itself has been available since 1.1 (or eb240755386d) | |
358 | raise error.Abort(("tags API of this hg command is unknown")) |
|
358 | raise error.Abort(("tags API of this hg command is unknown")) | |
359 |
|
359 | |||
|
360 | # utilities to clear cache | |||
|
361 | ||||
|
362 | def clearfilecache(repo, attrname): | |||
|
363 | unfi = repo.unfiltered() | |||
|
364 | if attrname in vars(unfi): | |||
|
365 | delattr(unfi, attrname) | |||
|
366 | unfi._filecache.pop(attrname, None) | |||
|
367 | ||||
360 | # perf commands |
|
368 | # perf commands | |
361 |
|
369 | |||
362 | @command('perfwalk', formatteropts) |
|
370 | @command('perfwalk', formatteropts) | |
@@ -1259,12 +1267,6 b' def perfrevset(ui, repo, expr, clear=Fal' | |||||
1259 | timer(d) |
|
1267 | timer(d) | |
1260 | fm.end() |
|
1268 | fm.end() | |
1261 |
|
1269 | |||
1262 | def _clearobsstore(repo): |
|
|||
1263 | unfi = repo.unfiltered() |
|
|||
1264 | if 'obsstore' in vars(unfi): |
|
|||
1265 | del unfi.obsstore |
|
|||
1266 | del unfi._filecache['obsstore'] |
|
|||
1267 |
|
||||
1268 | @command('perfvolatilesets', |
|
1270 | @command('perfvolatilesets', | |
1269 | [('', 'clear-obsstore', False, 'drop obsstore between each call.'), |
|
1271 | [('', 'clear-obsstore', False, 'drop obsstore between each call.'), | |
1270 | ] + formatteropts) |
|
1272 | ] + formatteropts) | |
@@ -1279,7 +1281,7 b' def perfvolatilesets(ui, repo, *names, *' | |||||
1279 | def d(): |
|
1281 | def d(): | |
1280 | repo.invalidatevolatilesets() |
|
1282 | repo.invalidatevolatilesets() | |
1281 | if opts['clear_obsstore']: |
|
1283 | if opts['clear_obsstore']: | |
1282 |
|
|
1284 | clearfilecache(repo, 'obsstore') | |
1283 | obsolete.getrevs(repo, name) |
|
1285 | obsolete.getrevs(repo, name) | |
1284 | return d |
|
1286 | return d | |
1285 |
|
1287 | |||
@@ -1294,7 +1296,7 b' def perfvolatilesets(ui, repo, *names, *' | |||||
1294 | def d(): |
|
1296 | def d(): | |
1295 | repo.invalidatevolatilesets() |
|
1297 | repo.invalidatevolatilesets() | |
1296 | if opts['clear_obsstore']: |
|
1298 | if opts['clear_obsstore']: | |
1297 |
|
|
1299 | clearfilecache(repo, 'obsstore') | |
1298 | repoview.filterrevs(repo, name) |
|
1300 | repoview.filterrevs(repo, name) | |
1299 | return d |
|
1301 | return d | |
1300 |
|
1302 |
General Comments 0
You need to be logged in to leave comments.
Login now