git-annex/Utility/LockPool
Joey Hess 7db37ddde0
Fix transfer log file locking problem when running concurrent transfers.
orElse is great, but was not the right thing to use here because
waitTakeLock could retry for other reasons than the lock being held,
which made tryTakeLock fail when it shouldn't.

Instead, move the code to tryTakeLock and implement waitTakeLock using
tryTakeLock and retry.

(Also, in runTransfer, when checkSaneLock fails, dropLock to avoid leaking a
lock handle.)

This commit was supported by the NSF-funded DataLad project.
2017-05-25 17:40:23 -04:00
..
LockHandle.hs fix build with old ghc 2016-03-05 15:18:52 -04:00
PidLock.hs Fix shared lock file FD leak. 2016-03-01 15:31:39 -04:00
Posix.hs Fix shared lock file FD leak. 2016-03-01 15:31:39 -04:00
STM.hs Fix transfer log file locking problem when running concurrent transfers. 2017-05-25 17:40:23 -04:00
Windows.hs fix windows build more 2016-03-05 12:32:06 -04:00