Opened 5 months ago
Closed 5 months ago
#1597 closed defect (fixed)
StringIndexOutOfBoundsException when running the "Genotype quality control (Normal)" wizard
Reported by: | Nicklas Nordborg | Owned by: | Nicklas Nordborg |
---|---|---|---|
Priority: | major | Milestone: | Reggie v5.0.1 |
Component: | net.sf.basedb.reggie | Keywords: | |
Cc: |
Description
Caused by: java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22 at java.base/jdk.internal.util.Preconditions$1.apply(Preconditions.java:55) at java.base/jdk.internal.util.Preconditions$1.apply(Preconditions.java:52) at java.base/jdk.internal.util.Preconditions$4.apply(Preconditions.java:213) at java.base/jdk.internal.util.Preconditions$4.apply(Preconditions.java:210) at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:98) at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:106) at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:302) at java.base/java.lang.String.checkIndex(String.java:4575) at java.base/java.lang.StringLatin1.charAt(StringLatin1.java:46) at java.base/java.lang.String.charAt(String.java:1535) at net.sf.basedb.reggie.vcf.GenoTypeChecker.isSameLysate(GenoTypeChecker.java:1125) at net.sf.basedb.reggie.vcf.GenoTypeChecker.check(GenoTypeChecker.java:848) at net.sf.basedb.reggie.servlet.GenotypeServlet$RunnableGenotypeComparator.call(GenotypeServlet.java:1418) at net.sf.basedb.reggie.servlet.GenotypeServlet$RunnableGenotypeComparator.call(GenotypeServlet.java:1365) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
Note:
See TracTickets
for help on using tickets.
This seems to be something that should normally not happen. The error is in the
isSameLysate()
method which has an bug in the loop when comparing the names of two alignments. In this case there are two alignments from the same merged item in the DNA/Normal pipeline which doesn't have a lysate.