diff options
author | Gregory Becker <becker33@llnl.gov> | 2019-07-17 13:46:36 -0500 |
---|---|---|
committer | Todd Gamblin <tgamblin@llnl.gov> | 2019-07-18 19:28:50 -0700 |
commit | ba0cd4d912ef66908a0e560cdbdc6f8cbf633390 (patch) | |
tree | 65e3e001230a3c718ce91d78338a4ec4dd58b4f8 | |
parent | ec6e5b0fd38faed77597424cf173bc462e0bd7e8 (diff) | |
download | spack-ba0cd4d912ef66908a0e560cdbdc6f8cbf633390.tar.gz spack-ba0cd4d912ef66908a0e560cdbdc6f8cbf633390.tar.bz2 spack-ba0cd4d912ef66908a0e560cdbdc6f8cbf633390.tar.xz spack-ba0cd4d912ef66908a0e560cdbdc6f8cbf633390.zip |
concretization: fix transient hang in python 3.5
Bug relates to the interplay between:
1. random dict orders in python 3.5
2. bugfix in initial implementation of stacks for `_concretize_dependencies`
when `self._dependencies` is empty
3. bug in coconcretization algorithm computation of split specs
Result was transient hang in coconcretization.
Fixed #3 (bug in coconcretization) to resolve.
-rw-r--r-- | lib/spack/spack/concretize.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/spack/spack/concretize.py b/lib/spack/spack/concretize.py index 551251162e..296b5b1273 100644 --- a/lib/spack/spack/concretize.py +++ b/lib/spack/spack/concretize.py @@ -500,7 +500,8 @@ def concretize_specs_together(*abstract_specs): # Split recursive specs, as it seems the concretizer has issue # respecting conditions on dependents expressed like # depends_on('foo ^bar@1.0'), see issue #11160 - split_specs = [dep for spec in abstract_specs + split_specs = [dep.copy(deps=False) + for spec in abstract_specs for dep in spec.traverse(root=True)] with open(os.path.join(pkg_dir, 'package.py'), 'w') as f: |