Re: [PATCH 5/5] commit-graph: add repo arg to graph readers
- From
- Jonathan Tan <jonathantanmy@google.com>
- Date
- Jun 21, 2018, 23:06 UTC
- Message-ID
- <20180621230608.86117-1-jonathantanmy@google.com>
- In-Reply-To
- <CAGZ79kYYD48PQiSqjqHkrqX9stKbGmEAHc1ArsuUgSHhwv5=Vw@mail.gmail.com>
Show 39 quoted lines
> > diff --git a/commit.c b/commit.c
> > index 0030e79940..38c12b002f 100644
> > --- a/commit.c
> > +++ b/commit.c
> > @@ -317,7 +317,7 @@ struct tree *get_commit_tree(const struct commit *commit)
> > if (commit->graph_pos == COMMIT_NOT_FROM_GRAPH)
> > BUG("commit has NULL tree, but was not loaded from commit-graph");
> >
> > - return get_commit_tree_in_graph(commit);
> > + return get_commit_tree_in_graph(the_repository, commit);
>
> Here..
>
> > }
> >
> > struct object_id *get_commit_tree_oid(const struct commit *commit)
> > @@ -413,7 +413,7 @@ int parse_commit_gently(struct commit *item, int quiet_on_missing)
> > return -1;
> > if (item->object.parsed)
> > return 0;
> > - if (parse_commit_in_graph(item))
> > + if (parse_commit_in_graph(the_repository, item))
>
> and here
>
> > +static void test_parse_commit_in_graph(const char *gitdir, const char *worktree,
> > + const struct object_id *commit_oid)
> > +{
> > + struct repository r;
> > + struct commit *c;
> > + struct commit_list *parent;
> > +
> > + /*
> > + * Create a commit independent of any repository.
> > + */
> > + c = lookup_commit(commit_oid);
>
> .. and this one are unfortunate as the rest of the object store series
> has not progressed as far as needed.I think the first 2 are in reverse - get_commit_tree depends on get_commit_tree_in_graph and parse_commit_gently depends on parse_commit_in_graph, so we need the commit-graph functions to be changed first. But I agree about lookup_commit.
> The lookup_commit series is out there already, and that will > teach lookup_commit a repository argument. When rerolling > that series I need to switch the order of repo_init and lookup_commit > such that we can pass the repo to the lookup.
For future reference, Stefan is talking about this series: https://public-inbox.org/git/20180613230522.55335-1-sbeller@google.com/
Let me know if you want to reroll yours on top of mine, or vice versa. I think it's clearer if mine goes in first, though, since (as you said in that e-mail) parse_commit depends on this change in the commit graph.
> This is really nice! > > Overall this series looks good to me, > Stefan
Thanks - let's see what others think.