Not able to solve environment with Q2 2021.4

Hello,

I'm using Anaconda version 4.5.11 to update to Q2 2021.4 natively and I received this error:
Solving environment: failed

ResolvePackageNotFound:
  - q2-diversity=2021.4.0
  - nodejs[version='>=15.14.0,<16.0a0']
  - __glibc[version='>=2.17,<3.0.a0']
  - q2-demux=2021.4.0
  - nodejs[version='>=15.14.0,<16.0a0']
  - __glibc[version='>=2.17,<3.0.a0']
  - nodejs=15.14.0
  - __glibc[version='>=2.17,<3.0.a0']
  - q2-feature-classifier=2021.4.0
  - q2-quality-control=2021.4
  - q2-taxa=2021.4
  - nodejs[version='>=15.14.0,<16.0a0']
  - __glibc[version='>=2.17,<3.0.a0']
  - q2-quality-control=2021.4.0
  - q2-taxa=2021.4
  - nodejs[version='>=15.14.0,<16.0a0']
  - __glibc[version='>=2.17,<3.0.a0']
  - q2-taxa=2021.4.0
  - nodejs[version='>=15.14.0,<16.0a0']
  - __glibc[version='>=2.17,<3.0.a0']

This appears to be similar to this forum post where the problem was conda-forge moving some packages. Could that be the problem again and the environment files can be updated to solve?

Thanks,
Samantha

1 Like

Hi @saatkinson!

Can you please run the following command, and paste the results here?

conda info

I think you might be running into the situation described here, where your version of glibc is too old:

Here is the output from conda info. It looks like my glibc is 2.31.

active environment : base
    active env location : /home/saatkinson/anaconda3
            shell level : 1
       user config file : /home/saatkinson/.condarc
 populated config files : /home/saatkinson/.condarc
          conda version : 4.5.11
    conda-build version : 3.15.1
         python version : 3.7.0.final.0
       base environment : /home/saatkinson/anaconda3  (writable)
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://conda.anaconda.org/bioconda/linux-64
                          https://conda.anaconda.org/bioconda/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/free/linux-64
                          https://repo.anaconda.com/pkgs/free/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://repo.anaconda.com/pkgs/pro/linux-64
                          https://repo.anaconda.com/pkgs/pro/noarch
          package cache : /home/saatkinson/anaconda3/pkgs
                          /home/saatkinson/.conda/pkgs
       envs directories : /home/saatkinson/anaconda3/envs
                          /home/saatkinson/.conda/envs
               platform : linux-64
             user-agent : conda/4.5.11 requests/2.19.1 CPython/3.7.0 Linux/4.4.0-17763-Microsoft ubuntu/20.04 glibc/2.31
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False

Thanks,
Samantha

Hmmmm, interesting, that looks like a new glibc. It looks like you're running this in the WSL on Windows, is that correct?

Hi @thermokarst !

Yes I'm using (or trying to) WSL, installed on Windows Server 2019 standard.

~Samantha

Are you able to upgrade to the latest version of conda? You're using a fairly old version - I think that conda handles these virtual packages (like glibc) a bit differently in more modern versions of conda.

Hi @thermokarst,

Updating to the latest version of conda allowed the install, but I think something is still wrong.

When I try to make a classifier using reference reads and taxonomy files from a previous version of Q2 I get an error that the files aren't Q2 artifacts.

qiime feature-classifier fit-classifier-naive-bayes --i-reference-reads silva_ref_seqs.qza --i-referenc
e-taxonomy silva_taxonomy_99_7Levs.qza --o-classifier classifier_q2-2021.4_silva-132_99_7Levs_341-806_classif
ier.qza
(1/2) Invalid value for '--i-reference-reads': 'silva_ref_seqs.qza' is not a
  QIIME 2 Artifact (.qza)
 (2/2) Invalid value for '--i-reference-taxonomy':
  'silva_taxonomy_99_7Levs.qza' is not a QIIME 2 Artifact (.qza)

Here's the new output from Conda info:

active environment : qiime2-2021.4
    active env location : /home/saatkinson/anaconda3/envs/qiime2-2021.4
            shell level : 2
       user config file : /home/saatkinson/.condarc
 populated config files : /home/saatkinson/.condarc
          conda version : 4.10.1
    conda-build version : not installed
         python version : 3.6.13.final.0
       virtual packages : __linux=4.4.0=0
                          __glibc=2.31=0
                          __unix=0=0
                          __archspec=1=x86_64
       base environment : /home/saatkinson/anaconda3  (writable)
      conda av data dir : /home/saatkinson/anaconda3/etc/conda
  conda av metadata url : https://repo.anaconda.com/pkgs/main
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://conda.anaconda.org/bioconda/linux-64
                          https://conda.anaconda.org/bioconda/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /home/saatkinson/anaconda3/pkgs
                          /home/saatkinson/.conda/pkgs
       envs directories : /home/saatkinson/anaconda3/envs
                          /home/saatkinson/.conda/envs
               platform : linux-64
             user-agent : conda/4.10.1 requests/2.25.1 CPython/3.6.13 Linux/4.4.0-17763-Microsoft ubuntu/20.0
4 glibc/2.31
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False

How I updated conda:
For those with similar problems, updating conda with conda update conda gave this error:

Solving environment: failed

InvalidVersionSpecError: Invalid version spec: =2.7

I followed the directions in this GitHub issue to fix it.

conda config --remove channels conda-forge
conda update conda
conda config --add channels defaults
conda config --add channels bioconda
conda config --add channels conda-forge

Then I could follow the native install instructions and install Q2.

:champagne:

:crying_cat_face:

Hmm, let's take a closer look at that. QIIME 2 artifacts are guaranteed to be backwards compatible - perhaps some other issue is at play here? Can you run the following:

qiime tools validate silva_ref_seqs.qza

:crossed_fingers:

Ok, good, I was pretty sure they were supposed to be backward compatible. Glad I'm not crazy lol!

Here's the output of the command. There's more information here.

qiime tools validate silva_ref_seqs.qza
Traceback (most recent call last):
  File "/home/saatkinson/anaconda3/envs/qiime2-2021.4/lib/python3.8/site-packages/q2cli/builtin/tools.py", li
ne 409, in validate
    result = qiime2.sdk.Result.load(path)
  File "/home/saatkinson/anaconda3/envs/qiime2-2021.4/lib/python3.8/site-packages/qiime2/sdk/result.py", line
 66, in load
    archiver = archive.Archiver.load(filepath)
  File "/home/saatkinson/anaconda3/envs/qiime2-2021.4/lib/python3.8/site-packages/qiime2/core/archive/archive
r.py", line 299, in load
    archive = cls.get_archive(filepath)
  File "/home/saatkinson/anaconda3/envs/qiime2-2021.4/lib/python3.8/site-packages/qiime2/core/archive/archive
r.py", line 264, in get_archive
    raise ValueError("%s is not a QIIME archive." % filepath)
ValueError: silva_ref_seqs.qza is not a QIIME archive.

There was a problem loading silva_ref_seqs.qza as a QIIME 2 Result:

  silva_ref_seqs.qza is not a QIIME archive.

See above for debug info.

Thanks!

1 Like

Well, something looks strange here. Did you move or copy this file from one place to another recently? If so, maybe double check that it fully copied over and didn't become corrupt during the transfer. Otherwise, you can send me a download link for this file, I can perform some forensic analysis (read: poke at it until I come up with some ideas) and let you know.

I think I did transfer it a good amount of time ago. I will check that the transfer isn't corrupt and if it isn't I'll send you a download link.

Thanks for you help with this :grinning:

1 Like

So the problem was the files being corrupted. If I redownload them the problem goes away.

Thanks again!!

2 Likes

Thanks for updating us, @saatkinson! Glad to hear you're in good shape now - keep us posted!

:qiime2: