Skip to content

Fails if the cluster is in a fail over state #1

@Richard-Mathie

Description

@Richard-Mathie

Had a cluster where one of the slaves had failed and this some how stops rediscluster from working.

Traceback (most recent call last):
 ...
  File "/usr/local/lib/python2.7/site-packages/flask_cache_redis_cluster/__init__.py", line 25, in rediscluster
    return RedisClusterCache(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/flask_cache_redis_cluster/__init__.py", line 55, in __init__
    **kwargs)
  File "/usr/local/lib/python2.7/site-packages/rediscluster/client.py", line 181, in __init__
    **kwargs
  File "/usr/local/lib/python2.7/site-packages/rediscluster/connection.py", line 141, in __init__
    self.nodes.initialize()
  File "/usr/local/lib/python2.7/site-packages/rediscluster/nodemanager.py", line 228, in initialize
    need_full_slots_coverage = self.cluster_require_full_coverage(nodes_cache)
  File "/usr/local/lib/python2.7/site-packages/rediscluster/nodemanager.py", line 270, in cluster_require_full_coverage
    return any(node_require_full_coverage(node) for node in nodes.values())
  File "/usr/local/lib/python2.7/site-packages/rediscluster/nodemanager.py", line 270, in <genexpr>
    return any(node_require_full_coverage(node) for node in nodes.values())
  File "/usr/local/lib/python2.7/site-packages/rediscluster/nodemanager.py", line 267, in node_require_full_coverage
    return "yes" in r_node.config_get("cluster-require-full-coverage").values()
  File "/usr/local/lib/python2.7/site-packages/redis/client.py", line 620, in config_get
    return self.execute_command('CONFIG GET', pattern)
  File "/usr/local/lib/python2.7/site-packages/redis/client.py", line 578, in execute_command
    connection.send_command(*args)
  File "/usr/local/lib/python2.7/site-packages/redis/connection.py", line 563, in send_command
    self.send_packed_command(self.pack_command(*args))
  File "/usr/local/lib/python2.7/site-packages/redis/connection.py", line 538, in send_packed_command
    self.connect()
  File "/usr/local/lib/python2.7/site-packages/redis/connection.py", line 442, in connect
    raise ConnectionError(self._error_message(e))
ConnectionError: Error 111 connecting to 10.0.0.20:6379. Connection refused.

Not sure if issue or the configuration should handle this somehow i.e. try one of the other nodes...

Might be a config as i see cluster_require_full_coverage.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions