diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-11-13 16:36:30 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-11-14 19:11:49 -0800 |
commit | 671c9b7e315db89081cc69f83a8f405e4aca37bc (patch) | |
tree | 0410fb1af855fc65a7d96dd15410db16e41cbc9f /builtin-diff-files.c | |
parent | a0d3ab9c277f1a198ec8e29432c0127d4cf719d2 (diff) | |
download | git-671c9b7e315db89081cc69f83a8f405e4aca37bc.tar.gz git-671c9b7e315db89081cc69f83a8f405e4aca37bc.tar.xz |
Add cache preload facility
This can do the lstat() storm in parallel, giving potentially much
improved performance for cold-cache cases or things like NFS that have
weak metadata caching.
Just use "read_cache_preload()" instead of "read_cache()" to force an
optimistic preload of the index stat data. The function takes a
pathspec as its argument, allowing us to preload only the relevant
portion of the index.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-diff-files.c')
-rw-r--r-- | builtin-diff-files.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/builtin-diff-files.c b/builtin-diff-files.c index 2b578c714..5b64011de 100644 --- a/builtin-diff-files.c +++ b/builtin-diff-files.c @@ -59,8 +59,8 @@ int cmd_diff_files(int argc, const char **argv, const char *prefix) (rev.diffopt.output_format & DIFF_FORMAT_PATCH)) rev.combine_merges = rev.dense_combined_merges = 1; - if (read_cache() < 0) { - perror("read_cache"); + if (read_cache_preload(rev.diffopt.paths) < 0) { + perror("read_cache_preload"); return -1; } result = run_diff_files(&rev, options); |