Re: regression in multi-threaded git-pack-index
- From
Jeff King <peff@peff.net>
- Date
- Mar 16, 2013, 11:41 UTC
- Message-ID
- <20130316114118.GA1940@sigill.intra.peff.net>
- In-Reply-To
- <20130315224240.50AA340839@wince.sfo.corp.google.com>
On Fri, Mar 15, 2013 at 03:42:40PM -0700, Stefan Zager wrote:
Show 13 quoted lines
> We have uncovered a regression in this commit: > > b8a2486f1524947f232f657e9f2ebf44e3e7a243 > > The symptom is that 'git fetch' dies with: > > error: index-pack died of signal 10 > fatal: index-pack failed > > I have only been able to reproduce it on a Mac thus far; will try > ubuntu next. We can make it go away by running: > > git config pack.threads 1
I couldn't reproduce the problem on Linux with the instructions you gave. I did try running it under valgrind and it produced:
==2380== Conditional jump or move depends on uninitialised value(s) ==2380== at 0x441631: resolve_delta (index-pack.c:837) ==2380== by 0x4419D6: find_unresolved_deltas_1 (index-pack.c:898) ==2380== by 0x441A45: find_unresolved_deltas (index-pack.c:914) ==2380== by 0x4427CA: fix_unresolved_deltas (index-pack.c:1232) ==2380== by 0x4421F5: conclude_pack (index-pack.c:1111) ==2380== by 0x443A5C: cmd_index_pack (index-pack.c:1604) ==2380== by 0x4058A2: run_builtin (git.c:281) ==2380== by 0x405A35: handle_internal_command (git.c:443) ==2380== by 0x405C01: main (git.c:532)
but the line in question is:
if (deepest_delta < delta_obj->delta_depth)
And in the debugger, both of those variables appear to have sane values (nor should either impacted by the patch you bisected to). On top of that, running with pack.threads=1 produces the same error. So I think it may be a false positive from valgrind, and unrelated to your issue.
Other than that, it seems to run fine for me.
-Peff