Mercurial > hg
view tests/test-archive-symlinks.t @ 18869:e8b4b139a545
dirstate: only call lstat once per flags invocation
This makes a big difference to performance in some cases.
hg --time locate 'set:symlink()'
mozilla-central (70,000 files):
before: 2.92 sec
after: 2.47
another repo (170,000 files):
before: 7.87 sec
after: 6.86
author | Bryan O'Sullivan <bryano@fb.com> |
---|---|
date | Wed, 03 Apr 2013 11:35:27 -0700 |
parents | f2719b387380 |
children | 6d632cf8a811 |
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 $ cd zip $ "$TESTDIR/readlink.py" dangling dangling -> nothing $ cd ..