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)

Change History (2)

comment:1 by Nicklas Nordborg, 5 months ago

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.

comment:2 by Nicklas Nordborg, 5 months ago

Resolution: fixed
Status: newclosed

In 7751:

Fixes #1597: StringIndexOutOfBoundsException when running the "Genotype quality control (Normal)" wizard

Note: See TracTickets for help on using tickets.