Plugin error from feature-classifier: BLAST6 file is empty.

Hi, I'm trying to build updated databases for 18S, COI and 12S (mifish).

Once I have my fasta file with the sequences and the taxonomy tsv files i use qiime commands to convert into qza files:

qiime tools import --type 'FeatureData[Sequence]' --input-path xxx.fasta --input-format DNAFASTAFormat --output-path xxx.qza
qiime tools import --type 'FeatureData[Taxonomy]' --input-format HeaderlessTSVTaxonomyFormat --input-path** xxx.tsv --output-path xxx.qza**

I then use the feature classifier to assign taxonomies:
qiime feature-classifier classify-consensus-blast
--i-query mifish_rep-seqs.qza
--i-reference-reads references.12s.miyaSeqs.qza
--i-reference-taxonomy references.12s.miyaTaxonomy.qza
--p-perc-identity 0.97
--output-dir references.12s.miyaTaxonomy97

But I always get an error for any new database I try:
Plugin error from feature-classifier:

BLAST6 file is empty.

Could you please help me out? This used to work really well, maybe 3-4 years ago but not anymore.
Thank you.
Vera

Hello @cefas23,

Could rerun with the --verbose flag and post the output? It seems like maybe it's erroring because there were no hits, thus an empty blast6 file.

Hello

I've checked and that might be the reason. thanks.
another error with a different data and database shows up.
When I run :
qiime feature-classifier classify-consensus-blast
--i-query nis_trimmed_ASVs/nis_rep-seqs.qza
--i-reference-reads COIsequence23.qza
--i-reference-taxonomy COItaxonomy23.qza
--p-perc-identity 0.97
--output-dir nis_COItaxonomy97/
--verbose

I get this error:
(1/1) Invalid value for '--i-reference-reads': COIsequence23.qza was created
by 'QIIME 2023.5.1'. The currently installed framework cannot interpret
archive version '6'.

could you please advice?
Thank you.

Hello @cefas23,

It looks like COIsequence23.qza was generated with qiime 2023.5, which introduced a new archive version, but you're using something lower than 2023.5. If you upgrade to 2023.5 or generate COIsequence23.qza with <2023.5, this issue should go away.

1 Like

Many thanks @colinvwood !
I managed to BLAst using that COIsequence23 database but the sequence names did not match the taxonomy. Had to re-do a new one. Upon using the classifier command I got a complete different error about using "Use pandas.concat instead." which I have no idea how to fix. Please see the command and message bellow please let me know if you have any idea how I should proceed? Thank you.

% qiime feature-classifier classify-consensus-blast \

--i-query nis_trimmed_ASVs/nis_rep-seqs.qza \

--i-reference-reads GenBank_seq_080319.qza \

--i-reference-taxonomy GenBank_tax_080319.qza \

--p-perc-identity 0.97 \

--output-dir nis_COItaxonomy97/ \

--verbose

Running external command line application. This may print messages to stdout and/or stderr.

The command being run is below. This command cannot be manually re-run as it will depend on temporary files that no longer exist.

Command: blastn -query /var/folders/jh/3nkmqc753rldc1pq_n6ytsfw0000gn/T/qiime2/cefas23/data/259f4921-8617-45c0-ae3a-b4b37e292f7b/data/dna-sequences.fasta -evalue 0.001 -strand both -outfmt 6 -subject /var/folders/jh/3nkmqc753rldc1pq_n6ytsfw0000gn/T/qiime2/cefas23/data/54e09e43-2e62-4a85-b889-09021d6258f2/data/dna-sequences.fasta -perc_identity 97.0 -qcov_hsp_perc 80.0 -max_target_seqs 10 -out /var/folders/jh/3nkmqc753rldc1pq_n6ytsfw0000gn/T/q2-BLAST6Format-q6da4uz7

Warning: [blastn] Subject_2926544 Y14709.1 Choanomphalus baicalensis mitochondrial cytochrome c oxidase subunit I gene, partial: Subject sequence contians no data

/Users/cefas23/miniforge3/envs/qiime2-2023.7/lib/python3.8/site-packages/q2_feature_classifier/_blast.py:80: FutureWarning: The frame.append method is deprecated and will be removed from pandas in a future version. Use pandas.concat instead.

missed = missed.append(

/Users/cefas23/miniforge3/envs/qiime2-2023.7/lib/python3.8/site-packages/q2_feature_classifier/_blast.py:84: FutureWarning: The frame.append method is deprecated and will be removed from pandas in a future version. Use pandas.concat instead.

result = result.append(missed, ignore_index=True)

Hi @colinvwood
I thought it could be the new qiime2-2023.7 so I've installed qiime2-2023.5 and although I did not get the panda error, I got another error:

zsh: killed qiime feature-classifier classify-consensus-blast --i-query 0.97

I have no idea why this happens. could help please?
Thank you.

Hello @cefas23,

The pandas.concat messages are actually warnings, not errors.

As far as the zsh: killed error, could you run the command that triggered that with the --verbose flag and post the whole error output?

thank you @colinvwood. the command was
~ % qiime feature-classifier classify-consensus-blast \

--i-query nis_trimmed_ASVs/nis_rep-seqs.qza \

--i-reference-reads COI-midori-sequences.qza \

--i-reference-taxonomy COI-midori-taxonomy.qza \

--p-perc-identity 0.97 \

--output-dir nis_midori_COItaxonomy97/ \

--verbose

but I cannot see the error output

Hello @cefas23,

What do you mean you can't see the output? Nothing is printed at all? Or only zsh: killed qiime feature-classifier classify-consensus-blast --i-query 0.97?

yes indeed I can only see zsh: killed qiime feature-classifier classify-consensus-blast --i-query 0.97 nothing else!

Hello @cefas23,

It might be a memory issue, how long does the command run before it gets killed?

Hello @colinvwood,
it runs probably around 1-2h but it's the first time it happens, perhaps because the new databases are bigger? could there be a way around this?
Thank you.

Hello @cefas23,

To confirm that it is a memory issue you could look at the memory usage while the process is running using a tool like htop or top.

As far as a way around this, if it does turn out to be a memory issue, then getting more memory will be the easiest solution. If you're on a cluster you can just request more, for example.

From my knowledge, this command shouldn't be very memory intensive though, so it could be a different issue.

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.