diff --git a/src/Symfony/Component/Cache/LockRegistry.php b/src/Symfony/Component/Cache/LockRegistry.php index 676fba5dca..9bb2bcac4a 100644 --- a/src/Symfony/Component/Cache/LockRegistry.php +++ b/src/Symfony/Component/Cache/LockRegistry.php @@ -90,8 +90,10 @@ final class LockRegistry while (true) { try { // race to get the lock in non-blocking mode - if (flock($lock, LOCK_EX | LOCK_NB)) { - $logger && $logger->info('Lock acquired, now computing item "{key}"', ['key' => $item->getKey()]); + $locked = flock($lock, LOCK_EX | LOCK_NB, $wouldBlock); + + if ($locked || !$wouldBlock) { + $logger && $logger->info(sprintf('Lock %s, now computing item "{key}"', $locked ? 'acquired' : 'not supported'), ['key' => $item->getKey()]); self::$lockedFiles[$key] = true; $value = $callback($item, $save);