Skip to content

Commit 174791f

Browse files
newrengitster
authored andcommitted
merge-ort: use relevant_sources to filter possible rename sources
The past several commits determined conditions when rename sources might be needed, and filled a relevant_sources strset with those paths. Pass these along to diffcore_rename_extended() to use to limit the sources that we need to detect renames for. For the testcases mentioned in commit 557ac03 ("merge-ort: begin performance work; instrument with trace2_region_* calls", 2020-10-28), this change improves the performance as follows: Before After no-renames: 12.596 s ± 0.061 s 6.003 s ± 0.048 s mega-renames: 130.465 s ± 0.259 s 114.009 s ± 0.236 s just-one-mega: 3.958 s ± 0.010 s 3.489 s ± 0.017 s Signed-off-by: Elijah Newren <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 2fd9eda commit 174791f

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

merge-ort.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2208,7 +2208,7 @@ static void detect_regular_renames(struct merge_options *opt,
22082208
diff_queued_diff = renames->pairs[side_index];
22092209
trace2_region_enter("diff", "diffcore_rename", opt->repo);
22102210
diffcore_rename_extended(&diff_opts,
2211-
NULL,
2211+
&renames->relevant_sources[side_index],
22122212
&renames->dirs_removed[side_index],
22132213
&renames->dir_rename_count[side_index]);
22142214
trace2_region_leave("diff", "diffcore_rename", opt->repo);

0 commit comments

Comments
 (0)