Re: [PATCH v2 11/19] pack-objects: use bitmaps when packing objects

2013-10-31 Thread Duy Nguyen
On Thu, Oct 31, 2013 at 3:07 AM, Jeff King p...@peff.net wrote: I think there are two cases that we need to consider: 1. We have a full repo and somebody requests a shallow clone for us. We probably do not want to use bitmaps here. In the series we have been testing, shallow

Re: [PATCH v2 11/19] pack-objects: use bitmaps when packing objects

2013-10-30 Thread Jeff King
On Sat, Oct 26, 2013 at 05:25:14PM +0700, Nguyen Thai Ngoc Duy wrote: For bitmaps to be used, the following must be true: 1. We must be packing to stdout (as a normal `pack-objects` from `upload-pack` would do). 2. There must be a .bitmap index containing at least one of the

Re: [PATCH v2 11/19] pack-objects: use bitmaps when packing objects

2013-10-30 Thread Duy Nguyen
On Wed, Oct 30, 2013 at 2:36 PM, Jeff King p...@peff.net wrote: On Sat, Oct 26, 2013 at 05:25:14PM +0700, Nguyen Thai Ngoc Duy wrote: For bitmaps to be used, the following must be true: 1. We must be packing to stdout (as a normal `pack-objects` from `upload-pack` would do).

Re: [PATCH v2 11/19] pack-objects: use bitmaps when packing objects

2013-10-30 Thread Jeff King
On Wed, Oct 30, 2013 at 05:28:08PM +0700, Nguyen Thai Ngoc Duy wrote: One other criterion I should have mentioned: we must be using the internal rev-list. That prevented us in v1.8.4.1 and earlier from using bitmaps for shallow fetches. But as of v1.8.4.2, we always use pack-objects'

Re: [PATCH v2 11/19] pack-objects: use bitmaps when packing objects

2013-10-26 Thread Duy Nguyen
On Fri, Oct 25, 2013 at 1:03 PM, Jeff King p...@peff.net wrote: From: Vicent Marti tan...@gmail.com In this patch, we use the bitmap API to perform the `Counting Objects` phase in pack-objects, rather than a traditional walk through the object graph. For a reasonably-packed large repo, the

[PATCH v2 11/19] pack-objects: use bitmaps when packing objects

2013-10-25 Thread Jeff King
From: Vicent Marti tan...@gmail.com In this patch, we use the bitmap API to perform the `Counting Objects` phase in pack-objects, rather than a traditional walk through the object graph. For a reasonably-packed large repo, the time to fetch and clone is often dominated by the full-object revision