git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andre Noll <maan@systemlinux.org>
To: Nicolas Pitre <nico@cam.org>
Cc: git@vger.kernel.org
Subject: git fsck: failed to apply delta
Date: Mon, 7 Nov 2011 15:25:37 +0100	[thread overview]
Message-ID: <20111107142537.GD13394@systemlinux.org> (raw)

[-- Attachment #1: Type: text/plain, Size: 1245 bytes --]

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

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

                 reply	other threads:[~2011-11-07 14:31 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20111107142537.GD13394@systemlinux.org \
    --to=maan@systemlinux.org \
    --cc=git@vger.kernel.org \
    --cc=nico@cam.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).