view contrib/vagrant/run-tests.sh @ 40978:42f59d3f714d

delta: exclude base candidate much smaller than the target If a revision's full text is that much bigger than a base candidate full text, we no longer consider that candidate. This solves a pathological case we encountered on a very specify repository. It contains a long series of changesets with a very small manifest (one file) co-existing with others changesets using a very large manifest. Without this filtering, we ended up considering a large number of tiny full snapshots as a potential base. It resulted in very large delta (the size of the full text) and mercurial spending 99% of its time compressing these deltas. The timing of a commit moved from about 400s to about 10s (still slow, but not ridiculously slow).
author Boris Feld <boris.feld@octobus.net>
date Mon, 17 Dec 2018 10:42:19 +0100
parents 8da01b6e7b49
children
line wrap: on
line source

#!/bin/sh
# This scripts is used to setup temp directory in memory
# for running Mercurial tests in vritual machine managed
# by Vagrant (see Vagrantfile for details).

cd /hgshared
make local
cd tests
mkdir /tmp/ram
sudo mount -t tmpfs -o size=100M tmpfs /tmp/ram
export TMPDIR=/tmp/ram
./run-tests.py -l --time