From: Linus Torvalds Date: Tue, 31 Mar 2009 05:42:50 GMT Subject: Re: "git reflog expire --all" very slow Message-ID: In-Reply-To: <7vy6um6z9m.fsf@gitster.siamese.dyndns.org> On Mon, 30 Mar 2009, Junio C Hamano wrote: > > I do have a lot of reflog entries kept around, as my main repository has > these: > > [gc] > reflogexpire = '2005-01-01 00:00:00 +0000' > reflogexpireunreachable = '2005-01-01 00:00:00 +0000' I think that actually _hides_ the problem. You'll never have anything at all that triggers that if (timestamp < cb->cmd->expire_unreachable) { because your "expire_unreachable" timestamp is already very old (== small value), so 'timestamp' will _not_ be older (smaller value) than that. I dunno. As mentioned, I don't really understand why we'd want to save some of those reflog entries at all in the first place, so I'm probably missing something. If we've asked for reflog entries past a certain age to be expired, why do when then look at the details of those reflog entries and only expire them under certain circumstances? Just expire them, and get rid of the 'unreachable' part. Linus