Mercurial > hg
view tests/test-archive-symlinks.t @ 21810:4b2ebd3187a1
dirstate.status: assign members one by one instead of unpacking the tuple
With this patch, hg status and hg diff regain their previous speed.
The following tests are run against a working copy with over 270,000 files.
Here, 'before' means without this or the previous patch applied.
Note that in this case `hg perfstatus` isn't representative since it doesn't
take dirstate parsing time into account.
$ time hg status # best of 5
before: 2.03s user 1.25s system 99% cpu 3.290 total
after: 2.01s user 1.25s system 99% cpu 3.261 total
$ time hg diff # best of 5
before: 1.32s user 0.78s system 99% cpu 2.105 total
after: 1.27s user 0.79s system 99% cpu 2.066 total
author | Siddharth Agarwal <sid0@fb.com> |
---|---|
date | Tue, 27 May 2014 21:02:16 -0700 |
parents | 6d632cf8a811 |
children | 7a9cbb315d84 |
line wrap: on
line source
$ "$TESTDIR/hghave" symlink || exit 80 $ origdir=`pwd` $ hg init repo $ cd repo $ ln -s nothing dangling avoid tar warnings about old timestamp $ hg ci -d '2000-01-01 00:00:00 +0000' -qAm 'add symlink' $ hg archive -t files ../archive $ hg archive -t tar -p tar ../archive.tar $ hg archive -t zip -p zip ../archive.zip files $ cd "$origdir" $ cd archive $ "$TESTDIR/readlink.py" dangling dangling -> nothing tar $ cd "$origdir" $ tar xf archive.tar $ cd tar $ "$TESTDIR/readlink.py" dangling dangling -> nothing zip $ cd "$origdir" $ unzip archive.zip > /dev/null 2>&1 $ cd zip $ "$TESTDIR/readlink.py" dangling dangling -> nothing $ cd ..