biologger / speciesprimer

The SpeciesPrimer pipeline is intended to help researchers finding specific primer pairs for the detection and quantification of bacterial species in complex ecosystems.
GNU General Public License v3.0
40 stars 19 forks source link

XML file is empty #21

Open vetrabindra01 opened 1 year ago

vetrabindra01 commented 1 year ago

Hi,

I am having the following issue. Any help will be appreciated.

A problem with the BLAST results file /primerdesign/Lactobacillus_curvatus/Pangenome/results/primer/primerblast/primer_0_results.xml was detected. Please check if the file was removed and start the run again

removed /primerdesign/Lactobacillus_curvatus/Pangenome/results/primer/primerblast/primer_0_results.xml fatal error while working on Lactobacillus_curvatus check logfile /primerdesign/speciesprimer_2023_04_03.log Your XML file was empty Traceback (most recent call last): File "/pipeline/speciesprimer.py", line 4168, in main run_pipeline_for_target(target, config) File "/pipeline/speciesprimer.py", line 4082, in run_pipeline_for_target config, primer_dict).run_primer_qc() File "/pipeline/speciesprimer.py", line 3537, in run_primer_qc self.call_blastparser.run_blastparser("primer") File "/pipeline/speciesprimer.py", line 2588, in run_blastparser align_dict = self.blast_parser(self.primerblast_dir) File "/pipeline/speciesprimer.py", line 2518, in blast_parser align_dict = self.bp_parse_xml_files(blast_dir) File "/pipeline/speciesprimer.py", line 2485, in bp_parse_xml_files blastrecords = self.parse_BLASTfile(filename) File "/pipeline/speciesprimer.py", line 2155, in parse_BLASTfile record_list = list(blast_records) File "/usr/local/lib/python3.5/dist-packages/Bio/Blast/NCBIXML.py", line 798, in parse raise ValueError("Your XML file was empty") ValueError: Your XML file was empty Error report: for target Lactobacillus_curvatus Error 1: A problem with the BLAST results file /primerdesign/Lactobacillus_curvatus/Pangenome/results/primer/primerblast/primer_0_results.xml was detected. Please check if the file was removed and start the run again for target Lactobacillus_curvatus Error 2: fatal error while working on Lactobacillus_curvatus check logfile /primerdesign/speciesprimer_2023_04_03.log

Thanks, Rabindra

biologger commented 1 year ago

Hi, The error message indicates an empty blast results file... did you re-run the pipeline and the problem is still the same? It is a problem with the blastn step, maybe the blast db was not fully/correctly downloaded or something else is not working as expected. On docker desktop make sure you have more than the default 2 GB memory allocated to the container, otherwise there is often not enough memory to write the results.

wildtypehuman commented 8 months ago

Dear Biologger,

I am having a similar issue. My container has 7GB memory. And the blastdb was downloaded successfully. Was there a useful fix for Rabindra? Thanks for the help.

Alina

biologger commented 8 months ago

Hi Alina,

7 GB of memory is maybe a bit low depending on the number of core genes and the blastdb.

For troubleshooting you could check if it works if you use the --blastseqs option and try with 500 and then 100 sequences.

To double check if the blastdb is actually working correctly use the blastdbcheck command. If you want to do this inside the container you can use this command (see here for more info)

sudo docker run -v $HOME/blastdb:/blastdb \ -v $HOME/primerdesign:/primerdesign \ --name cmdline -it biologger/speciesprimer /bin/bash

and then the following command using the name of the blastdb you have downloaded: blastdbcheck -db /blastdb/rep_prok_ref_genomes

I hope this helps, otherwise please let me know.

wildtypehuman commented 8 months ago

Thank you for your swift response, Biologger :) I will troubleshoot and report on the progress!