WrightonLabCSU / DRAM

Distilled and Refined Annotation of Metabolism: A tool for the annotation and curation of function for microbial and viral genomes
GNU General Public License v3.0
247 stars 52 forks source link

kofam non-zero exit status #131

Closed theo-llewellyn closed 1 year ago

theo-llewellyn commented 2 years ago

Hello,

I've installed and set up DRAM via bioconda and print_config seems to show databases are set up correctly. However, when I try and run DRAM I get the following error message:

Traceback (most recent call last):
  File "/rds/general/user/tbl19/home/anaconda3/envs/DRAM-env/bin/DRAM.py", line 168, in <module>
    args.func(**args_dict)
  File "/rds/general/user/tbl19/home/anaconda3/envs/DRAM-env/lib/python3.9/site-packages/mag_annotator/annotate_bins.py", line 967, in annotate_bins_cmd
    annotate_bins(fasta_locs, output_dir, min_contig_size, prodigal_mode, trans_table, bit_score_threshold,
  File "/rds/general/user/tbl19/home/anaconda3/envs/DRAM-env/lib/python3.9/site-packages/mag_annotator/annotate_bins.py", line 1006, in annotate_bins
    all_annotations = annotate_fastas(fasta_locs, output_dir, db_locs, db_handler, min_contig_size, prodigal_mode,
  File "/rds/general/user/tbl19/home/anaconda3/envs/DRAM-env/lib/python3.9/site-packages/mag_annotator/annotate_bins.py", line 944, in annotate_fastas
    annotations_list.append(annotate_fasta(fasta_loc, fasta_name, fasta_dir, db_locs, db_handler, min_contig_size,
  File "/rds/general/user/tbl19/home/anaconda3/envs/DRAM-env/lib/python3.9/site-packages/mag_annotator/annotate_bins.py", line 845, in annotate_fasta
    annotations = annotate_orfs(gene_faa, db_locs, tmp_dir, start_time, db_handler, custom_db_locs, bit_score_threshold,
  File "/rds/general/user/tbl19/home/anaconda3/envs/DRAM-env/lib/python3.9/site-packages/mag_annotator/annotate_bins.py", line 754, in annotate_orfs
    annotation_list.append(run_hmmscan_kofam(gene_faa, db_locs['kofam'], tmp_dir,
  File "/rds/general/user/tbl19/home/anaconda3/envs/DRAM-env/lib/python3.9/site-packages/mag_annotator/annotate_bins.py", line 237, in run_hmmscan_kofam
    run_process(['hmmsearch', '--domtblout', output, '--cpu', str(threads), kofam_hmm, gene_faa], verbose=verbose)
  File "/rds/general/user/tbl19/home/anaconda3/envs/DRAM-env/lib/python3.9/site-packages/mag_annotator/utils.py", line 39, in run_process
    return subprocess.run(command, check=check, shell=shell, stdout=subprocess.PIPE,
  File "/rds/general/user/tbl19/home/anaconda3/envs/DRAM-env/lib/python3.9/subprocess.py", line 528, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['hmmsearch', '--domtblout', '/rds/general/user/tbl19/home/bin_11_permissive_annotation/working_dir/bin.11.permissive/tmp/kofam_profile.b6', '--cpu', '8', '/rds/general/ephemeral/user/tbl19/ephemeral/DRAM_data/database_files/kofam_profiles.tar.gz', '/rds/general/user/tbl19/home/bin_11_permissive_annotation/working_dir/bin.11.permissive/tmp/genes.faa']' returned non-zero exit status 1.

The output file shows it got to the kofam stage:

0:00:00.174327: Retrieved database locations and descriptions
0:00:00.174351: Annotating bin.11.permissive
0:00:44.314737: Turning genes from prodigal to mmseqs2 db
0:00:48.584966: Getting hits from kofam

The output directory has been created and some temporary files are in there.

At the moment I'm trying to run it on just one bin to test it out. Here is the command I used to run DRAM:

DRAM.py annotate \
 -i /rds/general/user/tbl19/home/bin.11.permissive.fa \
 -o /rds/general/user/tbl19/home/bin_11_permissive_annotation \
 --threads 8

Any idea what might be causing this error? I tried reinstalling DRAM in a new conda environment and downloading the databases again but same issue. I also tried a different bin and same error.

Any help would be much appreciated and thanks for building such a cool piece of software!!

Thanks, Theo

rmFlynn commented 2 years ago

You can try running with the -verbose flag set, but the fastest way to find the true cause of the problem is to run hmmsearch --domtblout /rds/general/user/tbl19/home/bin_11_permissive_annotation/working_dir/bin.11.permissive/tmp/kofam_profile.b6 --cpu 8 /rds/general/ephemeral/user/tbl19/ephemeral/DRAM_data/database_files/kofam_profiles.tar.gz /rds/general/user/tbl19/home/bin_11_permissive_annotation/working_dir/bin.11.permissive/tmp/genes.faa this is the command that's failing, and running it should tell us more about the problem. I suspect that the installation is not the problem.

theo-llewellyn commented 2 years ago

Hi, this is error I get

Error: File format problem in trying to open HMM file /rds/general/ephemeral/user/tbl19/ephemeral/DRAM_data/database_files/kofam_profiles.tar.gz.
Format tag is 'profiles/': unrecognized.
Current H3 format is 'HMMER3/f'. Previous H2/H3 formats also supported.

I've tried setting the --kofam_profiles_loc to DRAM_env_data/kofam_profiles.hmm instead of DRAM_data/database_files/kofam_profiles.tar.gz and its seems to be running. Is that an appropriate solution?

Thanks, Theo

rmFlynn commented 2 years ago

Yes, that is correct, it should automatically have used the hmm file. I am sorry I missed that. Your solution is correct.