Mercurial > hg
annotate contrib/vagrant/run-tests.sh @ 30706:2e4862646f02
repair: speed up stripping of many roots
repair.strip() expects a set of root revisions to strip. It then
builds the full set of descedants by walking the descandants of
each. It is rare that more than a few roots get passed in, but if that
happens, it will wastefully walk the changelog for each root. So let's
just walk it once.
I noticed this because the narrowhg extension was passing not only
roots, but all the commits to strip. When there were tens of thousands
of commits to strip, this resulted in quadratic behavior with that
extension.
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Wed, 04 Jan 2017 10:07:12 -0800 |
parents | 8da01b6e7b49 |
children |
rev | line source |
---|---|
21874
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
1 #!/bin/sh |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
2 # This scripts is used to setup temp directory in memory |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
3 # for running Mercurial tests in vritual machine managed |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
4 # by Vagrant (see Vagrantfile for details). |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
5 |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
6 cd /hgshared |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
7 make local |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
8 cd tests |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
9 mkdir /tmp/ram |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
10 sudo mount -t tmpfs -o size=100M tmpfs /tmp/ram |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
11 export TMPDIR=/tmp/ram |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
12 ./run-tests.py -l --time |
8da01b6e7b49
contrib/vagrant: use Vagrant for running tests on virtual machine
anatoly techtonik <techtonik@gmail.com>
parents:
diff
changeset
|
13 |