Hi @wdecoster. I think that merge_overlapping_insertions is bugged in both branches (lines 137 - 144).
to_merge = [insertion]
if insertion.merged:
continue
for candidate_merge in insertions[index+1:]:
if insertion.is_overlapping(candidate_merge, distance=merge_distance):
to_merge.append(candidate_merge)
else:
break
The field merged in class Insertion does not have True value ever. So, algorithm is not skipping merged insertions and working with O(n^2) time. I pushed to my branch modified version of merge_overlapping_insertions. Please, review it (commit, lines 176 - 183) and double check that everything is correct.
Hi @wdecoster. I think that
merge_overlapping_insertions
is bugged in both branches (lines 137 - 144).The field
merged
in classInsertion
does not have True value ever. So, algorithm is not skipping merged insertions and working with O(n^2) time. I pushed to my branch modified version ofmerge_overlapping_insertions
. Please, review it (commit, lines 176 - 183) and double check that everything is correct.