git fsck: failed to apply delta
- From
- Andre Noll <maan@systemlinux.org>
- Date
- Nov 7, 2011, 14:25 UTC
- Message-ID
- <20111107142537.GD13394@systemlinux.org>
Hi
I'm getting this when running git fsck or git repack against a large (21G) repo which was created from subversion using git svn clone:
fatal: failed to apply delta
The debugging patch below indicates that this repo fails the sanity check for the size in patch_delta(). With this patch applied I'm getting the following additional output
error: bad delta header size, expected: 236, have 1994568
This is 100% reproducible. I'm using the git master branch as of today (5ae0f681) but the same problem showed up also with an older git version.
Does anybody know what's going on here?
Thanks Andre ---
diff --git a/patch-delta.c b/patch-delta.c index 56e0a5e..cff4d79 100644 --- a/patch-delta.c +++ b/patch-delta.c @@ -28,8 +28,10 @@ void *patch_delta(const void *src_buf, unsigned long src_size, /* make sure the orig file size matches what we expect */ size = get_delta_hdr_size(&data, top); - if (size != src_size) + if (size != src_size) { + error("bad delta header size, expected: %lu, have %lu", src_size, size); return NULL; + } /* now the result size */ size = get_delta_hdr_size(&data, top);
-- The only person who always got his work done by Friday was Robinson Crusoe