Hello!
How many blast queries can be processed by remote blast calls with biopython's Bio.Blast.NCBIWWW.qblast
or BLAST+
with -remote
flag? When I go above 1 sequence I get the following message near the top of my XML results file (and no results:
internal_error: (Severe Error) Blast search error: Details: search failed. # Informational Message: [blastsrv4.REAL]: Error: CPU usage limit was exceeded, resulting in SIGXCPU (24).
It seems strange for it to die on one protein sequence, so I may be doing something wrong. My reason for doing this is I thought it might be quicker to feed all my queries in one BLASTP call rather than one by one, but this may make no difference.
My BLAST+ command is:
"path\to\blastp.exe" -query "path\to\fasta_query.txt" -remote -db nr -out "path\to\results.xml" -outfmt 5 -evalue 1e-30
My qblast code is:
from Bio.Blast import NCBIXML
from Bio.Blast import NCBIWWW
from Bio import SeqIO
results_summaries = []
for query in SeqIO.parse(file_queries, format="fasta"):
result_handle = NCBIWWW.qblast("blastp", "nr", query.seq, expect = 1*(10**-6))
with open(f"filename.xml", "w") as out_handle:
out_handle.write(result_handle.read())
with open(f"filename.xml",'r') as result_handle:
results = NCBIXML.read(result_handle)
max_bitscore = max([description.bits for description in results.descriptions])
top_hit = [description for description in results.descriptions if description.bits == max_bitscore]
results_summaries.append([query.name,top_hit])
See thread for some discussion on this topic: remote command line BLAST job ends in CPU error and gives MBEDTLS version mismatch
thanks! seems like there are few options for remote blast :(