diff options
| author | Emily Shaffer <emilyshaffer@google.com> | 2025-12-26 14:23:25 +0200 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2025-12-28 14:02:06 +0900 |
| commit | 23a720e96b98cb492077a2d23107df31dbc17a96 (patch) | |
| tree | cbba2409d0f82f9e40e6479d42692bf0e0a49051 /contrib/persistent-https | |
| parent | 56cef1e504d7d111b4acb588dfa1a12e5ab550b9 (diff) | |
| download | git-23a720e96b98cb492077a2d23107df31dbc17a96.tar.gz git-23a720e96b98cb492077a2d23107df31dbc17a96.zip | |
run-command: add stdin callback for parallelization
If a user of the run_processes_parallel() API wants to pipe a large
amount of information to the stdin of each parallel command, that
data could exceed the pipe buffer of the process's stdin and can be
too big to store in-memory via strbuf & friends or to slurp to a file.
Generally this is solved by repeatedly writing to child_process.in
between calls to start_command() and finish_command(). For a specific
pre-existing example of this, see transport.c:run_pre_push_hook().
This adds a generic callback API to run_processes_parallel() to do
exactly that in a unified manner, similar to the existing callback APIs,
which can then be used by hooks.h to convert the remaining hooks to the
new, simpler parallel interface.
Signed-off-by: Emily Shaffer <emilyshaffer@google.com>
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Adrian Ratiu <adrian.ratiu@collabora.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'contrib/persistent-https')
0 files changed, 0 insertions, 0 deletions
