- 06 Mar, 2013 9 commits
-
-
antirez authored
Usually this does not happens since we trim for " \t\r\n", but if there are other chars that return true with isspace(), we may end with an empty argv. Better to handle the condition in an explicit way.
-
antirez authored
-
antirez authored
-
antirez authored
-
antirez authored
-
antirez authored
This makes programs not checking the return value for NULL much safer since with this change: 1) It is still possible to iterate the zero-length result without crashes. 2) sdssplitargs_free will work against NULL and 0 count.
-
antirez authored
An empty input string also resulted into the function returning NULL making it harder for the caller to distinguish between error and empty string without checking the original input string length.
-
charsyam authored
-
antirez authored
While Redis is loading the AOF or RDB file in memory only a subset of commands are allowed. This commit adds AUTH to this subset.
-
- 05 Mar, 2013 9 commits
-
-
antirez authored
-
antirez authored
If we have a master in FAIL state that's reachable again, and apparently no one is going to serve its slots, clear the FAIL flag and let the cluster continue with its operations again.
-
antirez authored
This is the unix time at which we set the FAIL flag for the node. It is only valid if FAIL is set. The idea is to use it in order to make the cluster more robust, for instance in order to revert a FAIL state if it is long-standing but still slots are assigned to this node, that is, no one is going to fix these slots apparently.
-
antirez authored
Usually we redirect clients to the right hash slot, however we don't want to do that with our master, we want just to mirror it.
-
antirez authored
-
antirez authored
-
antirez authored
-
antirez authored
Usually we try to send just 1 ping every second, however when we detect we are going to have unreliable failure detection because we can't ping some node in time, send an additional ping. This should only happen with very large clusters or when the the node timeout is set to a very low value.
-
antirez authored
-
- 04 Mar, 2013 8 commits
-
-
antirez authored
If we are a cluster node the DB content will not match our configured slots. Don't do the check at all.
-
antirez authored
There are pathological cases where the line can be even longer a single node may contain all the slots in importing/migrating state.
-
antirez authored
-
antirez authored
-
antirez authored
We now have replicationSetMaster() and replicationUnsetMaster() that can be called in other contexts (for instance Redis Cluster).
-
antirez authored
-
charsyam authored
adding check error code
-
antirez authored
This should improve things in two ways: 1) Prevent timeouts caused by the execution of long commands. 2) Improve detection of real connection errors. This is mostly effective only on Linux because of the bogus default keepalive settings. In Linux we have OS-specific calls to set the keepalive interval to reasonable values.
-
- 28 Feb, 2013 7 commits
-
-
antirez authored
As stated in the comment this is usually due to a resharding in progress so the client should be still redirected to the old node that will handle the redirection elsewhere.
-
antirez authored
The new code makes sure that the node slots bitmap is always consistent with the cluster->slots array.
-
antirez authored
-
antirez authored
-
antirez authored
Before a relatively slow popcount() operation was needed every time we needed to get the number of slots served by a given cluster node. Now we just need to check an integer that is taken in sync with the bitmap.
-
antirez authored
-
antirez authored
-
- 27 Feb, 2013 7 commits