Re: Performance issue: initial git clone causes massive repack
- From
Nicolas Pitre <nico@cam.org>
- Date
- Apr 15, 2009, 11:51 UTC
- Message-ID
- <alpine.LFD.2.00.0904150738340.6741@xanadu.home>
- In-Reply-To
- <7vljq2zckw.fsf@gitster.siamese.dyndns.org>
On Tue, 14 Apr 2009, Junio C Hamano wrote:
Show 15 quoted lines
> Nguyen Thai Ngoc Duy <pclouds@gmail.com> writes: > > > How can you do that? If I understand git protocol correctly, there is > > no difference between a fetch request and a clone one. > > At the protocol level, you can tell a clone request by noticing that the > downloading side does not have any "have" lines, but it is a different > matter what the software does out of the box. > > You can patch upload-pack to reject such requests. I am sure gentoo folks > are capable of doing that ;-) > > Also a rogue client can send a bogus "have" to fool that logic, and that > is the primary reason why we do not have such a patch to upload-pack. It > is not worth it as a protection against determined people who want to DoS.
Implementing a minimum treshold with merge-base to ensure that the client has at least commit X should be easy to do. Unfortunately we don't have any hook for such a purpose yet.
Nicolas