Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on May 25, 2015
  1. Merge pull request #2571 from therealbill/sentinel-flushconfig-command

    adding a sentinel command: "flushconfig" per RCP4
Commits on May 22, 2015
  1. Sentinel: initial failure simulator implemented

    This commit adds the SENTINEL simulate-failure, that sets specific
    hooks inside the state machine that will crash Sentinel, for testing
Commits on May 20, 2015
  1. Sentinel: fix sentinelTryConnectionSharing() by checking for no match

    Trivial omission of the obvious no-match case.
Commits on May 19, 2015
  1. Sentinel: CKQUORUM tests

Commits on May 18, 2015
  1. Sentinel: SENTINEL CKQUORUM command

    A way for monitoring systems to check that Sentinel is technically able
    to reach the quorum and failover, using the currently visible Sentinels.
Commits on May 15, 2015
  1. Merge pull request #2529 from gnethercutt/issue_2517

    Issue #2517, smove contract violation
  2. Merge pull request #2573 from HeartSaVioR/fix-protocol-error-log-level

    protocol error log should be seen by debug/verbose level
Commits on May 14, 2015
  1. Sentinel: rewrite callback chain removing instances with shared links

    Otherwise pending commands callbacks will fire with a reference that no
    longer exists.
  2. Sentinel: use active/last time for ping logic

    The PING trigger was improved again by using two fields instead of a
    single one to remember when the last ping was sent:
    1. The "active" ping is the time at which we sent the last ping that
    still received no reply. However we continue to ping non replying
    instances even if they have an old active ping: the link may be
    disconnected and reconencted in the meantime so the older pings may get
    lost even if it's a TCP socket.
    2. The "last" ping is the time at which we really sent the last ping
    on the wire, and this is used in order to throttle the amount of pings
    we send during failures (when no pong is received).
    All in all the failure detector effectiveness should be identical but we
    avoid to flood instances with pings during failures or when they are
Commits on May 13, 2015
Commits on May 12, 2015
  1. Sentinel: PING trigger improved

    It's ok to ping as soon as the ping period has elapsed since we received
    the last PONG, but it's not good that we ping again if there is a
    pending ping... With this change we'll send a new ping if there is one
    pending only if two times the ping period elapsed since the ping which
    is still pending was sent.
  2. Sentinel: add sentinelGetInstanceTypeString() fuction

    This is useful for debugging and logging activities: given a
    sentinelRedisInstance object returns a C string representing the
    instance type: master, slave, sentinel.
  3. @HeartSaVioR
Commits on May 11, 2015
  1. @therealbill

    adding a sentinel command: "flushconfig"

    therealbill authored
    This new command triggers a config flush to save the in-memory config to
    disk. This is useful for cases of a configuration management system or a
    package manager wiping out your sentinel config while the process is
    still running - and has not yet been restarted. It can also be useful
    for scripting a backup and migrate or clone of a running sentinel.
Commits on May 8, 2015
  1. Sentinel: Use privdata instead of c->data in sentinelReceiveHelloMess…

    This way we may later share the hiredis link "c" among the same Sentinel
    instance referenced multiple times for multiple masters.
Commits on May 7, 2015
  1. Sentinel: don't detect duplicated Sentinels, just address switch

    Since with a previous commit Sentinels now persist their unique ID, we
    no longer need to detect duplicated Sentinels and re-add them. We remove
    and re-add back using different events only in the case of address
    switch of the same Sentinel, without generating a new +sentinel event.
Commits on May 6, 2015
  1. Sentinel: persist its unique ID across restarts.

    Previously Sentinels always changed unique ID across restarts, relying
    on the server.runid field. This is not a good idea, and forced Sentinel
    to rely on detection of duplicated Sentinels and a potentially dangerous
    clean-up and re-add operation of the Sentinel instance that was
    Now the ID is generated at the first start and persisted in the
    configuration file, so that a given Sentinel will have its unique
    ID forever (unless the configuration is manually deleted or there is a
    filesystem corruption).
Commits on May 5, 2015
  1. Merge pull request #2564 from charsyam/feature/compile-error-freebsd-1

    fix compile error for struct msghdr in FreeBSD 10
  2. Substitute DISQUE to REDIS after merge from Disque

    Probably this stuff should be called CLIENT_* in order to cross merge
    more easily.
Something went wrong with that request. Please try again.