Fetch cluster slots from node upon first -MOVED response.

This is a more sane default as it allows users to indicate only a few
servers of the whole cluster composition, while it previously required
a more complex configuration of the client using client options.

This feature can be disabled using the "enableClusterNodes()" method.
This commit is contained in:
Daniele Alessandri
2014-07-21 14:14:14 +02:00
parent d6bd47ca47
commit c2d0737e98
2 changed files with 7 additions and 1 deletions
+1 -1
View File
@@ -46,7 +46,7 @@ use Predis\Command\RawCommand;
*/
class RedisCluster implements ClusterConnectionInterface, IteratorAggregate, Countable
{
private $askClusterNodes = false;
private $askClusterNodes = true;
private $defaultParameters = array();
private $pool = array();
private $slots = array();
@@ -398,6 +398,7 @@ class RedisClusterTest extends PredisTestCase
$connection2->expects($this->never())->method('writeCommand');
$cluster = new RedisCluster();
$cluster->enableClusterNodes(false);
$cluster->add($connection1);
$cluster->add($connection2);
@@ -418,6 +419,7 @@ class RedisClusterTest extends PredisTestCase
$connection2->expects($this->once())->method('readResponse')->with($command);
$cluster = new RedisCluster();
$cluster->enableClusterNodes(false);
$cluster->add($connection1);
$cluster->add($connection2);
@@ -477,6 +479,7 @@ class RedisClusterTest extends PredisTestCase
$factory->expects($this->never())->method('create');
$cluster = new RedisCluster($factory);
$cluster->enableClusterNodes(false);
$cluster->add($connection1);
$cluster->add($connection2);
@@ -520,6 +523,7 @@ class RedisClusterTest extends PredisTestCase
->will($this->returnValue($connection3));
$cluster = new RedisCluster($factory);
$cluster->enableClusterNodes(false);
$cluster->add($connection1);
$cluster->add($connection2);
@@ -553,6 +557,7 @@ class RedisClusterTest extends PredisTestCase
$factory->expects($this->never())->method('create');
$cluster = new RedisCluster($factory);
$cluster->enableClusterNodes(false);
$cluster->add($connection1);
$cluster->add($connection2);
@@ -593,6 +598,7 @@ class RedisClusterTest extends PredisTestCase
->will($this->returnValue($connection3));
$cluster = new RedisCluster($factory);
$cluster->enableClusterNodes(false);
$cluster->add($connection1);
$cluster->add($connection2);