diff --git a/lib/Resque/Exception.php b/lib/Resque/Exception.php index 60cca86f..01217c38 100644 --- a/lib/Resque/Exception.php +++ b/lib/Resque/Exception.php @@ -9,4 +9,3 @@ class Resque_Exception extends Exception { } -?> \ No newline at end of file diff --git a/lib/Resque/Failure/Interface.php b/lib/Resque/Failure/Interface.php index b7e5bc83..74de9e7b 100644 --- a/lib/Resque/Failure/Interface.php +++ b/lib/Resque/Failure/Interface.php @@ -18,4 +18,3 @@ interface Resque_Failure_Interface */ public function __construct($payload, $exception, $worker, $queue); } -?> \ No newline at end of file diff --git a/lib/Resque/Failure/Redis.php b/lib/Resque/Failure/Redis.php index cfac5b6c..69d68724 100644 --- a/lib/Resque/Failure/Redis.php +++ b/lib/Resque/Failure/Redis.php @@ -31,4 +31,3 @@ public function __construct($payload, $exception, $worker, $queue) Resque::redis()->rpush('failed', $data); } } -?> \ No newline at end of file diff --git a/lib/Resque/Job.php b/lib/Resque/Job.php index ca21445a..16b55d0e 100755 --- a/lib/Resque/Job.php +++ b/lib/Resque/Job.php @@ -269,4 +269,3 @@ public function __toString() return '(' . implode(' | ', $name) . ')'; } } -?> diff --git a/lib/Resque/Job/Status.php b/lib/Resque/Job/Status.php index ffa351ba..00fc40c5 100644 --- a/lib/Resque/Job/Status.php +++ b/lib/Resque/Job/Status.php @@ -140,4 +140,3 @@ public function __toString() return 'job:' . $this->id . ':status'; } } -?> \ No newline at end of file diff --git a/lib/Resque/Worker.php b/lib/Resque/Worker.php index 379b853e..5c6ee4ff 100644 --- a/lib/Resque/Worker.php +++ b/lib/Resque/Worker.php @@ -154,6 +154,18 @@ public function work($interval = Resque::DEFAULT_INTERVAL, $blocking = false) if($this->shutdown) { break; } + + // is redis still alive? + try { + if (Resque::redis()->ping() === false) { + throw new CredisException('redis ping() failed'); + } + } catch (CredisException $e) { + $this->logger->log(Psr\Log\LogLevel::ERROR, 'redis went away. trying to reconnect'); + Resque::$redis = null; + usleep($interval * 1000000); + continue; + } // Attempt to find and reserve a job $job = false; @@ -564,4 +576,3 @@ public function setLogger(Psr\Log\LoggerInterface $logger) $this->logger = $logger; } } -?>