| I have implemented this in wip/ghc-pkg-locking. Do you think you could give | this branch a try? If it still fails then we'll have to try to debug things | in-situ.
Alas, no go. * I'm on wip/ghc-pkg-locking * I checked that the lock file was removed then I tried this: simonpj@cam-05-unx:~/code/HEAD-2$ cabal install lens --with-ghc=/home/simonpj/5builds/HEAD-2/inplace/bin/ghc-stage2 Resolving dependencies... Configuring base-orphans-0.6... Configuring cabal-doctest-1.0.2... Configuring call-stack-0.1.0... Configuring fail-4.9.0.0... Configuring hashable-1.2.6.1... Configuring parallel-3.2.1.1... Configuring prelude-extras-0.4.0.3... Configuring primitive-0.6.2.0... Configuring reflection-2.1.2... Configuring semigroups-0.18.3... Configuring stm-2.4.4.1... Configuring th-abstraction-0.2.5.0... Configuring transformers-compat-0.5.1.4... Configuring void-0.7.2... Building base-orphans-0.6... Building cabal-doctest-1.0.2... Building fail-4.9.0.0... Building call-stack-0.1.0... Building parallel-3.2.1.1... Building hashable-1.2.6.1... Building primitive-0.6.2.0... Building prelude-extras-0.4.0.3... Building reflection-2.1.2... Building semigroups-0.18.3... Building stm-2.4.4.1... Building void-0.7.2... Building th-abstraction-0.2.5.0... Building transformers-compat-0.5.1.4... Installed fail-4.9.0.0 Failed to install base-orphans-0.6 Build log ( /home/simonpj/.cabal/logs/base-orphans-0.6.log ): cabal: Entering directory '/tmp/cabal-tmp-28239/base-orphans-0.6' Configuring base-orphans-0.6... Building base-orphans-0.6... Preprocessing library base-orphans-0.6... [1 of 2] Compiling Data.Orphans ( src/Data/Orphans.hs, dist/build/Data/Orphans.o ) [2 of 2] Compiling Data.Orphans.Prelude ( src/Data/Orphans/Prelude.hs, dist/build/Data/Orphans/Prelude.o ) Creating package registration file: /tmp/pkgConf-base-orphans-010599613932089018456.6 Installing library in /home/simonpj/.cabal/lib/x86_64-linux-ghc-8.3.20170825/base-orphans-0.6-9iPDLrUqQ5yHb9fb9OUZ9L Registering base-orphans-0.6... cabal: '/home/simonpj/5builds/HEAD-2/inplace/bin/ghc-pkg' exited with an error: ghc-pkg: Couldn't open database /home/simonpj/.ghc/x86_64-linux-8.3.20170825/package.conf.d for modification: {handle: /home/simonpj/.ghc/x86_64-linux-8.3.20170825/package.conf.d/package.cache.lock}: hLock: invalid argument (Bad file descriptor) cabal: Leaving directory '/tmp/cabal-tmp-28239/base-orphans-0.6' Failed to install void-0.7.2 Build log ( /home/simonpj/.cabal/logs/void-0.7.2.log ): cabal: Entering directory '/tmp/cabal-tmp-28252/void-0.7.2' Configuring void-0.7.2... Building void-0.7.2... Preprocessing library void-0.7.2... [1 of 1] Compiling Data.Void.Unsafe ( src/Data/Void/Unsafe.hs, dist/build/Data/Void/Unsafe.o ) Creating package registration file: /tmp/pkgConf-void-0.76281750111656478042.2 Installing library in /home/simonpj/.cabal/lib/x86_64-linux-ghc-8.3.20170825/void-0.7.2-KNNEd7XG9bDRysTndgnf2 Registering void-0.7.2... cabal: '/home/simonpj/5builds/HEAD-2/inplace/bin/ghc-pkg' exited with an error: ghc-pkg: Couldn't open database /home/simonpj/.ghc/x86_64-linux-8.3.20170825/package.conf.d for modification: {handle: /home/simonpj/.ghc/x86_64-linux-8.3.20170825/package.conf.d/package.cache.lock}: hLock: invalid argument (Bad file descriptor) cabal: Leaving directory '/tmp/cabal-tmp-28252/void-0.7.2' Failed to install semigroups-0.18.3 Build log ( /home/simonpj/.cabal/logs/semigroups-0.18.3.log ): cabal: Entering directory '/tmp/cabal-tmp-28248/semigroups-0.18.3' Configuring semigroups-0.18.3... Building semigroups-0.18.3... Preprocessing library semigroups-0.18.3... [1 of 1] Compiling Data.Semigroup.Generic ( src/Data/Semigroup/Generic.hs, dist/build/Data/Semigroup/Generic.o ) Creating package registration file: /tmp/pkgConf-semigroups-0.188594844211914544919.3 Installing library in /home/simonpj/.cabal/lib/x86_64-linux-ghc-8.3.20170825/semigroups-0.18.3-9GRyDnRvoqO5HfdYR3Qz4o Registering semigroups-0.18.3... cabal: '/home/simonpj/5builds/HEAD-2/inplace/bin/ghc-pkg' exited with an error: ghc-pkg: Couldn't open database /home/simonpj/.ghc/x86_64-linux-8.3.20170825/package.conf.d for modification: {handle: /home/simonpj/.ghc/x86_64-linux-8.3.20170825/package.conf.d/package.cache.lock}: hLock: invalid argument (Bad file descriptor) cabal: Leaving directory '/tmp/cabal-tmp-28248/semigroups-0.18.3' C-c C-c simonpj@cam-05-unx:~/code/HEAD-2$ | -----Original Message----- | From: Ben Gamari [mailto:b...@well-typed.com] | Sent: 24 August 2017 13:53 | To: Simon Peyton Jones <simo...@microsoft.com> | Cc: ghc-devs <ghc-devs@haskell.org> | Subject: RE: Alex install failure | | Simon Peyton Jones <simo...@microsoft.com> writes: | | > | Hmm. Here's a shot in the dark: is home home directory mounted via | > | NFS by any chance? | > | > Direct hit! (for the shot in the dark). Yes it's NFS mounted I think. | > So what? | | Hi Simon, | | Sorry for the rather belated reply; I was knocked off my feet for a few days | by a rather nasty tetanus vaccination. | | Anyways, I have a patch which I suspect will help. It seems that some NFS | implementations incur a rather long delay (order of seconds) between the | time a file handle is closed and an open flock lock on the handle being | released. I suspect this delay won't exist in cases where we explicitly | funlock before closing the file handle. | | I have implemented this in wip/ghc-pkg-locking. Do you think you could give | this branch a try? If it still fails then we'll have to try to debug things | in-situ. | | Cheers, | | - Ben _______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs