somatic indel detector does not die on reads that are too long (likely contain a huge deletion) anymore; instead print a warning and ignore the read

This commit is contained in:
Andrey Sivachenko 2011-08-17 14:05:19 -04:00
parent c405a75f54
commit 069554efe5
1 changed files with 11 additions and 2 deletions

View File

@ -469,8 +469,17 @@ public class SomaticIndelDetectorWalker extends ReadWalker<Integer,Integer> {
// let's double check now that the read fits after the shift
if ( read.getAlignmentEnd() > normal_context.getStop()) {
// ooops, looks like the read does not fit into the window even after the latter was shifted!!
throw new UserException.BadArgumentValue("window_size", "Read "+read.getReadName()+": out of coverage window bounds. Probably window is too small, so increase the value of the window_size argument.\n"+
"Read length="+read.getReadLength()+"; cigar="+read.getCigarString()+"; start="+
// we used to die over such reads and require user to run with larger window size. Now we
// just print a warning and discard the read (this means that our counts can be slightly off in
// th epresence of such reads)
//throw new UserException.BadArgumentValue("window_size", "Read "+read.getReadName()+": out of coverage window bounds. Probably window is too small, so increase the value of the window_size argument.\n"+
// "Read length="+read.getReadLength()+"; cigar="+read.getCigarString()+"; start="+
// read.getAlignmentStart()+"; end="+read.getAlignmentEnd()+
// "; window start (after trying to accomodate the read)="+normal_context.getStart()+"; window end="+normal_context.getStop());
System.out.println("WARNING: Read "+read.getReadName()+
" is out of coverage window bounds. Probably window is too small and the window_size value must be increased.\n"+
" The read is ignored in this run (so all the counts/statistics reported will not include it).\n"+
" Read length="+read.getReadLength()+"; cigar="+read.getCigarString()+"; start="+
read.getAlignmentStart()+"; end="+read.getAlignmentEnd()+
"; window start (after trying to accomodate the read)="+normal_context.getStart()+"; window end="+normal_context.getStop());
}