MathOnco / NeoPredPipe

Neoantigens prediction pipeline for multi- or single-region vcf files using ANNOVAR and netMHCpan.
GNU Lesser General Public License v3.0
100 stars 28 forks source link

OSError: [Errno 8] Exec format error #6

Closed qindan2008 closed 5 years ago

qindan2008 commented 5 years ago

Run the test data as the flowing:

step1 python main_netMHCpan_pipe.py --preponly -I ./Example/input_vcfs -H ./Example/HLAtypes/hlatypes.txt -o ./ -n TestRun -c 1 2 -E 8 9 10
INFO: Annovar reference files of build hg19 were given, using this build for all analysis. INFO: Begin. INFO: Running convert2annovar.py on ./Example/input_vcfs/test1.vcf INFO: VCF Conversion Process complete ./Example/input_vcfs/test1.vcf INFO: Running annotate_variation.pl on avready/test1.avinput INFO: ANNOVAR annotation Process complete for avready/test1.avinput INFO: Running coding_change.pl on avannotated/test1.avannotated.exonic_variant_function INFO: Coding predictions complete for avannotated/test1.avannotated.exonic_variant_function INFO: Input files prepared and completed for test1 INFO: Running convert2annovar.py on ./Example/input_vcfs/test2.vcf INFO: VCF Conversion Process complete ./Example/input_vcfs/test2.vcf INFO: Running annotate_variation.pl on avready/test2.avinput INFO: ANNOVAR annotation Process complete for avready/test2.avinput INFO: Running coding_change.pl on avannotated/test2.avannotated.exonic_variant_function INFO: Coding predictions complete for avannotated/test2.avannotated.exonic_variant_function INFO: Input files prepared and completed for test2 INFO: Complete. INFO: Preprocessed intermediary files are in avready, avannotated and fastaFiles. If you wish to perform epitope prediction, run the pipeline again without the --preponly flag, intermediary files will be automatically detected.

step2 python main_netMHCpan_pipe.py -I ./Example/input_vcfs -H ./Example/HLAtypes/hlatypes.txt -o ./ -n TestRun -c 1 2 -E 8 9 10
INFO: Annovar reference files of build hg19 were given, using this build for all analysis. INFO: Begin. INFO: Proper directory already exists. Continue. INFO: Proper directory already exists. Continue. INFO: Proper directory already exists. Continue. INFO: Proper directory already exists. Continue. INFO: ANNOVAR Ready files for test1 already present. INFO: ANNOVAR Annotation files for test1 already present. INFO: Coding change fasta files for test1 already present. INFO: Coding change fasta files test1 has already been reformatted. INFO: Predicting neoantigens for test1 INFO: Running Epitope Predictions for test1 on epitopes of length 8 Traceback (most recent call last): File "main_netMHCpan_pipe.py", line 456, in main() File "main_netMHCpan_pipe.py", line 441, in main t.append(Sample(localpath, patname, patFile, hlas[patname], annPaths, netMHCpanPaths, pepmatchPaths, Options)) File "main_netMHCpan_pipe.py", line 94, in init self.callNeoantigens(FilePath, netmhcpan, Options) File "main_netMHCpan_pipe.py", line 151, in callNeoantigens self.epcalls = predict_neoantigens(FilePath, self.patID, self.peptideFastas, self.hlasnormed , Options.epitopes, netmhcpan, Options.ELpred) File "/Users/qindan/programs/NeoPredPipe-1.0/vcf_manipulate.py", line 233, in predict_neoantigens netMHC_run = subprocess.Popen(cmd, stdout=epitope_pred, stderr=epitope_pred) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 710, in init errread, errwrite) File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1335, in _execute_child raise child_exception OSError: [Errno 8] Exec format error

How can I fix the error ? Thanks.

rschenck commented 5 years ago

It appears this is a problem with the execution of netMHCpan being called within neopredpipe. Can you please provide me with information on the system you're running this on while I look more into this error?

qindan2008 commented 5 years ago
2019-02-19 6 00 27
elakatos commented 5 years ago

Hi, Just for checking, can you make sure execution permissions are given to all users for the netMHCpan file executable? 'chmod 755 netMHCpan' in the directory should ensure that. In the meantime we are trying to reproduce the issue to fix it.

qindan2008 commented 5 years ago

I made a stupid error. I run a unix version of netMHCpan on MacOS, after changed to the right version, it run without error.

step1: python main_netMHCpan_pipe.py --preponly -I ./Example/input_vcfs -H ./Example/HLAtypes/hlatypes.txt -o ./ -n TestRun -c 1 2 -E 8 9 10 INFO: Annovar reference files of build hg19 were given, using this build for all analysis. INFO: Begin. INFO: Running convert2annovar.py on ./Example/input_vcfs/test1.vcf INFO: VCF Conversion Process complete ./Example/input_vcfs/test1.vcf INFO: Running annotate_variation.pl on avready/test1.avinput INFO: ANNOVAR annotation Process complete for avready/test1.avinput INFO: Running coding_change.pl on avannotated/test1.avannotated.exonic_variant_function INFO: Coding predictions complete for avannotated/test1.avannotated.exonic_variant_function INFO: Input files prepared and completed for test1 INFO: Running convert2annovar.py on ./Example/input_vcfs/test2.vcf INFO: VCF Conversion Process complete ./Example/input_vcfs/test2.vcf INFO: Running annotate_variation.pl on avready/test2.avinput INFO: ANNOVAR annotation Process complete for avready/test2.avinput INFO: Running coding_change.pl on avannotated/test2.avannotated.exonic_variant_function INFO: Coding predictions complete for avannotated/test2.avannotated.exonic_variant_function INFO: Input files prepared and completed for test2 INFO: Complete. INFO: Preprocessed intermediary files are in avready, avannotated and fastaFiles. If you wish to perform epitope prediction, run the pipeline again without the --preponly flag, intermediary files will be automatically detected.

step2 python main_netMHCpan_pipe.py -I ./Example/input_vcfs -H ./Example/HLAtypes/hlatypes.txt -o ./ -n TestRun -c 1 2 -E 8 9 10 INFO: Annovar reference files of build hg19 were given, using this build for all analysis. INFO: Begin. INFO: Proper directory already exists. Continue. INFO: Proper directory already exists. Continue. INFO: Proper directory already exists. Continue. INFO: Proper directory already exists. Continue. INFO: ANNOVAR Ready files for test1 already present. INFO: ANNOVAR Annotation files for test1 already present. INFO: Coding change fasta files for test1 already present. INFO: Coding change fasta files test1 has already been reformatted. INFO: Predicting neoantigens for test1 INFO: Running Epitope Predictions for test1 on epitopes of length 8 INFO: Running Epitope Predictions for test1 on epitopes of length 9 INFO: Running Epitope Predictions for test1 on epitopes of length 10 INFO: Predictions complete for test1 on epitopes of length 10 INFO: Digesting neoantigens for test1 INFO: Digesting neoantigens for test1 INFO: Digesting neoantigens for test1 INFO: Object size of neoantigens: 72 Kb INFO: ANNOVAR Ready files for test2 already present. INFO: ANNOVAR Annotation files for test2 already present. INFO: Coding change fasta files for test2 already present. INFO: Coding change fasta files test2 has already been reformatted. INFO: Predicting neoantigens for test2 INFO: Running Epitope Predictions for test2 on epitopes of length 8 INFO: Running Epitope Predictions for test2 on epitopes of length 9 INFO: Running Epitope Predictions for test2 on epitopes of length 10 INFO: Predictions complete for test2 on epitopes of length 10 INFO: Digesting neoantigens for test2 INFO: Digesting neoantigens for test2 INFO: Digesting neoantigens for test2 INFO: Object size of neoantigens: 72 Kb INFO: Summary Tables Complete. INFO: Complete

However, the results were empty.

For TestRun.neoantigens.summarytable.txt:

2019-02-20 1 23 52

For TestRun.neoantigens.txt:

2019-02-20 1 25 13
elakatos commented 5 years ago

It looks to me that there is an issue with netMHCpan, it probably fails and only outputs an error message in the output file instead of predictions. Can you run the second step with -d (dirty mode, not deleting intermediary files), and let us know if what the "./tmp/[test12].epitopes.[8-10].txt" files contain? Also double check your netMHCpan configuration file, so that netMHCpan would run on its own if not called from our pipeline?

Also, I noticed that the latest version of the pipeline is supposed to produce different INFO lines, so it seems you are running a slightly outdated version. I don't think that is behind the empty output issue, but could lead to other problems if you were to have pulled the repo between stable version, plus your current version this way contains less functionalities. Can you make sure you use the latest state of the pipeline?

qindan2008 commented 5 years ago

Yes, the problem existed in netMHCpan. It wasn't configured well. Thank you very much.