mirror of
https://github.com/git/git.git
synced 2026-03-12 01:49:49 +01:00
csum-file: drop hashfd_throughput()
The `hashfd_throughput()` function is used by a single callsite in git-pack-objects(1). In contrast to `hashfd()`, this function uses a progress meter to measure throughput and a smaller buffer length so that the progress meter can provide more granular metrics. We're going to change that caller in the next commit to be a bit more specific to packing objects. As such, `hashfd_throughput()` will be a somewhat unfitting mechanism for any potential new callers. Drop the function and replace it with a call to `hashfd_ext()`. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
25d41000f5
commit
1d58d66c0e
@@ -1331,11 +1331,22 @@ static void write_pack_file(void)
|
||||
unsigned char hash[GIT_MAX_RAWSZ];
|
||||
char *pack_tmp_name = NULL;
|
||||
|
||||
if (pack_to_stdout)
|
||||
f = hashfd_throughput(the_repository->hash_algo, 1,
|
||||
"<stdout>", progress_state);
|
||||
else
|
||||
if (pack_to_stdout) {
|
||||
/*
|
||||
* Since we are expecting to report progress of the
|
||||
* write into this hashfile, use a smaller buffer
|
||||
* size so the progress indicators arrive at a more
|
||||
* frequent rate.
|
||||
*/
|
||||
struct hashfd_options opts = {
|
||||
.progress = progress_state,
|
||||
.buffer_len = 8 * 1024,
|
||||
};
|
||||
f = hashfd_ext(the_repository->hash_algo, 1,
|
||||
"<stdout>", &opts);
|
||||
} else {
|
||||
f = create_tmp_packfile(the_repository, &pack_tmp_name);
|
||||
}
|
||||
|
||||
offset = write_pack_header(f, nr_remaining);
|
||||
|
||||
|
||||
16
csum-file.c
16
csum-file.c
@@ -197,22 +197,6 @@ struct hashfile *hashfd(const struct git_hash_algo *algop,
|
||||
return hashfd_ext(algop, fd, name, &opts);
|
||||
}
|
||||
|
||||
struct hashfile *hashfd_throughput(const struct git_hash_algo *algop,
|
||||
int fd, const char *name, struct progress *tp)
|
||||
{
|
||||
/*
|
||||
* Since we are expecting to report progress of the
|
||||
* write into this hashfile, use a smaller buffer
|
||||
* size so the progress indicators arrive at a more
|
||||
* frequent rate.
|
||||
*/
|
||||
struct hashfd_options opts = {
|
||||
.progress = tp,
|
||||
.buffer_len = 8 * 1024,
|
||||
};
|
||||
return hashfd_ext(algop, fd, name, &opts);
|
||||
}
|
||||
|
||||
void hashfile_checkpoint_init(struct hashfile *f,
|
||||
struct hashfile_checkpoint *checkpoint)
|
||||
{
|
||||
|
||||
@@ -63,8 +63,6 @@ struct hashfile *hashfd(const struct git_hash_algo *algop,
|
||||
int fd, const char *name);
|
||||
struct hashfile *hashfd_check(const struct git_hash_algo *algop,
|
||||
const char *name);
|
||||
struct hashfile *hashfd_throughput(const struct git_hash_algo *algop,
|
||||
int fd, const char *name, struct progress *tp);
|
||||
|
||||
/*
|
||||
* Free the hashfile without flushing its contents to disk. This only
|
||||
|
||||
Reference in New Issue
Block a user