On 4/5/07, Nicolas Pitre <nico@xxxxxxx> wrote:
On Thu, 5 Apr 2007, Dana How wrote: > On 4/5/07, Nicolas Pitre <nico@xxxxxxx> wrote: > > What is the purpose of this patch? > > > > The try_delta() function is called with all objects before any object is > > written to a pack to find out how to deltify objects upfront. > > I set no_write for 2 different reasons in the patchset. > (1) When the blob is too big (--blob-limit) and will never be written. > (2) When the blob has been written to a previous, finished pack. > > You're correct that this patch will never see condition (2). Given that I proposed another way for big blobs in my previous email, then (1) should not be needed either. > I think my repository statistics are a little unusual. > Perhaps I'm getting ahead of myself here, > but I also wanted to experiment with writing all blobs to one set > of packs, and all trees, commits, and tags to another set > (but probably just one small pack). > I would use no_write for that and it would matter here. Again you should simply _not_ add objects you don't want to the list instead of adding them and marking them as unwanted.
Agreed, the marking just required less code change at the time. I would like not to have to add nr_skipped and nr_actual. Currently we have get_object_list -> traverse_commit_list -> show_{commit,object} -> add_object_entry , which is all called way before get_object_details -> check_object -> sha1_object_info . Can I safely move the sha1_object_info calll earlier into add_object_entry so I will know the size for pruning? In your other email you mention memory consumption due to object_entry. This structure could benefit somewhat from some attention beyond removing my no_write.(e.g. int->short for .depth and .delta_limit; int->enum for .preferred_base). Perhaps for later. Thanks, -- Dana L. How danahow@xxxxxxxxx +1 650 804 5991 cell - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html