git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Error converting from 1.4.4.1 to 1.5.0?

From
Bill Lear <rael@zopyra.com>
Date
Feb 14, 2007, 20:49 UTC
Message-ID
<17875.30187.289679.417079@lisa.zopyra.com>
In-Reply-To
<7vy7n0pr9x.fsf@assigned-by-dhcp.cox.net>
On Wednesday, February 14, 2007 at 09:45:14 (-0800) Junio C Hamano writes:
Show 23 quoted lines
>Bill Lear <rael@zopyra.com> writes:
>
>> % git fsck-objects --full
>> error: Packfile .git/objects/pack/pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.pack SHA1 mismatch with itself
>> fatal: failed to find delta-pack base object 90bad0d280a6d7c155bbd9582b35ffcf5e3bdd27
>>
>>
>> % /usr/bin/git --version
>> git version 1.4.4.1
>>
>> % /usr/bin/git fsck-objects --full
>> error: Packfile .git/objects/pack/pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.pack SHA1 mismatch with itself
>> fatal: failed to find delta-pack base object 90bad0d280a6d7c155bbd9582b35ffcf5e3bdd27
>>
>> So, all I did was try to do a commit with the new git ... haven't
>> recloned, or pulled from upstream...
>
>If you haven't packed the repository lately, the above indicates
>this is not an issue between 1.4.4.1 and 1.5.0, but you had a
>corrupt packfile before even started.
>
>How big is this pack, what platform are you working on and whose
>SHA-1 implementation do you use?
In order:

% cd .git/objects/pack % ls -l -r--r--r-- 1 rael software 77360 Feb 13 10:18 pack-23d1a9af78b4b78d... -r--r--r-- 1 rael software 87874337 Feb 14 10:00 pack-23d1a9af78b4b78d...

[output of ls trimmed to width]

% uname -a Linux lisa.zopyra.com 2.6.9-34.0.2.ELsmp #1 SMP Fri Jul 7 18:22:55 CDT 2006 x86_64 x86_64 x86_64 GNU/Linux

I don't know which SHA-1 implementation I use --- I just installed git and off I went. I do see this:

% which sha1sum /usr/bin/sha1sum % sha1sum --version shasum (coreutils) 5.2.1 Written by Ulrich Drepper and Scott Miller. [...]

But I'm not sure which library is in use --- how do I know?
>Also, do you have a huge blob in the repository?  I do not know
>if it is related but the write_sha1_file_prepare() function on
>the codepath to write loose objects out would trigger the same
>bug...

I don't know what "huge" is, but the pack file seems to be the largest and then one of the objects is listed at 28,604,986 bytes, but nothing else is very large.

So, before I get to Linus's message, I did try doing this:
1) with 1.4.4.1 git, clone my public repo
2) in this new clone, make modifications to my files as before
3) with 1.5.0 git, do a commit
and I got the same blowup on commit, and this on fsck, with 1.5.0 git:

% git fsck-objects --full error: Packfile .git/objects/pack/pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.pack SHA1 mismatch with itself error: 00078437c23cbc04da52233f4f412219f88b8927: object corrupt or missing fatal: unknown object type 5 in .git/objects/pack/pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.pack

and with 1.4.4.1 git:

% /usr/bin/git fsck-objects --full error: Packfile .git/objects/pack/pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.pack SHA1 mismatch with itself fatal: corrupted pack file .git/objects/pack/pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.pack

So (hopefully this is helpful) I look in my public repo for this pack file:

% ls -l /repos/git/fus/objects/pack total 88420 -r--r--r-- 1 blear software 10376 Feb 14 10:06 pack-1a201381fe465cbf4d771aec681aff6e12648ea0.idx -r--r--r-- 1 blear software 753437 Feb 14 10:06 pack-1a201381fe465cbf4d771aec681aff6e12648ea0.pack -r--r--r-- 1 blear software 77360 Feb 13 10:57 pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.idx -r--r--r-- 1 blear software 89576130 Feb 13 10:57 pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.pack

and notice, it is different than the same pack on my just-cloned repo (that is, the second clone, that I used to reproduce the first failure):

% ls -l objects/pack/ total 87632 -r--r--r-- 1 blear software 77360 Feb 14 12:50 pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.idx -r--r--r-- 1 blear software 89548154 Feb 14 12:52 pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.pack

and in my first-cloned repo:

% ls -l objects/pack/ total 85992 -r--r--r-- 1 blear software 77360 Feb 13 10:18 pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.idx -r--r--r-- 1 blear software 87874337 Feb 14 10:00 pack-23d1a9af78b4b78d1f3750cf70f83cb91a20ba64.pack

The .pack files have the same SHA, but different sizes (don't know what that means).

I will continue digging and on to Linus's post...
Bill
Previous: Junio C HamanoNext: Bill Lear
Message 6 of 39 in “Error converting from 1.4.4.1 to 1.5.0?”
  1. Bill LearFeb 14, 2007
  2. Bill LearFeb 14, 2007
  3. Junio C HamanoFeb 14, 2007
  4. Bill LearFeb 14, 2007
  5. Junio C HamanoFeb 14, 2007
  6. Bill LearFeb 14, 2007
  7. Bill LearFeb 14, 2007
  8. Linus TorvaldsFeb 14, 2007
  9. Bill LearFeb 14, 2007
  10. Junio C HamanoFeb 14, 2007
  11. Junio C HamanoFeb 14, 2007
  12. Johannes SchindelinFeb 14, 2007
  13. Junio C HamanoFeb 14, 2007
  14. Johannes SchindelinFeb 14, 2007
  15. Jakub NarebskiFeb 15, 2007
  16. Olivier GalibertFeb 15, 2007
  17. Johannes SchindelinFeb 15, 2007
  18. Johannes SchindelinFeb 14, 2007
  19. Nicolas PitreFeb 14, 2007
  20. Bill LearFeb 14, 2007
  21. OT: data destruction classics (was: Re: Error converting from 1.4.4.1 to 1.5.0?)Simon 'corecode' Schubert, Feb 15, 2007
  22. Shawn O. PearceFeb 15, 2007
  23. Linus TorvaldsFeb 15, 2007
  24. Johannes SchindelinFeb 15, 2007
  25. Michael K. EdwardsFeb 15, 2007
  26. Bill LearFeb 15, 2007
  27. Andy ParkinsFeb 15, 2007
  28. Mark WoodingFeb 15, 2007
  29. Linus TorvaldsFeb 14, 2007
  30. Linus TorvaldsFeb 14, 2007
  31. Uwe Kleine-KönigFeb 15, 2007
  32. Junio C HamanoFeb 14, 2007
  33. Bill LearFeb 14, 2007
  34. Nicolas PitreFeb 14, 2007
  35. Junio C HamanoFeb 14, 2007
  36. Linus TorvaldsFeb 14, 2007
  37. Linus TorvaldsFeb 14, 2007
  38. Bill LearFeb 14, 2007
  39. Linus TorvaldsFeb 14, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.