Re: corrupted repo and "git push --mirror"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Oct 18, 2010 at 09:38:03AM +0530, Sitaram Chamarty wrote:
> This is probably a stupid question, but in the spirit of extreme
> paranoia *and* because it's kinda hard to "try it and see", I'm going
> to risk the ridicule :)
> 
> Gitolite has mirroring support now, basically using "git push
> --mirror".  The question I was asked, and I couldn't *confidently*
> answer, was: what happens if the source repo suffers some corruption
> for some reason?  Does the corruption propagate?

I think the sending behaves like normal repack. The packfile object
CRCs must match (assuming they are available, i.e. v2 index!). Loose
objects might be down to zlib adler checksum.

However, some errors in pack generation process could cause logically
inconsistent pack to be sent. Against that, one would need to enable
receive-side fsck on receive (this is how the infamous jgit push bug
corrupted repositories).

Transport errors are caught by underlying MACs or packfile SHA-1.

> Secondary question: what happens if the receiving repo is corrupt?

The push might fail or it might not. And not even receive-side fsck
necressary catches the corruption (one would need full fsck for that).

-Ilari
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]