DADA2 Error Return code 1

Hi All,

Have been attempting to run Dada2 (qiime2 v2018.4) using this script:

qiime dada2 denoise-paired --i-demultiplexed-seqs /scratch/pv54/Beks/Tanti-ST/tanti-st-imported-sequences.qza --p-trunc-len-f 0 --p-trunc-len-r 0 --p-trim-left-f 17 --p-trim-left-r 17 --p-n-threads 0 --p-no-hashed-feature-ids --p-max-ee 2 --verbose --output-dir /scratch/pv54/Beks/Tanti-ST/dada2/

I have run my datasets with this before with no issue, it just seems to be this recent combination that is setting it off (though a qiime2 update to 2018.11 has occurred in the last 2 days on the server, so I am hoping it isn’t related to that; I have run this command on this version and received the same error so I am assuming not)

The error reads.

R version 3.4.1 (2017-06-30)
Loading required package: Rcpp
DADA2 R package version: 1.6.0

  1. Filtering Error in names(answer) <- names1 :
    ‘names’ attribute [359] must be the same length as the vector [123]
    Execution halted
    Traceback (most recent call last):
    File “/usr/local/anaconda/4.3.1-Python3.5-gcc5/envs/qiime2-2018.4/lib/python3.5/site-packages/q2_dada2/_denoise.py”, line 229, in denoise_paired
    run_commands([cmd])
    File “/usr/local/anaconda/4.3.1-Python3.5-gcc5/envs/qiime2-2018.4/lib/python3.5/site-packages/q2_dada2/_denoise.py”, line 36, in run_commands
    subprocess.run(cmd, check=True)
    File “/usr/local/anaconda/4.3.1-Python3.5-gcc5/envs/qiime2-2018.4/lib/python3.5/subprocess.py”, line 398, in run
    output=stdout, stderr=stderr)
    subprocess.CalledProcessError: Command ‘[‘run_dada_paired.R’, ‘/home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/forward’, ‘/home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/reverse’, ‘/home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/output.tsv.biom’, ‘/home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/track.tsv’, ‘/home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/filt_f’, ‘/home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/filt_r’, ‘0’, ‘0’, ‘17’, ‘17’, ‘2.0’, ‘2’, ‘consensus’, ‘1.0’, ‘0’, ‘1000000’]’ returned non-zero exit status 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “/usr/local/anaconda/4.3.1-Python3.5-gcc5/envs/qiime2-2018.4/lib/python3.5/site-packages/q2cli/commands.py”, line 274, in call
results = action(**arguments)
File “”, line 2, in denoise_paired
File “/usr/local/anaconda/4.3.1-Python3.5-gcc5/envs/qiime2-2018.4/lib/python3.5/site-packages/qiime2/sdk/action.py”, line 231, in bound_callable
output_types, provenance)
File “/usr/local/anaconda/4.3.1-Python3.5-gcc5/envs/qiime2-2018.4/lib/python3.5/site-packages/qiime2/sdk/action.py”, line 366, in callable_executor
output_views = self._callable(**view_args)
File “/usr/local/anaconda/4.3.1-Python3.5-gcc5/envs/qiime2-2018.4/lib/python3.5/site-packages/q2_dada2/_denoise.py”, line 244, in denoise_paired
" and stderr to learn more." % e.returncode)
Exception: An error was encountered while running DADA2 in R (return code 1), please inspect stdout and stderr to learn more.

Plugin error from dada2:

An error was encountered while running DADA2 in R (return code 1), please inspect stdout and stderr to learn more.

See above for debug info.
Running external command line application(s). This may print messages to stdout and/or stderr.
The command(s) being run are below. These commands cannot be manually re-run as they will depend on temporary files that no longer exist.

Command: run_dada_paired.R /home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/forward /home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/reverse /home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/output.tsv.biom /home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/track.tsv /home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/filt_f /home/rebekah/pv54_scratch/QIIME_TEMP/tmpye93nahy/filt_r 0 0 17 17 2.0 2 consensus 1.0 0 1000000

Any help is much appreciated!

Cheers

Hi @black.beaker,

It looks like this is a result of running out of memory between your different threads, causing the odd failure you see:

Since you set:

--p-n-threads 0

QIIME 2 will attempt to infer how many threads are available and use that, but it's possible we've got something wrong there.

How much memory and how many physical CPU cores do you have (also how many logical)? If you know the CPU model I can look that up as well.


In any case the solution is to reduce that number of threads you use, maybe try half the number of cores you have?

P.S. I would also recommend using the upgraded QIIME 2 which includes a more recent DADA2. You would still have gotten the same error likely, but at least it would have made more sense :slight_smile:

Yep, took us a bit, but there seems to be something odd with our cluster. So have dropped the number of threads and it seems to be doing the trick for the moment.

We are now using v2018.11.

Cheers

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