epic fsck SIGSEGV! (was Recovering from epic fail (deleted .git/objects/pack))
- From
- R. Tyler Ballance <tyler@slide.com>
- Date
- Dec 10, 2008, 22:52 UTC
- Message-ID
- <1228949523.27061.20.camel@starfruit.local>
- In-Reply-To
- <493FAA5A.8070801@viscovery.net>
On Wed, 2008-12-10 at 12:39 +0100, Johannes Sixt wrote:
Show 14 quoted lines
> R. Tyler Ballance schrieb: > > On Tue, 2008-12-09 at 16:19 -0800, Junio C Hamano wrote: > >> See if "fsck --full" complains after that. If the repository was not > >> repacked during that period, all objects created by the activity by the > >> unfortunate developer would be loose, so ... > > > > tyler@ccnet:~/source/slide/brian_main> time git fsck --full > > Segmentation fault > > Please make a backup (tarball) of the repository that shows this segfault. > 'git fsck' is not supposed to segfault, no matter what garbage is thrown > at it. > > Can you make a backtrace of this failing 'git fsck --full' invocation?
I decided to endure the 30 minutes long this took on machine, and ran the operation in gdb. As a result, I got the SIGSEGV again, and a 13MB stacktrace.
In fact, the stack trace was probably longer, but this happened while I
printed out `bt full`:
#80496 0x00000000004244bc in fsck_handle_ref (refname=0x162aa61
"refs/heads/master", sha1=0x162aa39 "S\236\024(f\210��V\027�'�E
\025�u�g",
flag=<value optimized out>, cb_data=<value optimized out>)
at builtin-fsck.c:118
obj = <value optimized out>
#80497 0x000000000047f61c in do_for_each_ref (base=0x4a7022
"refs/", fn=0x424450 <fsck_handle_ref>, trim=0, cb_data=0x0) at
refs.c:582
[1] 29388 segmentation fault (core dumped) gdb git
tyler@ccnet:~/source/slide/brian_main>
The "full" trace is here:
http://pineapple.monkeypox.org/scratch/git-1.6.0.2-fsck-sigsegv.traceI think I'm going to need to have a drink :-/
-- -R. Tyler Ballance Slide, Inc.