Merge branch 'ma/up-to-date'
[git] / t / perf / p0003-delta-base-cache.sh
1 #!/bin/sh
2
3 test_description='Test operations that emphasize the delta base cache.
4
5 We look at both "log --raw", which should put only trees into the delta cache,
6 and "log -Sfoo --raw", which should look at both trees and blobs.
7
8 Any effects will be emphasized if the test repository is fully packed (loose
9 objects obviously do not use the delta base cache at all). It is also
10 emphasized if the pack has long delta chains (e.g., as produced by "gc
11 --aggressive"), though cache is still quite noticeable even with the default
12 depth of 50.
13
14 The setting of core.deltaBaseCacheLimit in the source repository is also
15 relevant (depending on the size of your test repo), so be sure it is consistent
16 between runs.
17 '
18 . ./perf-lib.sh
19
20 test_perf_large_repo
21
22 # puts mostly trees into the delta base cache
23 test_perf 'log --raw' '
24         git log --raw >/dev/null
25 '
26
27 test_perf 'log -S' '
28         git log --raw -Sfoo >/dev/null
29 '
30
31 test_done