perftest: add an option to invalidate volatile cache
authorPierre-Yves David <pierre-yves.david@logilab.fr>
Fri, 04 Jan 2013 19:22:40 +0100
changeset 18239 a95f1d619bb7
parent 18238 1f991e625d01
child 18240 a8318715d8bb
perftest: add an option to invalidate volatile cache Some revsets are sensitive to such initialization. Being able to test the impact is great.
contrib/perf.py
--- a/contrib/perf.py	Fri Jan 04 19:22:15 2013 +0100
+++ b/contrib/perf.py	Fri Jan 04 19:22:40 2013 +0100
@@ -261,10 +261,17 @@
 
     timer(d)
 
-@command('perfrevset',[],
+@command('perfrevset',
+         [('C', 'clear', False, 'clear volatile cache between each call.')],
          "REVSET")
-def perfrevset(ui, repo, expr):
-    """benchmark the execution time of a revset"""
+def perfrevset(ui, repo, expr, clear=False):
+    """benchmark the execution time of a revset
+
+    Use the --clean option if need to evaluate the impact of build volative
+    revisions set cache on the revset execution. Volatile cache hold filtered
+    and obsolete related cache."""
     def d():
+        if clear:
+            repo.invalidatevolatilesets()
         repo.revs(expr)
     timer(d)