1. 24 Feb, 2014 2 commits
  2. 22 Feb, 2014 1 commit
    • antirez's avatar
      Sentinel: IDONTKNOW error removed. · b1c13863
      antirez authored
      This error was conceived for the older version of Sentinel that worked
      via master redirection and that was not able to get configuration
      updates from other Sentinels via the Pub/Sub channel of masters or
      slaves.
      
      This reply does not make sense today, every Sentinel should reply with
      the best information it has currently. The error will make even more
      sense in the future since the plan is to allow Sentinels to update the
      configuration of other Sentinels via gossip with a direct chat without
      the prerequisite that they have at least a monitored instance in common.
      b1c13863
  3. 20 Feb, 2014 1 commit
  4. 18 Feb, 2014 2 commits
    • antirez's avatar
      Sentinel: SENTINEL_SLAVE_RECONF_RETRY_PERIOD -> RECONF_TIMEOUT · 7cec9e48
      antirez authored
      Rename define to match the new meaning.
      7cec9e48
    • antirez's avatar
      Sentinel: fix slave promotion timeout. · 18b8bad5
      antirez authored
      If we can't reconfigure a slave in time during failover, go forward as
      anyway the slave will be fixed by Sentinels in the future, once they
      detect it is misconfigured.
      
      Otherwise a failover in progress may never terminate if for some reason
      the slave is uncapable to sync with the master while at the same time
      it is not disconnected.
      18b8bad5
  5. 17 Feb, 2014 1 commit
  6. 07 Feb, 2014 1 commit
  7. 31 Jan, 2014 1 commit
  8. 14 Jan, 2014 1 commit
  9. 13 Jan, 2014 3 commits
  10. 10 Jan, 2014 7 commits
  11. 13 Dec, 2013 1 commit
  12. 10 Dec, 2013 1 commit
    • antirez's avatar
      dict.c: added optional callback to dictEmpty(). · 2eb781b3
      antirez authored
      Redis hash table implementation has many non-blocking features like
      incremental rehashing, however while deleting a large hash table there
      was no way to have a callback called to do some incremental work.
      
      This commit adds this support, as an optiona callback argument to
      dictEmpty() that is currently called at a fixed interval (one time every
      65k deletions).
      2eb781b3
  13. 06 Dec, 2013 2 commits
    • antirez's avatar
      Sentinel: fix reported role info sampling. · c590549e
      antirez authored
      The way the role change was recoded was not sane and too much
      convoluted, causing the role information to be not always updated.
      
      This commit fixes issue #1445.
      c590549e
    • antirez's avatar
      Sentinel: fix reported role fields when master is reset. · 2b414a4b
      antirez authored
      When there is a master address switch, the reported role must be set to
      master so that we have a chance to re-sample the INFO output to check if
      the new address is reporting the right role.
      
      Otherwise if the role was wrong, it will be sensed as wrong even after
      the address switch, and for enough time according to the role change
      time, for Sentinel consider the master SDOWN.
      
      This fixes isue #1446, that describes the effects of this bug in
      practice.
      2b414a4b
  14. 05 Dec, 2013 1 commit
  15. 02 Dec, 2013 2 commits
    • antirez's avatar
      Sentinel: don't write HZ when flushing config. · f80cf736
      antirez authored
      See issue #1419.
      f80cf736
    • antirez's avatar
      Sentinel: better time desynchronization. · dffebbc9
      antirez authored
      Sentinels are now desynchronized in a better way changing the time
      handler frequency between 10 and 20 HZ. This way on average a
      desynchronization of 25 milliesconds is produced that should be larger
      enough compared to network latency, avoiding most split-brain condition
      during the vote.
      
      Now that the clocks are desynchronized, to have larger random delays when
      performing operations can be easily achieved in the following way.
      Take as example the function that starts the failover, that is
      called with a frequency between 10 and 20 HZ and will start the
      failover every time there are the conditions. By just adding as an
      additional condition something like rand()%4 == 0, we can amplify the
      desynchronization between Sentinel instances easily.
      
      See issue #1419.
      dffebbc9
  16. 28 Nov, 2013 1 commit
  17. 26 Nov, 2013 1 commit
  18. 25 Nov, 2013 2 commits
  19. 21 Nov, 2013 7 commits
  20. 20 Nov, 2013 2 commits