git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v9 5/6] pack-redundant: rename pack_list.all_objects

From
Jiang Xin <worldhello.net@gmail.com>
Date
Feb 1, 2019, 16:21 UTC
Message-ID
<20190201162152.31136-6-worldhello.net@gmail.com>
In-Reply-To
<20190130114736.30357-1-worldhello.net@gmail.com>
From: Jiang Xin <zhiyou.jx@alibaba-inc.com>

New algorithm uses `pack_list.all_objects` to track remaining objects, so rename it to `pack_list.remaining_objects`.

Signed-off-by: Jiang Xin <zhiyou.jx@alibaba-inc.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 builtin/pack-redundant.c | 38 +++++++++++++++++++-------------------
 1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/builtin/pack-redundant.c b/builtin/pack-redundant.c
index d6d9a66e46..15cdf233c4 100644
--- a/builtin/pack-redundant.c
+++ b/builtin/pack-redundant.c
@@ -32,7 +32,7 @@ static struct pack_list {
 	struct pack_list *next;
 	struct packed_git *pack;
 	struct llist *unique_objects;
-	struct llist *all_objects;
+	struct llist *remaining_objects;
 } *local_packs = NULL, *altodb_packs = NULL;
 
 static struct llist_item *free_nodes;
@@ -241,9 +241,9 @@ static void cmp_two_packs(struct pack_list *p1, struct pack_list *p2)
 	const unsigned int hashsz = the_hash_algo->rawsz;
 
 	if (!p1->unique_objects)
-		p1->unique_objects = llist_copy(p1->all_objects);
+		p1->unique_objects = llist_copy(p1->remaining_objects);
 	if (!p2->unique_objects)
-		p2->unique_objects = llist_copy(p2->all_objects);
+		p2->unique_objects = llist_copy(p2->remaining_objects);
 
 	p1_base = p1->pack->index_data;
 	p2_base = p2->pack->index_data;
@@ -344,8 +344,8 @@ static int cmp_pack_list_reverse(const void *a, const void *b)
 {
 	struct pack_list *pl_a = *((struct pack_list **)a);
 	struct pack_list *pl_b = *((struct pack_list **)b);
-	size_t sz_a = pl_a->all_objects->size;
-	size_t sz_b = pl_b->all_objects->size;
+	size_t sz_a = pl_a->remaining_objects->size;
+	size_t sz_b = pl_b->remaining_objects->size;
 
 	if (sz_a == sz_b)
 		return 0;
@@ -355,7 +355,7 @@ static int cmp_pack_list_reverse(const void *a, const void *b)
 		return -1;
 }
 
-/* Sort pack_list, greater size of all_objects first */
+/* Sort pack_list, greater size of remaining_objects first */
 static void sort_pack_list(struct pack_list **pl)
 {
 	struct pack_list **ary, *p;
@@ -399,7 +399,7 @@ static void minimize(struct pack_list **min)
 	missing = llist_copy(all_objects);
 	pl = unique;
 	while (pl) {
-		llist_sorted_difference_inplace(missing, pl->all_objects);
+		llist_sorted_difference_inplace(missing, pl->remaining_objects);
 		pl = pl->next;
 	}
 
@@ -417,20 +417,20 @@ static void minimize(struct pack_list **min)
 	/* remove unique pack objects from the non_unique packs */
 	pl = non_unique;
 	while (pl) {
-		llist_sorted_difference_inplace(pl->all_objects, unique_pack_objects);
+		llist_sorted_difference_inplace(pl->remaining_objects, unique_pack_objects);
 		pl = pl->next;
 	}
 
 	while (non_unique) {
-		/* sort the non_unique packs, greater size of all_objects first */
+		/* sort the non_unique packs, greater size of remaining_objects first */
 		sort_pack_list(&non_unique);
-		if (non_unique->all_objects->size == 0)
+		if (non_unique->remaining_objects->size == 0)
 			break;
 
 		pack_list_insert(min, non_unique);
 
-		for (pl = non_unique->next; pl && pl->all_objects->size > 0;  pl = pl->next)
-			llist_sorted_difference_inplace(pl->all_objects, non_unique->all_objects);
+		for (pl = non_unique->next; pl && pl->remaining_objects->size > 0;  pl = pl->next)
+			llist_sorted_difference_inplace(pl->remaining_objects, non_unique->remaining_objects);
 
 		non_unique = non_unique->next;
 	}
@@ -445,7 +445,7 @@ static void load_all_objects(void)
 
 	while (pl) {
 		hint = NULL;
-		l = pl->all_objects->front;
+		l = pl->remaining_objects->front;
 		while (l) {
 			hint = llist_insert_sorted_unique(all_objects,
 							  l->oid, hint);
@@ -456,7 +456,7 @@ static void load_all_objects(void)
 	/* remove objects present in remote packs */
 	pl = altodb_packs;
 	while (pl) {
-		llist_sorted_difference_inplace(all_objects, pl->all_objects);
+		llist_sorted_difference_inplace(all_objects, pl->remaining_objects);
 		pl = pl->next;
 	}
 }
@@ -481,8 +481,8 @@ static void scan_alt_odb_packs(void)
 	while (alt) {
 		local = local_packs;
 		while (local) {
-			llist_sorted_difference_inplace(local->all_objects,
-							alt->all_objects);
+			llist_sorted_difference_inplace(local->remaining_objects,
+							alt->remaining_objects);
 			local = local->next;
 		}
 		alt = alt->next;
@@ -499,7 +499,7 @@ static struct pack_list * add_pack(struct packed_git *p)
 		return NULL;
 
 	l.pack = p;
-	llist_init(&l.all_objects);
+	llist_init(&l.remaining_objects);
 
 	if (open_pack_index(p))
 		return NULL;
@@ -508,7 +508,7 @@ static struct pack_list * add_pack(struct packed_git *p)
 	base += 256 * 4 + ((p->index_version < 2) ? 4 : 8);
 	step = the_hash_algo->rawsz + ((p->index_version < 2) ? 4 : 0);
 	while (off < p->num_objects * step) {
-		llist_insert_back(l.all_objects, (const struct object_id *)(base + off));
+		llist_insert_back(l.remaining_objects, (const struct object_id *)(base + off));
 		off += step;
 	}
 	l.unique_objects = NULL;
@@ -605,7 +605,7 @@ int cmd_pack_redundant(int argc, const char **argv, const char *prefix)
 	llist_sorted_difference_inplace(all_objects, ignore);
 	pl = local_packs;
 	while (pl) {
-		llist_sorted_difference_inplace(pl->all_objects, ignore);
+		llist_sorted_difference_inplace(pl->remaining_objects, ignore);
 		pl = pl->next;
 	}
 
-- 
2.20.1.103.ged0fc2ca7b
Previous: Jiang XinNext: Jiang Xin
Message 26 of 83 in “pack-redundant: new algorithm to find min packs”
  1. 1/2 pack-redundant: new algorithm to find min packsJiang Xin, Dec 18, 2018
  2. 2/2 pack-redundant: remove unused functionsJiang Xin, Dec 18, 2018
  3. 0/3 pack-redundant: new algorithm to find min packsJiang Xin, Dec 19, 2018
  4. 0/3 pack-redundant: new algorithm to find min packsJiang Xin, Jan 2, 2019
  5. 1/3 t5323: test cases for git-pack-redundantJiang Xin, Jan 2, 2019
  6. SZEDER GáborJan 9, 2019
  7. SZEDER GáborJan 9, 2019
  8. 0/5 pack-redundant: new algorithm to find min packsJiang Xin, Jan 10, 2019
  9. 0/5 pack-redundant: new algorithm to find min packsJiang Xin, Jan 12, 2019
  10. 0/6 pack-redundant: new algorithm to find min packsJiang Xin, Jan 30, 2019
  11. 0/6 pack-redundant: new algorithm to find min packsJiang Xin, Feb 1, 2019
  12. 1/6 t5323: test cases for git-pack-redundantJiang Xin, Feb 1, 2019
  13. Eric SunshineFeb 1, 2019
  14. Junio C HamanoFeb 1, 2019
  15. Eric SunshineFeb 1, 2019
  16. 0/6 pack-redundant: new algorithm to find min packsJiang Xin, Feb 2, 2019
  17. 1/6 t5323: test cases for git-pack-redundantJiang Xin, Feb 2, 2019
  18. 2/6 pack-redundant: delay creation of unique_objectsJiang Xin, Feb 2, 2019
  19. 3/6 pack-redundant: delete redundant codeJiang Xin, Feb 2, 2019
  20. 4/6 pack-redundant: new algorithm to find min packsJiang Xin, Feb 2, 2019
  21. 5/6 pack-redundant: rename pack_list.all_objectsJiang Xin, Feb 2, 2019
  22. 6/6 pack-redundant: consistent sort methodJiang Xin, Feb 2, 2019
  23. 2/6 pack-redundant: delay creation of unique_objectsJiang Xin, Feb 1, 2019
  24. 3/6 pack-redundant: delete redundant codeJiang Xin, Feb 1, 2019
  25. 4/6 pack-redundant: new algorithm to find min packsJiang Xin, Feb 1, 2019
  26. 5/6 pack-redundant: rename pack_list.all_objectsJiang Xin, Feb 1, 2019
  27. 6/6 pack-redundant: consistent sort methodJiang Xin, Feb 1, 2019
  28. 1/6 t5323: test cases for git-pack-redundantJiang Xin, Jan 30, 2019
  29. Junio C HamanoJan 31, 2019
  30. Jiang XinFeb 1, 2019
  31. Eric SunshineFeb 1, 2019
  32. Jiang XinFeb 1, 2019
  33. Jiang XinFeb 1, 2019
  34. Jiang XinFeb 1, 2019
  35. 2/6 pack-redundant: delay creation of unique_objectsJiang Xin, Jan 30, 2019
  36. 3/6 pack-redundant: new algorithm to find min packsJiang Xin, Jan 30, 2019
  37. Junio C HamanoJan 31, 2019
  38. Jiang XinFeb 1, 2019
  39. 4/6 pack-redundant: remove unused functionsJiang Xin, Jan 30, 2019
  40. 1/1 pack-redundant: delete redundant code16657101987@163.com, Jan 30, 2019
  41. 5/6 pack-redundant: rename pack_list.all_objectsJiang Xin, Jan 30, 2019
  42. 6/6 pack-redundant: consistent sort methodJiang Xin, Jan 30, 2019
  43. 1/5 t5323: test cases for git-pack-redundantJiang Xin, Jan 12, 2019
  44. 2/5 pack-redundant: new algorithm to find min packsJiang Xin, Jan 12, 2019
  45. 3/5 pack-redundant: remove unused functionsJiang Xin, Jan 12, 2019
  46. 4/5 pack-redundant: rename pack_list.all_objectsJiang Xin, Jan 12, 2019
  47. 5/5 pack-redundant: consistent sort methodJiang Xin, Jan 12, 2019
  48. 1/5 t5323: test cases for git-pack-redundantJiang Xin, Jan 10, 2019
  49. Junio C HamanoJan 10, 2019
  50. Jiang XinJan 11, 2019
  51. Junio C HamanoJan 11, 2019
  52. 2/5 pack-redundant: new algorithm to find min packsJiang Xin, Jan 10, 2019
  53. SZEDER GáborJan 11, 2019
  54. 3/5 pack-redundant: rename pack_list.all_objectsJiang Xin, Jan 10, 2019
  55. 4/5 pack-redundant: consistent sort methodJiang Xin, Jan 10, 2019
  56. SZEDER GáborJan 10, 2019
  57. 5/5 pack-redundant: remove unused functionsJiang Xin, Jan 10, 2019
  58. Jiang XinJan 10, 2019
  59. Johannes SixtJan 10, 2019
  60. SZEDER GáborJan 10, 2019
  61. Torsten BögershausenJan 10, 2019
  62. Junio C HamanoJan 10, 2019
  63. 1/1 test-lint: sed -E (or -a, -l) are not portabletboegi@web.de, Jan 15, 2019
  64. Eric SunshineJan 15, 2019
  65. Ævar Arnfjörð BjarmasonJan 16, 2019
  66. 1/1 test-lint: Only use only sed [-n] [-e command] [-f command_file]tboegi@web.de, Jan 20, 2019
  67. Junio C HamanoJan 22, 2019
  68. Torsten BögershausenJan 22, 2019
  69. Eric SunshineJan 22, 2019
  70. Torsten BögershausenJan 23, 2019
  71. Junio C HamanoJan 23, 2019
  72. Torsten BögershausenJan 25, 2019
  73. Junio C HamanoJan 27, 2019
  74. 2/3 pack-redundant: new algorithm to find min packsJiang Xin, Jan 2, 2019
  75. 3/3 pack-redundant: remove unused functionsJiang Xin, Jan 2, 2019
  76. 1/1 pack-redundant: remove unused functions16657101987@163.com, Jan 8, 2019
  77. 0/1 pack-redundant: remove unused functions16657101987@163.com, Jan 8, 2019
  78. Junio C HamanoJan 8, 2019
  79. 16657101987@163.comJan 9, 2019
  80. 0/1 pack-redundant: remove unused functions16657101987@163.com, Jan 8, 2019
  81. 1/3 t5322: test cases for git-pack-redundantJiang Xin, Dec 19, 2018
  82. 2/3 pack-redundant: new algorithm to find min packsJiang Xin, Dec 19, 2018
  83. 3/3 pack-redundant: remove unused functionsJiang Xin, Dec 19, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.