You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@scheibelp -- as discussed in the May 15 Spack telcon
I have an environment in which I am building packages with a compiler and (potentially) multiple MPICH builds. I am using a matrix in an effort to build all valid combinations of packages, compilers, and MPICH builds.
In doing so, I have encountered unexpected behavior in v0.21.2 in which some specs silently fail to concretize. In v0.22.0, the same environment produces a concretization error, but there are seemingly two different ways in which the error manifests. One scenario produces a useful error message, while the other does not.
The environment uses externally configured compilers, MPICH, and a handful of other external dependencies, including OpenCL. In this example I have one compiler, one MPICH, and three specs, matrixed using definitions for the compiler and mpich:
gettext and double-batched-fft-library are both specs which don't depend on MPI. However, I believe gettext never has an MPI dependency, while double-batched-fft-library sometimes does, e.g. if Spack tries to build pocl as the opencl provider and Spack concretizes pocl ^hwloc+netloc ^mpich. In my case, opencl is provided by an external via a requires, so double-batched-fft-library cannot concretize with an MPI dependency. This is relevant in scenario number 3 below.
amrex does depend on MPI and concretizes with ^mpich.
I'll detail all three scenarios below.
With v0.21.2
Spack will silently fail concretization for gettext and double-batched-fft-library, proceeding to concretize amrex ^mpich.
With v0.22.0
Spack will fail to concretize, returning the following error:
==> Error: Spack concretizer internal error. Please submit a bug report and include the command, environment if applicable and the following error message.
[gettext%oneapi@2023.12.15.002 ^mpich@52.2, double-batched-fft-library%oneapi@2023.12.15.002 ^mpich@52.2] is unsatisfiable
As a side note, this error message is extremely unwieldy when you have dozens of package specs multiplied across a matrix.
With v0.22.0, speccing only gettext
If I remove double-batched-fft-library from the spec matrix and only try to concretize gettext and amrex, I still get an error, but it's different (and arguably more useful):
==> Error: Package gettext does not depend on mpich@52.2
I attribute the difference in error messages to the difference in the nature of these packages' MPI non-dependence, which I detailed above.
With all that out of the way, I still have a question of what the expected behavior should be. Out of the three behaviors above, I think scenario 3 is the best. However, I had the impression that matrices are meant to be more forgiving when handling invalid specs; for example, I thought it should either proceed as in scenario 1 but with a warning message akin to scenario 3; or concretize the non-mpi specs ignoring the ^mpich constraint.
Error message
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.114114] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/config.yaml
lib/spack/spack/environment/environment.py:3102 ==> [2024-05-21-00:20:44.157204] Creating SingleFileScope env:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/system_packages.yaml for '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/system_packages.yaml'
lib/spack/spack/environment/environment.py:3102 ==> [2024-05-21-00:20:44.157530] Creating SingleFileScope env:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/external_packages_0.6.1.yaml for '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/external_packages_0.6.1.yaml'
lib/spack/spack/environment/environment.py:3102 ==> [2024-05-21-00:20:44.157799] Creating SingleFileScope env:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/compilers_0.6.1.yaml for '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/compilers_0.6.1.yaml'
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.157987] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/system_packages.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.422556] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/external_packages_0.6.1.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.499475] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/compilers_0.6.1.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.516119] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/spack.yaml
lib/spack/spack/environment/environment.py:223 ==> [2024-05-21-00:20:44.536496] Using environment '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi'
lib/spack/spack/cmd/__init__.py:119 ==> [2024-05-21-00:20:44.545272] Imported concretize from built-in commands
lib/spack/spack/cmd/__init__.py:119 ==> [2024-05-21-00:20:44.545912] Imported concretize from built-in commands
lib/spack/spack/environment/environment.py:3102 ==> [2024-05-21-00:20:44.560627] Creating SingleFileScope env:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/system_packages.yaml for '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/system_packages.yaml'
lib/spack/spack/environment/environment.py:3102 ==> [2024-05-21-00:20:44.560979] Creating SingleFileScope env:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/external_packages_0.6.1.yaml for '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/external_packages_0.6.1.yaml'
lib/spack/spack/environment/environment.py:3102 ==> [2024-05-21-00:20:44.561272] Creating SingleFileScope env:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi:/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/compilers_0.6.1.yaml for '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/compilers_0.6.1.yaml'
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.561489] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/system_packages.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.823974] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/external_packages_0.6.1.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.901145] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/compilers_0.6.1.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.917688] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi/spack.yaml
lib/spack/spack/environment/environment.py:247 ==> [2024-05-21-00:20:44.928736] Deactivated environment '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi'
lib/spack/spack/environment/environment.py:223 ==> [2024-05-21-00:20:44.937005] Using environment '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi'
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.939430] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/concretizer.yaml
lib/spack/spack/database.py:646 ==> [2024-05-21-00:20:44.959252] DATABASE LOCK TIMEOUT: 60s
lib/spack/spack/store.py:181 ==> [2024-05-21-00:20:44.959465] PACKAGE LOCK TIMEOUT: No timeout
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:44.960093] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/packages.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:45.004289] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/linux/packages.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:45.081304] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/repos.yaml
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:45.310026] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:45.310500] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:45.310893] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:45.311430] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/compilers.yaml
lib/spack/spack/util/executable.py:233 ==> [2024-05-21-00:20:45.323966] '/opt/aurora/23.275.2/spack/gcc/0.6.1/install/linux-sles15-x86_64/gcc-7.5.0/gcc-12.2.0-wpdhpg7dybr75wczkg25aahrif6irpgp/bin/gcc' '-v' '/tmp/spack-implicit-link-infohva2bll8/main.c' '-o' '/tmp/spack-implicit-link-infohva2bll8/output'
lib/spack/spack/util/module_cmd.py:78 ==> [2024-05-21-00:20:45.370905] module_cmd.load_module: oneapi/eng-compiler/2023.12.15.002
lib/spack/spack/util/module_cmd.py:78 ==> [2024-05-21-00:20:45.754611] module_cmd.load_module: gcc/12.2.0
lib/spack/spack/util/executable.py:233 ==> [2024-05-21-00:20:46.009072] '/opt/aurora/23.275.2/spack/oneapi/0.6.1/oneapi_sym/compiler/2023.12.15.002/bin/icx' '-v' '/tmp/spack-implicit-link-infou2uduw35/main.c' '-o' '/tmp/spack-implicit-link-infou2uduw35/output'
lib/spack/spack/util/module_cmd.py:78 ==> [2024-05-21-00:20:46.084655] module_cmd.load_module: oneapi/release/2023.12.15.001
lib/spack/spack/util/module_cmd.py:78 ==> [2024-05-21-00:20:46.456982] module_cmd.load_module: gcc/12.2.0
lib/spack/spack/util/executable.py:233 ==> [2024-05-21-00:20:46.710888] '/opt/aurora/23.275.2/spack/oneapi/0.6.1/oneapi_sym/compiler/2023.12.15.001/bin/icx' '-v' '/tmp/spack-implicit-link-infoli_76slv/main.c' '-o' '/tmp/spack-implicit-link-infoli_76slv/output'
lib/spack/spack/util/executable.py:233 ==> [2024-05-21-00:20:46.784671] '/usr/bin/gcc' '-v' '/tmp/spack-implicit-link-info2ttyec9w/main.c' '-o' '/tmp/spack-implicit-link-info2ttyec9w/output'
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:46.822938] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:46.823405] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:46.823794] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/database.py:646 ==> [2024-05-21-00:20:47.072464] DATABASE LOCK TIMEOUT: 60s
lib/spack/spack/store.py:181 ==> [2024-05-21-00:20:47.072696] PACKAGE LOCK TIMEOUT: No timeout
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.080388] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/mirrors.yaml
lib/spack/spack/database.py:646 ==> [2024-05-21-00:20:47.099618] DATABASE LOCK TIMEOUT: 60s
lib/spack/spack/store.py:181 ==> [2024-05-21-00:20:47.099896] PACKAGE LOCK TIMEOUT: No timeout
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.100526] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/bootstrap.yaml
lib/spack/spack/environment/environment.py:247 ==> [2024-05-21-00:20:47.109933] Deactivated environment '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi'
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.131115] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/repos.yaml
lib/spack/spack/bootstrap/config.py:125 ==> [2024-05-21-00:20:47.137016] [BOOTSTRAP CONFIG SCOPE] name=_builtin
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.137664] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/bootstrap.yaml
lib/spack/spack/bootstrap/config.py:138 ==> [2024-05-21-00:20:47.146599] [BOOTSTRAP CONFIG SCOPE] name=defaults, path=/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults
lib/spack/spack/bootstrap/config.py:139 ==> [2024-05-21-00:20:47.146808] [BOOTSTRAP CONFIG SCOPE] name=defaults/linux, path=/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/linux
lib/spack/spack/bootstrap/config.py:138 ==> [2024-05-21-00:20:47.147002] [BOOTSTRAP CONFIG SCOPE] name=bootstrap, path=/home/skoyama/.spack/bootstrap/config
lib/spack/spack/bootstrap/config.py:139 ==> [2024-05-21-00:20:47.147183] [BOOTSTRAP CONFIG SCOPE] name=bootstrap/linux, path=/home/skoyama/.spack/bootstrap/config/linux
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.148291] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/config.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.176567] Reading config from file /home/skoyama/.spack/bootstrap/config/linux/config.yaml
lib/spack/spack/database.py:646 ==> [2024-05-21-00:20:47.194136] DATABASE LOCK TIMEOUT: 60s
lib/spack/spack/store.py:181 ==> [2024-05-21-00:20:47.194394] PACKAGE LOCK TIMEOUT: No timeout
lib/spack/spack/database.py:646 ==> [2024-05-21-00:20:47.197974] DATABASE LOCK TIMEOUT: 60s
lib/spack/spack/store.py:181 ==> [2024-05-21-00:20:47.198203] PACKAGE LOCK TIMEOUT: No timeout
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.198652] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/packages.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.243633] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/linux/packages.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.249525] Reading config from file /home/skoyama/.spack/bootstrap/config/linux/compilers.yaml
lib/spack/spack/main.py:566 ==> [2024-05-21-00:20:47.279847] Warning: Spack doesn't support the requested compiler: dpcpp
lib/spack/spack/bootstrap/_common.py:228 ==> [2024-05-21-00:20:47.306259] [BOOTSTRAP ROOT SPEC] clingo-bootstrap@spack+python %gcc target=x86_64
lib/spack/spack/bootstrap/core.py:355 ==> [2024-05-21-00:20:47.306475] [BOOTSTRAP MODULE clingo] Try importing from Python
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.306948] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/bootstrap.yaml
lib/spack/spack/bootstrap/_common.py:83 ==> [2024-05-21-00:20:47.418095] [BOOTSTRAP MODULE clingo] The installed spec "clingo-bootstrap@spack+python %gcc target=x86_64 ^python@3.6/prqkzynv2nwko5mktitebgkeumuxkveu" provides the "clingo" Python module
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.419335] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/config.yaml
lib/spack/spack/environment/environment.py:223 ==> [2024-05-21-00:20:47.450444] Using environment '/lus/gecko/projects/Aurora_deployment/skoyama/test/silent_concretization_failure_thapi'
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.451230] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/concretizer.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.473620] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/packages.yaml
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:47.518052] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/defaults/linux/packages.yaml
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:54.119275] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:54.119747] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:54.120152] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/config.py:1123 ==> [2024-05-21-00:20:54.120806] Reading config from file /lus/gecko/projects/Aurora_deployment/skoyama/test/spack/etc/spack/compilers.yaml
lib/spack/spack/util/executable.py:233 ==> [2024-05-21-00:20:54.206127] '/usr/bin/gcc' '-v' '/tmp/spack-implicit-link-info22bs7gkj/main.c' '-o' '/tmp/spack-implicit-link-info22bs7gkj/output'
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:54.262553] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:54.263043] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:54.263489] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:54.364365] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:54.364812] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:20:54.365200] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/solver/asp.py:3449 ==> [2024-05-21-00:21:25.402200] Warning: using "zlib@1.2.11" which is a deprecated version
lib/spack/spack/solver/asp.py:3449 ==> [2024-05-21-00:21:25.404265] Warning: using "curl@8.0.1" which is a deprecated version
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.406129] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.406588] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.406993] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.557481] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.558025] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.558433] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.695234] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.695758] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.696158] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.832977] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.833509] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.833913] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.970551] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.971094] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:25.971495] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:26.107957] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:26.108498] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:26.108904] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:26.245012] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:26.245564] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:26.245978] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/spec.py:2906 ==> [2024-05-21-00:21:26.261889] Ordered hashes [ncurses]: ncurses/87/7a351bc4953a4ab70dabdbea31c8db0c03d40ce505335f3b6687180dde24c535
lib/spack/spack/database.py:646 ==> [2024-05-21-00:21:26.364273] DATABASE LOCK TIMEOUT: 60s
lib/spack/spack/store.py:181 ==> [2024-05-21-00:21:26.364538] PACKAGE LOCK TIMEOUT: No timeout
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:27.653015] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:27.653523] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:27.653927] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:27.931554] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:27.932132] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:27.932588] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:28.115265] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.002%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:28.115772] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'intel-oneapi-compilers@=2023.12.15.001%gcc@12.2.0~envmods' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/compilers/__init__.py:183 ==> [2024-05-21-00:21:28.116177] [/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/compilers/__init__.py] The external spec 'gcc@=7' cannot be used as a compiler: missing the 'extra_attributes' key
lib/spack/spack/main.py:1072 ==> [2024-05-21-00:21:44.942863] SolverError: Spack concretizer internal error. Please submit a bug report and include the command, environment if applicable and the following error message.
[double-batched-fft-library%oneapi@2023.12.15.002 ^mpich@52.2, gettext%oneapi@2023.12.15.002 ^mpich@52.2] is unsatisfiable
lib/spack/spack/error.py:52 ==> [2024-05-21-00:21:44.943719] Error: Spack concretizer internal error. Please submit a bug report and include the command, environment if applicable and the following error message.
[double-batched-fft-library%oneapi@2023.12.15.002 ^mpich@52.2, gettext%oneapi@2023.12.15.002 ^mpich@52.2] is unsatisfiable
Traceback (most recent call last):
File "/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/main.py", line 1069, in main
return _main(argv)
File "/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/main.py", line 1022, in _main
return finish_parse_and_run(parser, cmd_name, args, env_format_error)
File "/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/main.py", line 1052, in finish_parse_and_run
return _invoke_command(command, parser, args, unknown)
File "/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/main.py", line 649, in _invoke_command
return_val = command(parser, args)
File "/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/cmd/concretize.py", line 44, in concretize
concretized_specs = env.concretize(force=args.force, tests=tests)
File "/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/environment/environment.py", line 1444, in concretize
return self._concretize_together_where_possible(tests=tests)
File "/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/environment/environment.py", line 1535, in _concretize_together_where_possible
specs_to_concretize, tests=tests, allow_deprecated=allow_deprecated
File "/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/solver/asp.py", line 3873, in solve_in_rounds
allow_deprecated=allow_deprecated,
File "/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/solver/asp.py", line 925, in solve
result.raise_if_unsat()
File "/lus/gecko/projects/Aurora_deployment/skoyama/test/spack/lib/spack/spack/solver/asp.py", line 468, in raise_if_unsat
raise SolverError(constraints, conflicts=conflicts)
spack.solver.asp.SolverError: Spack concretizer internal error. Please submit a bug report and include the command, environment if applicable and the following error message.
[double-batched-fft-library%oneapi@2023.12.15.002 ^mpich@52.2, gettext%oneapi@2023.12.15.002 ^mpich@52.2] is unsatisfiable
This spack.yaml reproduces the issue with no additional config besides a compiler. I've configured a dummy pocl external in there, which works fine to demonstrate the concretization behavior.
Steps to reproduce
@scheibelp -- as discussed in the May 15 Spack telcon
I have an environment in which I am building packages with a compiler and (potentially) multiple MPICH builds. I am using a matrix in an effort to build all valid combinations of packages, compilers, and MPICH builds.
In doing so, I have encountered unexpected behavior in
v0.21.2
in which some specs silently fail to concretize. Inv0.22.0
, the same environment produces a concretization error, but there are seemingly two different ways in which the error manifests. One scenario produces a useful error message, while the other does not.The environment uses externally configured compilers, MPICH, and a handful of other external dependencies, including OpenCL. In this example I have one compiler, one MPICH, and three specs, matrixed using
definitions
for the compiler and mpich:gettext
anddouble-batched-fft-library
are both specs which don't depend on MPI. However, I believegettext
never has an MPI dependency, whiledouble-batched-fft-library
sometimes does, e.g. if Spack tries to buildpocl
as theopencl
provider and Spack concretizespocl ^hwloc+netloc ^mpich
. In my case,opencl
is provided by an external via arequires
, sodouble-batched-fft-library
cannot concretize with an MPI dependency. This is relevant in scenario number 3 below.amrex
does depend on MPI and concretizes with^mpich
.I'll detail all three scenarios below.
With
v0.21.2
Spack will silently fail concretization for
gettext
anddouble-batched-fft-library
, proceeding to concretizeamrex ^mpich
.With
v0.22.0
Spack will fail to concretize, returning the following error:
As a side note, this error message is extremely unwieldy when you have dozens of package specs multiplied across a matrix.
v0.22.0
, speccing onlygettext
If I remove
double-batched-fft-library
from the spec matrix and only try to concretizegettext
andamrex
, I still get an error, but it's different (and arguably more useful):I attribute the difference in error messages to the difference in the nature of these packages' MPI non-dependence, which I detailed above.
With all that out of the way, I still have a question of what the expected behavior should be. Out of the three behaviors above, I think scenario 3 is the best. However, I had the impression that matrices are meant to be more forgiving when handling invalid specs; for example, I thought it should either proceed as in scenario 1 but with a warning message akin to scenario 3; or concretize the non-mpi specs ignoring the
^mpich
constraint.Error message
Information on your system
General information
spack debug report
and reported the version of Spack/Python/PlatformThe text was updated successfully, but these errors were encountered: