зеркало из https://github.com/microsoft/git.git
t3311: use test_commit_bulk
One of the tests in t3311 creates 300 commits by running "test_commit" in a loop. This requires 900 processes. Instead, we can use test_commit_bulk to do it with only four. This improves the runtime of the script from: Benchmark #1: ./t3311-notes-merge-fanout.sh --root=/var/ram/git-tests Time (mean ± σ): 5.821 s ± 0.691 s [User: 3.146 s, System: 2.782 s] Range (min … max): 4.783 s … 6.841 s 10 runs to: Benchmark #1: ./t3311-notes-merge-fanout.sh --root=/var/ram/git-tests Time (mean ± σ): 1.743 s ± 0.116 s [User: 1.144 s, System: 0.691 s] Range (min … max): 1.629 s … 1.994 s 10 runs for an average speedup of over 70%. Unfortunately we still have to run 300 instances of "git notes add", since the point is to test the fanout that comes from adding notes one by one. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
1ac96cd1ba
Коммит
737b19b50c
|
@ -114,12 +114,12 @@ cp expect_log_x expect_log_y
|
|||
test_expect_success 'Add a few hundred commits w/notes to trigger fanout (x -> y)' '
|
||||
git update-ref refs/notes/y refs/notes/x &&
|
||||
git config core.notesRef refs/notes/y &&
|
||||
i=5 &&
|
||||
while test $i -lt $num
|
||||
test_commit_bulk --start=6 --id=commit $((num - 5)) &&
|
||||
i=0 &&
|
||||
while test $i -lt $((num - 5))
|
||||
do
|
||||
i=$(($i + 1)) &&
|
||||
test_commit "commit$i" >/dev/null &&
|
||||
git notes add -m "notes for commit$i" || return 1
|
||||
git notes add -m "notes for commit$i" HEAD~$i || return 1
|
||||
i=$((i + 1))
|
||||
done &&
|
||||
test "$(git rev-parse refs/notes/y)" != "$(git rev-parse refs/notes/x)" &&
|
||||
# Expected number of commits and notes
|
||||
|
|
Загрузка…
Ссылка в новой задаче