[PATCH v2 3/3] p0003-index.sh: add perf test for the index formats
- From
Thomas Gummerer <t.gummerer@gmail.com>
- Date
- Sep 23, 2013, 21:08 UTC
- Message-ID
- <1379970526-27997-4-git-send-email-t.gummerer@gmail.com>
- In-Reply-To
- <1379970526-27997-1-git-send-email-t.gummerer@gmail.com>
From: Thomas Rast <trast@inf.ethz.ch>
Add a performance test for index version [23]/4 by using git update-index --index-version=x, thus testing both the reader and the writer speed of all index formats.
Signed-off-by: Thomas Rast <trast@inf.ethz.ch> Signed-off-by: Thomas Gummerer <t.gummerer@gmail.com> --- t/perf/p0003-index.sh | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100755 t/perf/p0003-index.sh
diff --git a/t/perf/p0003-index.sh b/t/perf/p0003-index.sh new file mode 100755 index 0000000..f2308c0 --- /dev/null +++ b/t/perf/p0003-index.sh @@ -0,0 +1,56 @@ +#!/bin/sh + +test_description="Tests index versions [23]/4/5" + +. ./perf-lib.sh + +test_perf_large_repo +test_checkout_worktree + +test_expect_success "convert to v3" " + git update-index --index-version=2 +" +subdir=$(git ls-files | sed 's#/[^/]*$##' | grep -v '^$' | uniq | tail -n 30 | head -1) +file=$(git ls-files | tail -n 100 | head -1) + +test_expect_success "modify a file" " + echo 'foo bar' >>$file +" + +test_perf "v[23]: update-index" " + git update-index --index-version=2 >/dev/null +" + +test_perf "v[23]: grep nonexistent -- subdir" " + test_must_fail git grep nonexistent -- $subdir >/dev/null +" + +test_perf "v[23]: ls-files -- subdir" " + git ls-files $subdir >/dev/null +" + +test_perf --cleanup "git reset" "v[23]: update-index -- file" " + git update-index $file +" + +test_expect_success "convert to v4" " + git update-index --index-version=4 +" + +test_perf "v4: update-index" " + git update-index --index-version=4 >/dev/null +" + +test_perf "v4: grep nonexistent -- subdir" " + test_must_fail git grep nonexistent -- $subdir >/dev/null +" + +test_perf "v4: ls-files -- subdir" " + git ls-files $subdir >/dev/null +" + +test_perf --cleanup "git reset" "v4: update-index -- file" " + git update-index $file +" + +test_done
-- 1.8.3.4.1241.g1ce9896