From: Jeff King <peff@peff.net>
To: Frans Pop <elendil@planet.nl>
Cc: git@vger.kernel.org
Subject: Re: Extremely slow progress during 'git reflog expire --all'
Date: Fri, 2 Apr 2010 17:28:58 -0400 [thread overview]
Message-ID: <20100402212858.GA28531@coredump.intra.peff.net> (raw)
In-Reply-To: <201004022154.14793.elendil@planet.nl>
On Fri, Apr 02, 2010 at 09:54:14PM +0200, Frans Pop wrote:
> I wanted to to a 'git gc' on my kernel repo, but that seemed to end in a
> loop: loads of CPU usage, no output. Using 'ps' I found it's not 'git gc'
> itself, but 'git reflog' that's causing the problem.
>
> From the strace below it does seem like it still makes some progress, but
> I've never had it take anywhere near this long before. Normally it starts
> the count of objects almost immediately.
>
> It's using hardly any memory at all but has one core going flat out.
>
> I'm seeing this with both git 1.6.6.1 and 1.7.0.3 on the same repo.
> Environment:
> - Debian amd64/Lenny; Core Duo x86_64 2.6.34-rc3 -> 1.6.6.1
> - Debian i386/Sid; chroot on the same machine -> 1.7.0.3
> I've also tried with 2.6.33 to rule out a kernel issue.
>
> Here's the tail end of an strace I ran. I broke it off after 9+ minutes,
> but I had let it go for longer than that earlier. You can clearly see
> where it starts to "stall" at 21:40:14.
FWIW, I have seen this, too, and managed to get an strace snippet that
looked similar to what you saw (mostly memory allocation, and otherwise
chewing on the CPU). I'm guessing there is some O(n^2) loop in there
somewhere. Unfortunately, mine actually completed after a few minutes
and I wasn't able to replicate.
Can you reproduce the problem on your repo? If so, can you possibly tar
it up and make it available (probably just the .git directory would be
enough)?
-Peff
next prev parent reply other threads:[~2010-04-02 21:29 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-02 19:54 Extremely slow progress during 'git reflog expire --all' Frans Pop
2010-04-02 21:28 ` Jeff King [this message]
2010-04-02 21:50 ` Frans Pop
2010-04-02 22:41 ` Jeff King
2010-04-03 14:29 ` Frans Pop
2010-04-03 20:33 ` Jeff King
2010-04-03 20:35 ` Jeff King
2010-04-04 18:22 ` Junio C Hamano
2010-04-05 6:26 ` Jeff King
2010-04-05 18:54 ` Junio C Hamano
2010-04-06 6:02 ` Jeff King
2010-04-07 18:39 ` Re*: " Junio C Hamano
2010-04-07 18:43 ` Junio C Hamano
2010-04-08 7:00 ` Jeff King
2010-04-08 6:52 ` Jeff King
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100402212858.GA28531@coredump.intra.peff.net \
--to=peff@peff.net \
--cc=elendil@planet.nl \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).