compomics / peptide-shaker

Interpretation of proteomics identification results
http://compomics.github.io/projects/peptide-shaker.html
48 stars 19 forks source link

SearchGUI is successful but PeptideShaker is failing #481

Open Bin-cc opened 2 years ago

Bin-cc commented 2 years ago

Hi,

Thank you for your such powerful tool. But I encountered a problem when I tried to use it to search my raw files with several engines (X!Tandem, MS-GF+, OMSSA, Comet). Each of them had ran successfully, however, they failed to be processed by PeptideShaker. I has not came up with any solutions. If you can give me some advice? The report file is attched and the PeptideShaker.log is as follows.

Best regards!

report.txt

PeptideShaker.log

Thu Mar 31 20:09:06 CST 2022: PeptideShaker version 2.2.6.
Memory given to the Java virtual machine: 4294967296.
Total amount of memory in the Java virtual machine: 134217728.
Free memory: 121876456.
Java version: 16.0.1.
com.esotericsoftware.kryo.KryoException: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
Serialization trace:
peptideAssumptionsMap (com.compomics.util.experiment.identification.matches.SpectrumMatch)
    at com.esotericsoftware.kryo.serializers.ReflectField.write(ReflectField.java:101)
    at com.esotericsoftware.kryo.serializers.FieldSerializer.write(FieldSerializer.java:108)
    at com.esotericsoftware.kryo.Kryo.writeObject(Kryo.java:627)
    at com.compomics.util.db.object.ObjectsCache.saveObjects(ObjectsCache.java:345)
    at com.compomics.util.db.object.ObjectsCache.updateCache(ObjectsCache.java:418)
    at com.compomics.util.db.object.ObjectsCache.addObject(ObjectsCache.java:204)
    at com.compomics.util.db.object.ObjectsDB.retrieveObject(ObjectsDB.java:480)
    at com.compomics.util.experiment.identification.Identification.retrieveObject(Identification.java:243)
    at com.compomics.util.experiment.identification.Identification.getSpectrumMatch(Identification.java:258)
    at eu.isas.peptideshaker.processing.PsmProcessorRunnable.processPsm(PsmProcessorRunnable.java:191)
    at eu.isas.peptideshaker.processing.PsmProcessorRunnable.run(PsmProcessorRunnable.java:151)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
    at java.base/java.lang.Thread.run(Thread.java:831)
hbarsnes commented 2 years ago

Hi! I'm afraid this is a known issue with our backend code that we have not yet been able to solve. In other words, it is not due to your input files (besides happening more often on larger datasets that use a lot of memory).

There are only two known fixes at the moment. The first option is to increase the amount of memory given to PeptideShaker. This you can do via the PeptideShaker Welcome dialog > Settings & Help > Settings > Java Settings > Memory.

The second option is to run the processing with only a single thread/core. However, this is significantly slower and should only be done if nothing else works. You can set the number of threads via the -threads option or in the New Project dialog when creating a new project.

Bin-cc commented 2 years ago

Thank you so much. I will try it.