Browse Source

Augment exception message with basic server details on connection error.

Providing a basic hint in the exception message about the server that caused
a connection exception could be useful especially with aggregated connections.

This is in response to issue #110.
Daniele Alessandri 12 years ago
parent
commit
d6fa4a3292
2 changed files with 4 additions and 2 deletions
  1. 2 0
      CHANGELOG.md
  2. 2 2
      lib/Predis/Connection/AbstractConnection.php

+ 2 - 0
CHANGELOG.md

@@ -3,6 +3,8 @@ v0.8.4 (2013-xx-xx)
 
 - Added `DUMP` and `RESTORE` to the server profile for Redis 2.6.
 
+- Connection exceptions now report basic host details in their messages.
+
 - __FIX__: allow `HMSET` when using a cluster of Redis nodes with client-side
   sharding or redis-cluster (ISSUE #106).
 

+ 2 - 2
lib/Predis/Connection/AbstractConnection.php

@@ -136,7 +136,7 @@ abstract class AbstractConnection implements SingleConnectionInterface
      */
     protected function onConnectionError($message, $code = null)
     {
-        CommunicationException::handle(new ConnectionException($this, $message, $code));
+        CommunicationException::handle(new ConnectionException($this, "$message [{$this->parameters->scheme}://{$this->getIdentifier()}]", $code));
     }
 
     /**
@@ -146,7 +146,7 @@ abstract class AbstractConnection implements SingleConnectionInterface
      */
     protected function onProtocolError($message)
     {
-        CommunicationException::handle(new ProtocolException($this, $message));
+        CommunicationException::handle(new ProtocolException($this, "$message [{$this->parameters->scheme}://{$this->getIdentifier()}]"));
     }
 
     /**