[Errno 37] No locks available

348 views
Skip to first unread message

Bennet Fauber

unread,
Nov 29, 2017, 4:16:54 PM11/29/17
to Spack
I used

git clone https://github.com/spack/spack.git

first into my home directory in NFS, then tried

$ export SPACK_ROOT=/home/bennet/spack
$ export PATH=$SPACK_ROOT/bin:$PATH

$ spack spec zlib%g...@4.8.5
Input spec
--------------------------------
zlib%g...@4.8.5

Concretized
--------------------------------
==> Error: [Errno 37] No locks available

This is on CentOS 7.3 with

$ gcc --version
gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-11)

$ python --version
Python 2.7.5

With a clean shell, I then downloaded v0.10.0.tar.gz and put it into /tmp, thinking maybe NFS didn't support locking.  I get a more verbose stack trace now.

$ spack spec zlib%g...@4.8.5
Input spec
--------------------------------
zlib%g...@4.8.5

Normalized
--------------------------------
zlib%g...@4.8.5

Concretized
--------------------------------
Traceback (most recent call last):
  File "/tmp/spack/bin/spack", line 212, in <module>
    main(sys.argv)
  File "/tmp/spack/bin/spack", line 208, in main
    _main(args, unknown)
  File "/tmp/spack/bin/spack", line 174, in _main
    return_val = command(parser, args)
  File "/tmp/spack-0.10.0/lib/spack/spack/cmd/spec.py", line 87, in spec
    spec.concretize()
  File "/tmp/spack-0.10.0/lib/spack/spack/spec.py", line 1522, in concretize
    self._expand_virtual_packages(),
  File "/tmp/spack-0.10.0/lib/spack/spack/spec.py", line 1439, in _expand_virtual_packages
    spec)
  File "/tmp/spack-0.10.0/lib/spack/spack/concretize.py", line 121, in choose_virtual_or_external
    candidates = self._valid_virtuals_and_externals(spec)
  File "/tmp/spack-0.10.0/lib/spack/spack/concretize.py", line 80, in _valid_virtuals_and_externals
    if is_spec_buildable(cspec):
  File "/tmp/spack-0.10.0/lib/spack/spack/package_prefs.py", line 260, in is_spec_buildable
    allpkgs = get_packages_config()
  File "/tmp/spack-0.10.0/lib/spack/spack/package_prefs.py", line 40, in get_packages_config
    if spack.repo.is_virtual(pkg_name)]
  File "/tmp/spack-0.10.0/lib/spack/spack/repository.py", line 348, in is_virtual
    return pkg_name in self.provider_index
  File "/tmp/spack-0.10.0/lib/spack/spack/repository.py", line 234, in provider_index
    self._provider_index.merge(repo.provider_index)
  File "/tmp/spack-0.10.0/lib/spack/spack/repository.py", line 653, in provider_index
    self._update_provider_index()
  File "/tmp/spack-0.10.0/lib/spack/spack/repository.py", line 636, in _update_provider_index
    with spack.misc_cache.write_transaction(key) as (old, new):
  File "/tmp/spack-0.10.0/lib/spack/llnl/util/lock.py", line 301, in __enter__
    if self._enter() and self._acquire_fn:
  File "/tmp/spack-0.10.0/lib/spack/llnl/util/lock.py", line 332, in _enter
    return self._lock.acquire_write(self._timeout)
  File "/tmp/spack-0.10.0/lib/spack/llnl/util/lock.py", line 221, in acquire_write
    self._lock(fcntl.LOCK_EX, timeout=timeout)   # can raise LockError.
  File "/tmp/spack-0.10.0/lib/spack/llnl/util/lock.py", line 119, in _lock
    self._length, self._start, os.SEEK_SET)
IOError: [Errno 37] No locks available

Any notion what I might have done wrong?

Thanks,  -- bennet


Reply all
Reply to author
Forward
0 new messages