[PU PATCH] Fix git fetch for very large ref counts
- From
Julian Phillips <jp3@quantumfyre.co.uk>
- Date
- Feb 13, 2007, 01:21 UTC
- Message-ID
- <11713297014015-git-send-email-julian@quantumfyre.co.uk>
The updated git fetch in pu is vastly improved on repositories with very large numbers of refs. The time taken for a no-op fetch over ~9000 refs drops from ~48m to ~0.5m.
However, before git fetch will actually run on a repository with ~9000 refs the calling interface between fetch and fetch--tool needs to be changed. The existing version passes the entire reflist on the command line, which means that it is subject to the maxiumum environment size passed to a child process by execve.
The following patches add a stdin based interface to fetch--tool allowing the ~9000 refs to be passed without exceeding the environment limit.
-- Julian