Re: How to replace a single corrupt, packed object?
- From
Shawn O. Pearce <spearce@spearce.org>
- Date
- Aug 8, 2008, 16:36 UTC
- Message-ID
- <20080808163628.GF9152@spearce.org>
- In-Reply-To
- <90E12BC7-1950-41DF-8BE5-C6B63CE060D9@ai.rug.nl>
Pieter de Bie <pdebie@ai.rug.nl> wrote:
Show 11 quoted lines
> On 8 aug 2008, at 18:19, Shawn O. Pearce wrote: > >> The unpack-objects process will >> fail when it finds this bad object, and everything after that in >> the pack file will be dropped on the floor and not get unpacked. > > Even with the -r switch? > > -r When unpacking a corrupt packfile, the command dies at the > first corruption. This flag tells it to keep going and make > the best effort to recover as many objects as possible.
Oh, thanks for reminding me. I had forgotten that Linus added -r when someone else had corruption in a packed object. Yea, if you use -r it may be able to resume and pick up where it left off.
I haven't studied the -r code so I'm not sure how it knows where its safe to restart unpacking from. But if you have a .idx file we probably could make a really good guess based on the offsets it stores. I doubt unpack-objects makes use of the .idx.
-- Shawn.