peptide-shaker
peptide-shaker copied to clipboard
java.lang.StringIndexOutOfBoundsException
Hello,
I posted about this issue in the #438 but wasn't able to duplicate it reliably. I've encountered it again and have been able to duplicate it consistently on different machines (even with re-running SearchGUI) with the same file.
edit: noticed I also had it opened as #485 but it was only temporarily resolved and has returned
Typically it goes away after re-trying a number of times but not this time.
(same error as below on a linux machine with 64 GB and Java 19)
I put the searchgui_out.zip here
Thanks!
Error from PeptideShaker side:
Wed Jul 17 10:47:00 EDT 2024 Selecting leading proteins, inferring peptide and protein inference status.
Wed Jul 17 10:47:01 EDT 2024 An error occurred: null
Wed Jul 17 10:47:01 EDT 2024 Please contact the developers (https://github.com/compomics/peptide-shaker/issues).
Wed Jul 17 10:47:01 EDT 2024 Importing Data Canceled!
Contents of the log file:
Wed Jul 17 10:43:35 EDT 2024: PeptideShaker version 3.0.8.
Memory given to the Java virtual machine: 4294967296.
Total amount of memory in the Java virtual machine: 134217728.
Free memory: 75491800.
Java version: 22.
1714 script command tokens
(C) 2009 Jmol Development
Jmol Version: 12.0.43 2011-05-03 14:21
java.vendor: Oracle Corporation
java.version: 22
os.name: Windows 11
memory: 57.0/134.2
processors available: 16
useCommandThread: false
java.lang.StringIndexOutOfBoundsException
at java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)
at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:502)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:486)
at java.base/java.util.concurrent.ForkJoinTask.getException(ForkJoinTask.java:557)
at java.base/java.util.concurrent.ForkJoinTask.reportException(ForkJoinTask.java:573)
at java.base/java.util.concurrent.ForkJoinTask.join(ForkJoinTask.java:663)
at java.base/java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:677)
at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateParallel(ForEachOps.java:160)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateParallel(ForEachOps.java:174)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:264)
at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:611)
at eu.isas.peptideshaker.protein_inference.ProteinInference.inferPiStatus(ProteinInference.java:115)
at eu.isas.peptideshaker.PeptideShaker.createProject(PeptideShaker.java:632)
at eu.isas.peptideshaker.gui.NewDialog$20.run(NewDialog.java:748)
at java.base/java.lang.Thread.run(Thread.java:1570)
Caused by: java.lang.StringIndexOutOfBoundsException: Index 382 out of bounds for length 382
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:4881)
at java.base/java.lang.StringLatin1.charAt(StringLatin1.java:46)
at java.base/java.lang.String.charAt(String.java:1582)
at com.compomics.util.experiment.identification.utils.PeptideUtils.getNEnzymaticTermini(PeptideUtils.java:639)
at com.compomics.util.experiment.identification.utils.PeptideUtils.lambda$isEnzymatic$16(PeptideUtils.java:681)
at java.base/java.util.stream.IntPipeline$4$1.accept(IntPipeline.java:246)
at java.base/java.util.Spliterators$IntArraySpliterator.tryAdvance(Spliterators.java:1133)
at java.base/java.util.stream.IntPipeline.forEachWithCancel(IntPipeline.java:163)
at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:574)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:560)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:546)
at java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
at java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:265)
at java.base/java.util.stream.IntPipeline.anyMatch(IntPipeline.java:537)
at com.compomics.util.experiment.identification.utils.PeptideUtils.lambda$isEnzymatic$18(PeptideUtils.java:688)
at java.base/java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90)
at java.base/java.util.ArrayList$ArrayListSpliterator.tryAdvance(ArrayList.java:1686)
at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:144)
at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:574)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:560)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:546)
at java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
at java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:265)
at java.base/java.util.stream.ReferencePipeline.anyMatch(ReferencePipeline.java:647)
at com.compomics.util.experiment.identification.utils.PeptideUtils.isEnzymatic(PeptideUtils.java:678)
at eu.isas.peptideshaker.protein_inference.ProteinInference.lambda$compareMainProtein$4(ProteinInference.java:403)
at java.base/java.util.stream.MatchOps$1MatchSink.accept(MatchOps.java:90)
at java.base/java.util.stream.LongPipeline$1$1.accept(LongPipeline.java:177)
at java.base/java.util.Spliterators$LongArraySpliterator.tryAdvance(Spliterators.java:1232)
at java.base/java.util.stream.LongPipeline.forEachWithCancel(LongPipeline.java:161)
at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:574)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:560)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:546)
at java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:230)
at java.base/java.util.stream.MatchOps$MatchOp.evaluateSequential(MatchOps.java:196)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:265)
at java.base/java.util.stream.ReferencePipeline.anyMatch(ReferencePipeline.java:647)
at eu.isas.peptideshaker.protein_inference.ProteinInference.compareMainProtein(ProteinInference.java:402)
at eu.isas.peptideshaker.protein_inference.ProteinInference.inferPiStatus(ProteinInference.java:173)
at eu.isas.peptideshaker.protein_inference.ProteinInference.lambda$inferPiStatus$1(ProteinInference.java:116)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:212)
at java.base/java.util.HashMap$KeySpliterator.forEachRemaining(HashMap.java:1715)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:556)
at java.base/java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:291)
at java.base/java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:759)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:507)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1491)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:2073)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:2035)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:187)