1. 24 Mar, 2015 1 commit
    • antirez's avatar
      Cluster: redirection refactoring + handling of blocked clients. · 3468cd36
      antirez authored
      There was a bug in Redis Cluster caused by clients blocked in a blocking
      list pop operation, for keys no longer handled by the instance, or
      in a condition where the cluster became down after the client blocked.
      
      A typical situation is:
      
      1) BLPOP <somekey> 0
      2) <somekey> hash slot is resharded to another master.
      
      The client will block forever int this case.
      
      A symmentrical non-cluster-specific bug happens when an instance is
      turned from master to slave. In that case it is more serious since this
      will desynchronize data between slaves and masters. This other bug was
      discovered as a side effect of thinking about the bug explained and
      fixed in this commit, but will be fixed in a separated commit.
      3468cd36
  2. 21 Mar, 2015 1 commit
    • antirez's avatar
      Net: processUnblockedClients() and clientsArePaused() minor changes. · c43c9703
      antirez authored
      1. No need to set btype in processUnblockedClients(), since clients
         flagged REDIS_UNBLOCKED should have it already cleared.
      2. When putting clients in the unblocked clients list, clientsArePaused()
         should flag them with REDIS_UNBLOCKED. Not strictly needed with the
         current code but is more coherent.
      c43c9703
  3. 04 Dec, 2013 1 commit
  4. 03 Dec, 2013 2 commits