diff options
author | Derrick Stolee <dstolee@microsoft.com> | 2019-05-17 18:41:48 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-06-12 18:33:54 (GMT) |
commit | 5472c32c3724e1404c3d80368edc28910969c29a (patch) | |
tree | d3b056a5e65caf540396dfecac1a2488457243c0 /packfile.h | |
parent | c3a3a964b29221a9b5fa305a08037c90b9f74be0 (diff) | |
download | git-5472c32c3724e1404c3d80368edc28910969c29a.zip git-5472c32c3724e1404c3d80368edc28910969c29a.tar.gz git-5472c32c3724e1404c3d80368edc28910969c29a.tar.bz2 |
packfile: close commit-graph in close_all_packs
The close_all_packs() method is used to close all read handles to
pack-files and the multi-pack-index before running 'git gc --auto'.
This is particularly important on the Windows platform, where read
handles block any writes to those files. Replacing one of these
files with a rename() will fail in this situation.
The commit-graph also performs a rename, so is susceptable to this
problem. We are careful to close the commit-graph before writing,
but that doesn't work when a 'git fetch' (or similar) process runs
'git gc --auto' which may write a commit-graph.
Here, close the commit-graph as part of close_all_packs().
Reported-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'packfile.h')
0 files changed, 0 insertions, 0 deletions