Thread (41 messages) flat view 41 messages, 7 authors, 2016-06-15

Re: [PATCH/RFC] Allow writing loose objects that are corrupted in a pack file

From: Nicolas Pitre <hidden>
Date: 2016-06-15 22:45:52

On Tue, 6 Jan 2009, R. Tyler Ballance wrote:
On Tue, 2009-01-06 at 20:25 -0500, Nicolas Pitre wrote:
quoted
On Tue, 6 Jan 2009, R. Tyler Ballance wrote:
quoted
On Tue, 2008-12-09 at 09:36 +0100, Jan Krüger wrote:
quoted
For fixing a corrupted repository by using backup copies of individual
files, allow write_sha1_file() to write loose files even if the object
already exists in a pack file, but only if the existing entry is marked
as corrupted.
I figured I'd reply to this again, since the issue cropped up again.

We started experiencing *large* numbers of corruptions like the ones
that started the thread (one developer was receiving them once or twice
a day) with v1.6.0.4

We went ahead and upgraded to a custom build of v1.6.1 with Jan's patch
(below) and the issues /seem/ to have resolved themselves. I'm not
certain whether Jan's patch was really responsible, or if there was
another issue that caused this to correct itself in v1.6.1. 
I'll back the patch out and redeploy, it's worth mentioning that a
coworker of mine just got the issue as well (on 1.6.1). He was able to
`git pull` and the error went away, but I doubt that it "magically fixed
itself"
Please describe the "issue", ideally with transcripts of error messages, 
etc.  Normally a simple pull operation should not provide any "fix" for 
corruptions.
I highly doubt this, I've got the issue appearing on at least 7
different development boxes (not workstations, 2U quad-core ECC RAM, etc
machines), while that doesn't mean that they all don't have issues, the
probability of them *all* having disk issues, and it somehow only
manifesting itself with Git usage, is low ;)
Agreed.
I've tarred one of the repositories that had it in a reproducible state
That is wonderful.
so I can create a build and extract the tar and run against that to
verify any patches anybody might have, but unfortunately at 7GB of
company code and assets, I can't exactly share ;)
First step is to understand what is going on.  Only then could reliable 
patches be made.


Nicolas
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help