Homec4science

Limit memory usage of `ssh-exec` during large pull operations

Authored by epriestley <git@epriestley.com> on Dec 16 2013, 21:37.

Description

Limit memory usage of ssh-exec during large pull operations

Summary: Fixes T4241. Ref T4206. See T4241 for a description here. Generally, when we connect a fat pipe (git-upload-pack) to a narrow one (git over SSH) we currently read limitless data into memory. Instead, throttle reads until writes catch up. This is now possible because of the previous changes in this sequence.

Test Plan:

  • Ran git clone and git push on the entire Wine repository.
  • Observed CPU and memory usage.
  • Memory usage was constant and low, CPU usage was high only during I/O (which is expected, since we have to actually do work, although thre might be room to further reduce this).

Reviewers: btrahan

Reviewed By: btrahan

CC: aran

Maniphest Tasks: T4241, T4206

Differential Revision: https://secure.phabricator.com/D7776

Details

Committed
epriestley <git@epriestley.com>Dec 16 2013, 21:37
Pushed
aubortJan 31 2017, 17:16
Parents
rPH537f2eabee91: Make it harder to misconfigure `phpmailer.smtp-protocol`
Branches
Unknown
Tags
Unknown

Event Timeline

epriestley <git@epriestley.com> committed rPHf7464400a510: Limit memory usage of `ssh-exec` during large pull operations (authored by epriestley <git@epriestley.com>).Dec 16 2013, 21:37