gem-pasteur / Integron_Finder

Bioinformatics tool to find integrons in bacterial genomes
GNU General Public License v3.0
67 stars 22 forks source link

Improve error handling #42

Closed asetGem closed 6 years ago

asetGem commented 7 years ago

For now, when there is no sequence in the file provided by the user, it still tries to run hmmer and co., which crashed. Instead, write an error message saying that the sequence is missing in the provided input file

jeanrjc commented 7 years ago

Error found on Galaxy that we could handle better:

No record found

The fasta is empy

Fatal error: Exit code 1 ()
Traceback (most recent call last):
File "/mount/gensoft2/exe/Integron_Finder/1.5.1/bin/integron_finder", line 1608, in
alphabet=Seq.IUPAC.unambiguous_dna)
File "/local/gensoft2/adm/lib/python2.7/site-packages/biopython-1.65-py2.7-linux-x86_64.egg/Bio/SeqIO/__init__.py", line 659, in read
raise ValueError("No records found in handle")
ValueError: No records found in handle

Hmmsearch problem

The prot file is empty.

Fatal error: Exit code 1 ()
-------------------------------------
PRODIGAL v2.6.2 [February, 2015]
Univ of Tenn / Oak Ridge National Lab
Doug Hyatt, Loren Hauser, et al.
-------------------------------------
Request: Metagenomic, Phase: Training
Initializing training files...done!
-------------------------------------
Request: Metagenomic, Phase: Gene Finding
Finding genes in sequence #1 (242 bp)...done!
Error: Sequence file ./Results_Integron_Finder_dataset_262497/other/dataset_262497.prt is empty or misformatted
Traceback (most recent call last):
File "/mount/gensoft2/exe/Integron_Finder/1.5.1/bin/integron_finder", line 1693, in
find_integrase(replicon_path, replicon_name, out_dir)
File "/mount/gensoft2/exe/Integron_Finder/1.5.1/bin/integron_finder", line 1096, in find_integrase
raise RuntimeError("{0} failed return code = {1}".format(cmd[0], returncode))
RuntimeError: /local/gensoft2/exe/hmmer/3.1b1/scripts/hmmsearch failed return code = 1

Illegal character

Probable non ATGC character in sequence

Fatal error: Exit code 1 ()
-------------------------------------
PRODIGAL v2.6.2 [February, 2015]
Univ of Tenn / Oak Ridge National Lab
Doug Hyatt, Loren Hauser, et al.
-------------------------------------
Request: Metagenomic, Phase: Training
Initializing training files...done!
-------------------------------------
Request: Metagenomic, Phase: Gene Finding
Finding genes in sequence #1 (14299 bp)...done!
Error: Parse failed (sequence file /pasteur/projets/policy01/galaxy-prod/galaxy-dist/database/files/000/211/dataset_211042.dat):
Line 2: illegal character ^
Traceback (most recent call last):
File "/mount/gensoft2/exe/Integron_Finder/1.5.1/bin/integron_finder", line 1698, in
find_attc(replicon_path, replicon_name, out_dir)
File "/mount/gensoft2/exe/Integron_Finder/1.5.1/bin/integron_finder", line 1031, in find_attc
raise RuntimeError("{0} failed returncode = {1}".format(cmsearch_cmd[0], returncode))
RuntimeError: /local/gensoft2/exe/infernal/1.1/scripts/cmsearch failed returncode = 1
bneron commented 6 years ago

skip any replicon containing illegal characters (characters not in alphabet) see commit e29a81c

bneron commented 6 years ago

skip any replicon shorter than 50bp see 82b2758

bneron commented 6 years ago

check if prot file is empty before to run hmmsearch see 1c1f649