Nesvilab / FragPipe

A cross-platform proteomics data analysis suite
http://fragpipe.nesvilab.org
Other
184 stars 37 forks source link

FragPipe headless mode on Windows quits after checking MSFragger version #824

Closed npinter closed 2 years ago

npinter commented 2 years ago

Hi,

I try to execute FP18 in headless mode on Windows Server 2022. However, it exits shortly after execution with:

2022-09-13 10:10:37,439 WARN  - Philosopher update available.
2022-09-13 10:10:39,041 ERROR - There is a newer version of MSFragger available [3.5].

Here is my command:

C:\Users\pinter>"C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\jre\bin\java.exe"     -classpath "C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\fragpipe-18.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\juniversalchardet-2.4.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\gson-2.8.9.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\streamex-0.8.1.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\jool-java-8-0.9.14.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\maven-artifact-3.8.5.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\jgrapht-io-1.4.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\jgrapht-ext-1.4.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\jgrapht-core-1.4.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\jgraphx-4.2.2.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\commons-logging-api-1.1.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\httpmime-4.5.13.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\commons-compress-1.21.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\commons-text-1.6.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\commons-lang3-3.12.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\miglayout-swing-5.3.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\rxswing-0.27.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\rxjava-1.3.8.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\eventbus-java-3.3.1.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\jsoup-1.14.3.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\okhttp-4.9.3.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\logback-classic-1.2.10.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\slf4j-api-1.7.32.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\balloontip-1.2.4.1.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\org-netbeans-swing-outline-RELEASE130.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\commons-io-2.11.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\snakeyaml-1.30.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\plexus-utils-3.3.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\jheaps-0.11.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\antlr4-runtime-4.7.2.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\httpclient-4.5.13.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\miglayout-core-5.3.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\okio-jvm-3.0.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\kotlin-stdlib-jdk8-1.5.31.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\kotlin-stdlib-jdk7-1.5.31.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\kotlin-stdlib-1.5.31.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\logback-core-1.2.10.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\org-openide-util-ui-RELEASE130.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\httpcore-4.4.13.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\commons-codec-1.11.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\kotlin-stdlib-common-1.5.31.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\annotations-13.0.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\org-openide-util-RELEASE130.jar;C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\fragpipe\lib\org-openide-util-lookup-RELEASE130.jar" com.dmtavt.fragpipe.FragPipeMain --headless --workflow C:\Data_analysis_software\labelEff\fp18_labelEff.workflow --manifest D:\data\NP\FragPipe\labelEff_2209130949\fp18_labelEff.fp-manifest --workdir D:\data\NP\FragPipe\labelEff_2209130949 --ram 250 --threads 24 --config-msfragger C:\Data_analysis_software\FragPipe\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\MSFragger-3.5\MSFragger-3.5.jar

I've already tried.. ..downloading MSFragger again ..starting Java with elevated rights ..adding MSFragger paths in the workflow file

fragpipe-config.bin-python=C\:\\ProgramData\\Miniconda3\\python
fragpipe-config.bin-msfragger=C\:\\Data_analysis_software\\FragPipe\\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\\MSFragger-3.5\\MSFragger-3.5.jar
fragpipe-config.bin-philosopher=C\:\\Data_analysis_software\\FragPipe\\fragpipe_v18_TMT-integrator_v4.0.2_pre_release\\fragpipe\\tools\\philosopher_v4.4.0_windows_amd64\\philosopher.exe

I'm behind a very restrictive firewall, so probably checking the current MSFragger server version fails?!

Thank you!

Best Niko

npinter commented 2 years ago

I've tested it on my private machine and it works with the exact same command (just different paths). So I guess it has something to do with checking the server version of Philosopher + MSFragger + restrictive firewall?

However, a new error was raised on my private machine:

2022-09-13 10:44:09,130 WARN  - The output directory is not empty. Some files might be overwritten in: D:\test\fragpipe_18_jre
2022-09-13 10:44:09,201 ERROR - Not all TMT groups have annotation files set. Check <b>Quant (Isobaric)</b> tab, <b>TMT-Integrator config</b>.

Is there a way of adding a TMT annotation file in the workflow config?

EDIT: I've fixed the issue by putting a annotation.txt file in the working directory! BUT, no other annotation.txt file is allowed to be located in any subfolder (otherwise the error above is raised)! So the approach here is to put the mzML files + annotation.txt in a separate folder.

npinter commented 2 years ago

I've added proxy IP + port to DEFAULT_JVM_OPTIONS in the fragpipe.bat which seems to fix my issue: set DEFAULT_JVM_OPTS=-Dhttp.proxyHost=191.192.222.21 -Dhttp.proxyPort=80

2022-09-13 11:59:46,419 WARN  - Something happened while checking for IonQuant updates
2022-09-13 11:59:46,419 WARN  - Something happened while checking for MSFragger updates
2022-09-13 11:59:51,420 WARN  - Something happened while checking for MSFragger updates
2022-09-13 11:59:52,924 WARN  - Something happened while checking for IonQuant updates
2022-09-13 11:59:57,122 WARN  - The output directory is not empty. Some files might be overwritten..........
....
npinter commented 2 years ago

To close this issue it would be nice to have a fix for the version checking issue and parameter in the workflow config to define the annotation.txt path.

Thank you!

fcyu commented 2 years ago

Thank you for the feedback and testing.

As to the version checking issue, I think I fixed it in the pre-release version. Can you try to see if this one (https://www.dropbox.com/t/iYL1P9MIaUFIJwJy) works for you?

Is there a way of adding a TMT annotation file in the workflow config? EDIT: I've fixed the issue by putting a annotation.txt file in the working directory! BUT, no other annotation.txt file is allowed to be located in any subfolder (otherwise the error above is raised)! So the approach here is to put the mzML files + annotation.txt in a separate folder.

Unfortunately, yes, you have to do that because this is how Philosopher pairs the mzML files and annotation.txt files. We will make it more robust in the future.

Best,

Fengchao

npinter commented 2 years ago

Thanks for providing the pre-release. I can confirm the "version checking issue" is resolved :)