Browse Source

threaded delta search: better chunck split point

Try to keep object with the same name hash together.

Suggested by Martin Koegler.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Nicolas Pitre 18 years ago committed by Junio C Hamano
parent
commit
59921b4b3f
  1. 5
      builtin-pack-objects.c

5
builtin-pack-objects.c

@ -1635,6 +1635,11 @@ static void ll_find_deltas(struct object_entry **list, unsigned list_size, @@ -1635,6 +1635,11 @@ static void ll_find_deltas(struct object_entry **list, unsigned list_size,
if (sublist_size > list_size)
sublist_size = list_size;

/* try to split chunks on "path" boundaries */
while (sublist_size < list_size && list[sublist_size]->hash &&
list[sublist_size]->hash == list[sublist_size-1]->hash)
sublist_size++;

pthread_mutex_lock(&data_provider);
data_requester->list = list;
data_requester->list_size = sublist_size;

Loading…
Cancel
Save