From 9af19c72012372406559d390e57970a967d70854 Mon Sep 17 00:00:00 2001 From: Pierre-Yves David Date: Wed, 26 Mar 2014 18:26:18 -0700 Subject: [PATCH] revsetbenchmark: convert performance call to proper subprocess call --- contrib/revsetbenchmarks.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/contrib/revsetbenchmarks.py b/contrib/revsetbenchmarks.py index fc2a2b779d..7e66e5b76b 100755 --- a/contrib/revsetbenchmarks.py +++ b/contrib/revsetbenchmarks.py @@ -25,7 +25,15 @@ def update(rev): print >> sys.stderr, 'update to revision %s failed, aborting' % rev sys.exit(exc.returncode) -PERF="./hg --config extensions.perf=contrib/perf.py perfrevset" +def perf(revset): + """run benchmark for this very revset""" + try: + check_call(['./hg', '--config', 'extensions.perf=contrib/perf.py', + 'perfrevset', revset]) + except CalledProcessError, exc: + print >> sys.stderr, 'abort: cannot run revset benchmark' + sys.exit(exc.returncode) + target_rev = sys.argv[1] @@ -61,6 +69,6 @@ for r in revs: for idx, rset in enumerate(revsets): sys.stdout.write("%i) " % idx) sys.stdout.flush() - check_call(PERF + ' "%s"' % rset, shell=True) + perf(rset) print "----------------------------"