From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Shawn O. Pearce" Subject: Re: git-index-pack really does suck.. Date: Tue, 3 Apr 2007 17:37:10 -0400 Message-ID: <20070403213710.GK27706@spearce.org> References: <20070403210319.GH27706@spearce.org> <20070403211709.GJ27706@spearce.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Linus Torvalds , Chris Lee , Junio C Hamano , Git Mailing List To: Nicolas Pitre X-From: git-owner@vger.kernel.org Tue Apr 03 23:37:34 2007 Return-path: Envelope-to: gcvg-git@gmane.org Received: from vger.kernel.org ([209.132.176.167]) by lo.gmane.org with esmtp (Exim 4.50) id 1HYqh2-00059d-53 for gcvg-git@gmane.org; Tue, 03 Apr 2007 23:37:32 +0200 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1945967AbXDCVh3 (ORCPT ); Tue, 3 Apr 2007 17:37:29 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1945980AbXDCVh3 (ORCPT ); Tue, 3 Apr 2007 17:37:29 -0400 Received: from corvette.plexpod.net ([64.38.20.226]:52129 "EHLO corvette.plexpod.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1945967AbXDCVh2 (ORCPT ); Tue, 3 Apr 2007 17:37:28 -0400 Received: from cpe-74-70-48-173.nycap.res.rr.com ([74.70.48.173] helo=asimov.home.spearce.org) by corvette.plexpod.net with esmtpa (Exim 4.63) (envelope-from ) id 1HYqgZ-0004Lf-4Y; Tue, 03 Apr 2007 17:37:03 -0400 Received: by asimov.home.spearce.org (Postfix, from userid 1000) id 7BBA120FBAE; Tue, 3 Apr 2007 17:37:10 -0400 (EDT) Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.11 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - corvette.plexpod.net X-AntiAbuse: Original Domain - vger.kernel.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - spearce.org X-Source: X-Source-Args: X-Source-Dir: Sender: git-owner@vger.kernel.org Precedence: bulk X-Mailing-List: git@vger.kernel.org Archived-At: Nicolas Pitre wrote: > First, I truly believe we should have a 64-bit pack index and fewer > larger packs than many small packs. I'll buy that. ;-) > Which leaves us with the actual pack index lookup. At that point the > cost of finding an existing object and finding that a given object > doesn't exist is about the same thing, isn't it? Here's the rub: in the missing object case we didn't find it in the pack index, but it could be loose. That's one failed syscall per object if the object isn't loose. If the object isn't loose, it could be that it was *just* removed by a running prune-packed, and the packfile that it was moved to was created after we scanned for packfiles, so time to rescan... -- Shawn.