vsearch join-pairs fatal error

I am trying to do a quick analysis of a small MiSeq run for a colleague (16S V4, 2x250 bp) on a new to them MiSeq. Normally I used dada2 these days, but when I do, no reads appear to be merged (which is odd because the quality doesn't seem terrible!). These are the settings I used for dada2. I keep making them more and more lenient in terms of max-ee but still nothing merged.

qiime dada2 denoise-paired --i-demultiplexed-seqs demux_qza/hallam_miseq_test.qza \
                           --p-trunc-len-f 200 \
                           --p-trim-left-r 10 \
                           --p-trunc-len-r 200 \
                           --p-max-ee-f 8 \
                           --p-max-ee-r 15 \
                           --p-n-threads 8 \
                           --output-dir dada2_output2 

So, I am trying vsearch join-pairs just at least to be able to show them how some of the samples they ran compare to those that have been run previously since they a MiSeq operator novices. So i guess what I am trying to say is - this analysis doesn't need to be before but it would at least be nice to classify some of the sequences! When I run vsearch join-pairs I get a zero exit status error for the following command.

qiime vsearch join-pairs \
    --i-demultiplexed-seqs demux_qza/hallam_miseq_test.qza \
    --p-minovlen 30 \
    --p-maxdiffs 50 \
    --p-minmergelen 220 \
    --p-maxmergelen 300 \
    --p-maxee 1 \
    --verbose \
    --o-joined-sequences hallam_miseq_test_joined.qza 

I'm attaching the verbose output here. In brief it says

Fatal error: File too small
/home/ckellogg/miniconda2/envs/qiime2-2019.10/lib/python3.6/site-packages/q2_vsearch/_join_pairs.py:93: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.
Traceback (most recent call last):
  File "/home/ckellogg/miniconda2/envs/qiime2-2019.10/lib/python3.6/site-packages/q2cli/commands.py", line 328, in __call__
    results = action(**arguments)
  File "</home/ckellogg/miniconda2/envs/qiime2-2019.10/lib/python3.6/site-packages/decorator.py:decorator-gen-131>", line 2, in join_pairs
  File "/home/ckellogg/miniconda2/envs/qiime2-2019.10/lib/python3.6/site-packages/qiime2/sdk/action.py", line 240, in bound_callable
    output_types, provenance)
  File "/home/ckellogg/miniconda2/envs/qiime2-2019.10/lib/python3.6/site-packages/qiime2/sdk/action.py", line 383, in _callable_executor_
    output_views = self._callable(**view_args)
  File "/home/ckellogg/miniconda2/envs/qiime2-2019.10/lib/python3.6/site-packages/q2_vsearch/_join_pairs.py", line 59, in join_pairs
    qmax, qmaxout, threads)
  File "/home/ckellogg/miniconda2/envs/qiime2-2019.10/lib/python3.6/site-packages/q2_vsearch/_join_pairs.py", line 145, in _join_pairs_w_command_output
  File "/home/ckellogg/miniconda2/envs/qiime2-2019.10/lib/python3.6/site-packages/q2_vsearch/_cluster_features.py", line 33, in run_command
    subprocess.run(cmd, check=True)
  File "/home/ckellogg/miniconda2/envs/qiime2-2019.10/lib/python3.6/subprocess.py", line 418, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['vsearch', '--fastq_mergepairs', '/tmp/qiime2-archive-vcms60uu/5a62a70d-edc3-455a-88c4-2aea3997c95f/data/B9_S17_L001_R1_001.fastq.gz', '--reverse', '/tmp/qiime2-archive-vcms60uu/5a62a70d-edc3-455a-88c4-2aea3997c95f/data/B9_S17_L001_R2_001.fastq.gz', '--fastqout', '/tmp/q2-SingleLanePerSampleSingleEndFastqDirFmt-sim_8k14/B9_31_L001_R1_001.fastq', '--fastq_ascii', '33', '--fastq_minlen', '1', '--fastq_minovlen', '30', '--fastq_maxdiffs', '50', '--fastq_qmin', '0', '--fastq_qminout', '0', '--fastq_qmax', '41', '--fastq_qmaxout', '41', '--fastq_minmergelen', '220', '--fastq_maxmergelen', '300', '--fastq_maxee', '1.0', '--threads', '1']' returned non-zero exit status 1.

Plugin error from vsearch:

  Command '['vsearch', '--fastq_mergepairs', '/tmp/qiime2-archive-vcms60uu/5a62a70d-edc3-455a-88c4-2aea3997c95f/data/B9_S17_L001_R1_001.fastq.gz', '--reverse', '/tmp/qiime2-archive-vcms60uu/5a62a70d-edc3-455a-88c4-2aea3997c95f/data/B9_S17_L001_R2_001.fastq.gz', '--fastqout', '/tmp/q2-SingleLanePerSampleSingleEndFastqDirFmt-sim_8k14/B9_31_L001_R1_001.fastq', '--fastq_ascii', '33', '--fastq_minlen', '1', '--fastq_minovlen', '30', '--fastq_maxdiffs', '50', '--fastq_qmin', '0', '--fastq_qminout', '0', '--fastq_qmax', '41', '--fastq_qmaxout', '41', '--fastq_minmergelen', '220', '--fastq_maxmergelen', '300', '--fastq_maxee', '1.0', '--threads', '1']' returned non-zero exit status 1.

And then goes on from there with more errors. As far s I can tell. Does anyone know what might be causing this error?

Thank you in advance for any help or thoughts you can provide!!

vsearch_join_verboseout.txt (67.6 KB)

You can also see the output from demux summarize here: hallam_miseq_test_summary.qzv (293.1 KB)

Hi @ctekellogg,

This means that no sequences were found in the file. This may occur on a per-sample basis so a failure for one sample might be spoiling it for the lot (and I see that one sample has zero reads in the demux summary — maybe use demux filter-samples to remove that sample and try again?)

That’s weird. Are you sure these are V4 reads? dada2 and vsearch failing makes me wonder if maybe the reads just don’t overlap.

250nt forward reads with V4 get the most informative sections anyway — you could probably proceed without much loss by just using the forward reads if there is an issue with the reverse reads preventing joining (e.g., reads are not really V4).

Oh - i didn’t realize that one sample could spoil it for all in vsearch (or dada2) for that manner. I’ll try removing that and see if that fixes the problem and report back.

And yes, these are V4 (515F-806R) sequences. They should have lots of overlap in a 2x250 run…in theory.

Thank you!

Just to follow up. Removing that one sample with 0 reads allowed vsearch to proceed. Does not seem to help with denoising and merging with dada2. I guess that will remain a mystery for now.

Thanks again for your help.

1 Like

maybe the overlap is below the min required by dada2 (12 nt in the latest q2-dada2 release)

you could proceed by joining with q2-vsearch and denoise with q2-deblur.

Good luck and thanks for the update!

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