comparison contrib/revsetbenchmarks.py @ 20851:4130ec938c84

revsetbenchmark: convert performance call to proper subprocess call
author Pierre-Yves David <pierre-yves.david@fb.com>
date Wed, 26 Mar 2014 18:26:18 -0700
parents d0c2535c7aba
children b2353501d6dc
comparison
equal deleted inserted replaced
20850:d0c2535c7aba 20851:4130ec938c84
23 check_call(['hg', 'update', '--quiet', '--check', str(rev)]) 23 check_call(['hg', 'update', '--quiet', '--check', str(rev)])
24 except CalledProcessError, exc: 24 except CalledProcessError, exc:
25 print >> sys.stderr, 'update to revision %s failed, aborting' % rev 25 print >> sys.stderr, 'update to revision %s failed, aborting' % rev
26 sys.exit(exc.returncode) 26 sys.exit(exc.returncode)
27 27
28 PERF="./hg --config extensions.perf=contrib/perf.py perfrevset" 28 def perf(revset):
29 """run benchmark for this very revset"""
30 try:
31 check_call(['./hg', '--config', 'extensions.perf=contrib/perf.py',
32 'perfrevset', revset])
33 except CalledProcessError, exc:
34 print >> sys.stderr, 'abort: cannot run revset benchmark'
35 sys.exit(exc.returncode)
36
29 37
30 target_rev = sys.argv[1] 38 target_rev = sys.argv[1]
31 39
32 revsetsfile = sys.stdin 40 revsetsfile = sys.stdin
33 if len(sys.argv) > 2: 41 if len(sys.argv) > 2:
59 print "----------------------------" 67 print "----------------------------"
60 update(r) 68 update(r)
61 for idx, rset in enumerate(revsets): 69 for idx, rset in enumerate(revsets):
62 sys.stdout.write("%i) " % idx) 70 sys.stdout.write("%i) " % idx)
63 sys.stdout.flush() 71 sys.stdout.flush()
64 check_call(PERF + ' "%s"' % rset, shell=True) 72 perf(rset)
65 print "----------------------------" 73 print "----------------------------"
66 74