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

Re: Problem with pack

From
Junio C Hamano <junkio@cox.net>
Date
Aug 26, 2006, 10:31 UTC
Message-ID
<7vlkpb3i1e.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<7vu03z3j1y.fsf@assigned-by-dhcp.cox.net>
Junio C Hamano <junkio@cox.net> writes:
Show 13 quoted lines
> Earlier you said "unpack-objects <$that-pack.pack" fails with
> "error code -3 in inflate..."  What exact error do you get?
> I am guessing that it is get_data() which says:
>
> 	"inflate returned %d\n"
>
> (side note: we should not say \n there).
> ...
> This pattern appears practically everywhere...
> ...  I've been
> wondering if it is possible for inflate to eat some input but
> that was not enough to produce one byte of output, and what [it]
> would return in such a case...

I do not think this fear does not apply to this particular case; return value -3 is Z_DATA_ERROR, so the deflated stream is corrupt.

> So there are only a few ways you can get that error message.
> ...
I just realized there is another not so inplausible explanation.

When the problematic pack was made on the mothership, csum-file.c::sha1write_compressed() gave the data for the base object to zlib, an alpha particle hit a memory cell that contained zlib output buffer (resulting in a corrupt deflated stream in variable "out"), and sha1write() wrote it out while computing the right checksum.

Is the memory on your mothership reliable (I do not want to make this message sound like one on the kernel list, but memtest86 might be in order)?

Previous: Junio C Hamano
Message 6 of 6 in “Re: Problem with pack”
  1. Sergio CallegariAug 25, 2006
  2. Andreas EricssonAug 25, 2006
  3. Jakub NarebskiAug 25, 2006
  4. Junio C HamanoAug 25, 2006
  5. Junio C HamanoAug 26, 2006
  6. Junio C HamanoAug 26, 2006

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.