Skip to content

speed up flagging with ItervalTree #78

@keiranmraine

Description

@keiranmraine

Most of the flagging code is looking for simple "hit" lookups in tabix files. This can be handled in exactly the same way as the input generation speed up.

Will have additional advantages as current code wraps each query with an eval which is expensive:

my $ret = eval{
my $iter = $vcf_flagging_unmatched_normals_tabix->query_full($CHROM,$from,$to);
return $PASS if(!defined $iter); # no valid entries (chromosome not in index) so must pass
while($iter->next){
return $FAIL;
}
return $PASS;
};
if($@) {
die $@;
}

Should be able to hide this in the reuse_unmatched_normals_tabix and reuse_repeats_tabix functions. Needs to be applied in both FilterRules.pm and FragmentFilterRules.pm.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions