1. 11 3月, 2014 4 次提交
    • M
      Remove some redundant code · 7c8964a8
      Matt Stancliff 提交于
      Function nodeIp2String in cluster.c is exactly
      anetPeerToString with a pre-extracted fd.
      7c8964a8
    • M
      Fix return value check for anetTcpAccept · 7c359449
      Matt Stancliff 提交于
      anetTcpAccept returns ANET_ERR, not AE_ERR.
      
      This isn't a physical error since both ANET_ERR
      and AE_ERR are -1, but better to be consistent.
      7c359449
    • M
      Bind source address for cluster communication · 9a7cf319
      Matt Stancliff 提交于
      The first address specified as a bind parameter
      (server.bindaddr[0]) gets used as the source IP
      for cluster communication.
      
      If no bind address is specified by the user, the
      behavior is unchanged.
      
      This patch allows multiple Redis Cluster instances
      to communicate when running on the same interface
      of the same host.
      9a7cf319
    • M
      Cluster: error out quicker if port is unusable · a0ea8f23
      Matt Stancliff 提交于
      The default cluster control port is 10,000 ports higher than
      the base Redis port.  If Redis is started on a too-high port,
      Cluster can't start and everything will exit later anyway.
      a0ea8f23
  2. 05 3月, 2014 1 次提交
    • A
      Fix configEpoch assignment when a cluster slot gets "closed". · e4833ed8
      antirez 提交于
      This is still code to rework in order to use agreement to obtain a new
      configEpoch when a slot is migrated, however this commit handles the
      special case that happens when the nodes are just started and everybody
      has a configEpoch of 0. In this special condition to have the maximum
      configEpoch is not enough as the special epoch 0 is not unique (all the
      others are).
      
      This does not fixes the intrinsic race condition of a failover happening
      while we are resharding, that will be addressed later.
      e4833ed8
  3. 11 2月, 2014 14 次提交
  4. 10 2月, 2014 4 次提交
  5. 08 2月, 2014 1 次提交
    • A
      Cluster: keys slot computation now supports hash tags. · 142281dc
      antirez 提交于
      Currently this is marginally useful, only to make sure two keys are in
      the same hash slot when the cluster is stable (no rehashing in
      progress).
      
      In the future it is possible that support will be added to run
      mutli-keys operations with keys in the same hash slot.
      142281dc
  6. 05 2月, 2014 5 次提交
  7. 31 1月, 2014 3 次提交
    • A
      Cluster: configurable replicas migration barrier. · a7d30681
      antirez 提交于
      It is possible to configure the min number of additional working slaves
      a master should be left with, for a slave to migrate to an orphaned
      master.
      a7d30681
    • A
      Cluster: perform orphaned masters check before continue statements. · 6c9359ad
      antirez 提交于
      The check was placed in a way that conflicted with the continue
      statements used by the node hearth beat code later that needs to skip
      the current node sometimes. Moved at the start of the function so that's
      always executed.
      6c9359ad
    • A
      Cluster: replica migration implementation. · c2507b0f
      antirez 提交于
      This feature allows slaves to migrate to orphaned masters (masters
      without working slaves), as long as a set of conditions are met,
      including the fact that the migrating slave needs to be in a
      master-slaves ring with at least another slave working.
      c2507b0f
  8. 30 1月, 2014 4 次提交
  9. 29 1月, 2014 4 次提交