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

Re: [PATCH v3 00/32] object-store: lookup_commit

From
Junio C Hamano <gitster@pobox.com>
Date
Jun 29, 2018, 18:03 UTC
Message-ID
<xmqq4lhlv5a8.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<xmqq8t6xv5kb.fsf@gitster-ct.c.googlers.com>
Junio C Hamano <gitster@pobox.com> writes:
> One technique these (not just this) recent efforts seem to be
> forgetting is to introduce "new" names that take a_repo and then
> make the existing one a thin wrapper that calls the new one with
> &the_repo as the argument.

FWIW, here is how I am resolving semantic conflicts that I found so far while merging this topic to 'pu', which is stored in the merge-fix/ mechanism so that I can reuse it while rebuilding 'pu'.

-- >8 --
Subject: [PATCH] merge-fix/sb/object-store-lookup
---
 builtin/bisect--helper.c | 2 +-
 builtin/branch-diff.c    | 2 +-
 commit-graph.c           | 4 ++--
 negotiator/default.c     | 3 ++-
 4 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/builtin/bisect--helper.c b/builtin/bisect--helper.c
index fc02f889e6..b27f645744 100644
--- a/builtin/bisect--helper.c
+++ b/builtin/bisect--helper.c
@@ -231,7 +231,7 @@ static int bisect_write(const char *state, const char *rev,
 		goto fail;
 	}
 
-	commit = lookup_commit_reference(&oid);
+	commit = lookup_commit_reference(the_repository, &oid);
 	log_commit(fp, "%s", state, commit);
 
 	if (!nolog)
diff --git a/builtin/branch-diff.c b/builtin/branch-diff.c
index 8a16352e3a..b8604e3fec 100644
--- a/builtin/branch-diff.c
+++ b/builtin/branch-diff.c
@@ -329,7 +329,7 @@ static void output_pair_header(struct diff_options *diffopt, struct strbuf *buf,
 		strbuf_addf(buf, " %d:  %s", j + 1,
 			    find_unique_abbrev(&b_util->oid, DEFAULT_ABBREV));
 
-	commit = lookup_commit_reference(oid);
+	commit = lookup_commit_reference(the_repository, oid);
 	if (commit) {
 		const char *commit_buffer = get_commit_buffer(commit, NULL);
 		const char *subject;
diff --git a/commit-graph.c b/commit-graph.c
index e4dee03679..41a0133ff7 100644
--- a/commit-graph.c
+++ b/commit-graph.c
@@ -924,7 +924,7 @@ int verify_commit_graph(struct repository *r, struct commit_graph *g)
 			cur_fanout_pos++;
 		}
 
-		graph_commit = lookup_commit(&cur_oid);
+		graph_commit = lookup_commit(r, &cur_oid);
 		if (!parse_commit_in_graph_one(g, graph_commit))
 			graph_report("failed to parse %s from commit-graph",
 				     oid_to_hex(&cur_oid));
@@ -950,7 +950,7 @@ int verify_commit_graph(struct repository *r, struct commit_graph *g)
 
 		hashcpy(cur_oid.hash, g->chunk_oid_lookup + g->hash_len * i);
 
-		graph_commit = lookup_commit(&cur_oid);
+		graph_commit = lookup_commit(r, &cur_oid);
 		odb_commit = (struct commit *)create_object(r, cur_oid.hash, alloc_commit_node(r));
 		if (parse_commit_internal(odb_commit, 0, 0)) {
 			graph_report("failed to parse %s from object database",
diff --git a/negotiator/default.c b/negotiator/default.c
index 382fc77722..d8c92281bb 100644
--- a/negotiator/default.c
+++ b/negotiator/default.c
@@ -38,7 +38,8 @@ static void rev_list_push(struct negotiation_state *ns,
 static int clear_marks(const char *refname, const struct object_id *oid,
 		       int flag, void *cb_data)
 {
-	struct object *o = deref_tag(parse_object(oid), refname, 0);
+	struct object *o = deref_tag(the_repository,
+				     parse_object(the_repository, oid), refname, 0);
 
 	if (o && o->type == OBJ_COMMIT)
 		clear_commit_marks((struct commit *)o,
-- 
2.18.0-129-ge3331758f1
Previous: Junio C HamanoNext: Stefan Beller
Message 38 of 42 in “object-store: lookup_commit”
  1. 00/32 object-store: lookup_commitStefan Beller, Jun 29, 2018
  2. 02/32 object: add repository argument to lookup_objectStefan Beller, Jun 29, 2018
  3. 01/32 object: add repository argument to parse_objectStefan Beller, Jun 29, 2018
  4. 03/32 object: add repository argument to parse_object_bufferStefan Beller, Jun 29, 2018
  5. 05/32 blob: add repository argument to lookup_blobStefan Beller, Jun 29, 2018
  6. 04/32 object: add repository argument to object_as_typeStefan Beller, Jun 29, 2018
  7. 08/32 commit: add repository argument to lookup_commit_referenceStefan Beller, Jun 29, 2018
  8. 10/32 commit: add repository argument to parse_commit_bufferStefan Beller, Jun 29, 2018
  9. Derrick StoleeJun 29, 2018
  10. 06/32 tree: add repository argument to lookup_treeStefan Beller, Jun 29, 2018
  11. 11/32 commit: add repository argument to set_commit_bufferStefan Beller, Jun 29, 2018
  12. 12/32 commit: add repository argument to get_cached_commit_bufferStefan Beller, Jun 29, 2018
  13. 14/32 tag: add repository argument to parse_tag_bufferStefan Beller, Jun 29, 2018
  14. 15/32 tag: add repository argument to deref_tagStefan Beller, Jun 29, 2018
  15. 16/32 object: allow object_as_type to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  16. 17/32 object: allow lookup_object to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  17. 18/32 blob: allow lookup_blob to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  18. 19/32 tree: allow lookup_tree to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  19. 20/32 commit: allow lookup_commit to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  20. 21/32 tag: allow lookup_tag to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  21. 23/32 commit.c: allow parse_commit_buffer to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  22. 24/32 commit-slabs: remove realloc counter outside of slab structStefan Beller, Jun 29, 2018
  23. 25/32 commit.c: migrate the commit buffer to the parsed object storeStefan Beller, Jun 29, 2018
  24. 26/32 commit.c: allow set_commit_buffer to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  25. 28/32 object.c: allow parse_object_buffer to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  26. 30/32 tag.c: allow deref_tag to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  27. 29/32 object.c: allow parse_object to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  28. 31/32 commit.c: allow lookup_commit_reference_gently to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  29. 32/32 commit.c: allow lookup_commit_reference to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  30. 22/32 tag: allow parse_tag_buffer to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  31. 27/32 commit.c: allow get_cached_commit_buffer to handle arbitrary repositoriesStefan Beller, Jun 29, 2018
  32. 07/32 commit: add repository argument to lookup_commit_reference_gentlyStefan Beller, Jun 29, 2018
  33. 09/32 commit: add repository argument to lookup_commitStefan Beller, Jun 29, 2018
  34. Derrick StoleeJun 29, 2018
  35. 13/32 tag: add repository argument to lookup_tagStefan Beller, Jun 29, 2018
  36. Derrick StoleeJun 29, 2018
  37. Junio C HamanoJun 29, 2018
  38. Junio C HamanoJun 29, 2018
  39. Stefan BellerJun 29, 2018
  40. Junio C HamanoJun 29, 2018
  41. Brandon WilliamsJun 29, 2018
  42. Junio C HamanoJul 3, 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.