Demultiplexing fails (QIIME2/2019.4)

Hi everyone,

We tried demultiplexing sequences using the commands below:

qiime demux emp-single
–i-seqs seqs.qza
–m-barcodes-file metadata-cat.tsv
–m-barcodes-column BarcodeSequence
–o-per-sample-sequences demux.qza
–o-error-correction-details demux-details.qza

However, it kept returning this error:
Plugin error from demux:
Metadata must contain at least one ID

The metadata has been validated using Keemei.

Does anyone have any ideas about this?


Hi @Chandallin,
Welcome to the forum!
Your metadata file looks ok to me. Could you share with us the actual .tsv file you are uploading instead of the google spreadsheet version? I’m wondering if somehow the formatting has broken in the conversion.

2 posts were split to a new topic: Demuxing non-golay barcodes in 2019.4

Can you please run the following and return the results here?

# first, activate your 2019.4 env
# then, run:
conda list q2-demux


Thanks for helping!

Please see the results below:

# packages in environment at /anaconda2/envs/qiime2-2019.4: 
# Name        Version     Build       Channel 
  q2-demux   2019.4.1   py36_0   qiime2/label/r2019.4


Hi @Mehrbod_Estaki
Thanks for checking! Please see the .tsv file attached.metadata-cat.tsv (3.9 KB)

1 Like

Hi @thermokarst,

When I ran this with QIIME2 on my own computer, it worked. The error only comes out when I used the university high-performance computing resource.

Hi @Chandallin - can you please rerun the command with the --verbose flag and paste the complete error log? Also, any chance you can share seqs.qza? You can send me a link to download it in a private message if you want to share that way. Thanks!

2 posts were split to a new topic: Trouble with golay setting when demuxing reads

Hi @thermokarst,

Here’s the error log:
When running QIIME2, do not have any other modules loaded as other modules might conflict with QIIME2. You can do the following commands to ensure nothing else is loaded
module purge
module load QIIME2/2019.4
Traceback (most recent call last):
File “/home/apps/software/QIIME2/2019.4/lib/python3.6/site-packages/q2cli/”, line 311, in call
results = action(**arguments)
File “</home/apps/software/QIIME2/2019.4/lib/python3.6/site-packages/>”, line 2, in emp_single
File “/home/apps/software/QIIME2/2019.4/lib/python3.6/site-packages/qiime2/sdk/”, line 231, in bound_callable
output_types, provenance)
File “/home/apps/software/QIIME2/2019.4/lib/python3.6/site-packages/qiime2/sdk/”, line 393, in callable_executor
spec.qiime_type, output_view, spec.view_type, prov)
File “/home/apps/software/QIIME2/2019.4/lib/python3.6/site-packages/qiime2/sdk/”, line 265, in _from_view
result = transformation(view)
File “/home/apps/software/QIIME2/2019.4/lib/python3.6/site-packages/qiime2/core/”, line 70, in transformation
new_view = transformer(view)
File “/home/apps/software/QIIME2/2019.4/lib/python3.6/site-packages/qiime2/core/”, line 220, in wrapped
file_view = transformer(view)
File “/home/apps/software/QIIME2/2019.4/lib/python3.6/site-packages/q2_demux/”, line 123, in _8
File “/home/apps/software/QIIME2/2019.4/lib/python3.6/site-packages/qiime2/metadata/”, line 362, in init
File “/home/apps/software/QIIME2/2019.4/lib/python3.6/site-packages/qiime2/metadata/”, line 93, in init
“%s must contain at least one ID.” %
ValueError: Metadata must contain at least one ID.

Plugin error from demux:

Metadata must contain at least one ID.

See above for debug info.


Hmm, this step ran to completion on my end, successfully.

When you ran this check above, was that done in the same QIIME 2 “module” as in this step? I ask because it looks like maybe you have more than one QIIME 2 2019.4 environment on hand. One of them has q2-demux 2019.4.1, and the other maybe has 2019.4.0. Can we sort this out before we move forward? Basically, if any of your deployments of QIIME 2 2019.4 have q2-demux 2019.4.0, the environment needs to be updated. Thanks!

I ran this on my own laptop. And the demultiplexing step can be completed without errors on my laptop.

This is from the high-performance computing system of the university. And the errors came up when using the system. So maybe I should ask the university to update the environment?


Hey @Chandallin, this all makes sense to me, thanks for clarifying.

Yes you should, the 2019.4.1 patch contains a critical bug fix.

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