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>
This commit is contained in:
committed by
Junio C Hamano
parent
2d5792f071
commit
891435d55d
@ -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;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user