diff options
author | Derrick Stolee <dstolee@microsoft.com> | 2018-04-06 19:09:32 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-04-11 10:47:16 +0900 |
commit | 891435d55da80ca3654b19834481205be6bdfe33 (patch) | |
tree | fddc1768c14c6567f7be5205bf808d8bae86981a /commit-graph.c | |
parent | Merge branch 'bw/c-plus-plus' into ds/lazy-load-trees (diff) | |
download | tgif-891435d55da80ca3654b19834481205be6bdfe33.tar.xz |
treewide: rename tree to maybe_tree
Using the commit-graph file to walk commit history removes the large
cost of parsing commits during the walk. This exposes a performance
issue: lookup_tree() takes a large portion of the computation time,
even when Git never uses those trees.
In anticipation of lazy-loading these trees, rename the 'tree' member
of struct commit to 'maybe_tree'. This serves two purposes: it hints
at the future role of possibly being NULL even if the commit has a
valid tree, and it allows for unambiguous transformation from simple
member access (i.e. commit->maybe_tree) to method access.
Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'commit-graph.c')
-rw-r--r-- | commit-graph.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/commit-graph.c b/commit-graph.c index 3ff8c84c0e..49c622c556 100644 --- a/commit-graph.c +++ b/commit-graph.c @@ -258,7 +258,7 @@ static int fill_commit_in_graph(struct commit *item, struct commit_graph *g, uin item->graph_pos = pos; hashcpy(oid.hash, commit_data); - item->tree = lookup_tree(&oid); + item->maybe_tree = lookup_tree(&oid); date_high = get_be32(commit_data + g->hash_len + 8) & 0x3; date_low = get_be32(commit_data + g->hash_len + 12); @@ -369,7 +369,7 @@ static void write_graph_chunk_data(struct hashfile *f, int hash_len, uint32_t packedDate[2]; parse_commit(*list); - hashwrite(f, (*list)->tree->object.oid.hash, hash_len); + hashwrite(f, (*list)->maybe_tree->object.oid.hash, hash_len); parent = (*list)->parents; |