- 04 5月, 2015 4 次提交
-
-
由 therealbill 提交于
Originally, only the +slave event which occurs when a slave is reconfigured during sentinelResetMasterAndChangeAddress triggers a flush of the config to disk. However, newly discovered slaves don't apparently trigger this flush but do trigger the +slave event issuance. So if you start up a sentinel, add a master, then add a slave to the master (as a way to reproduce it) you'll see the +slave event issued, but the sentinel config won't be updated with the known-slave entry. This change makes sentinel do the flush of the config if a new slave is deteted in sentinelRefreshInstanceInfo.
-
由 antirez 提交于
To rewrite the config in the loop that adds slaves back after a master reset, in order to handle switching to another master, is useless: it just adds latency since there is an fsync call in the inner loop, without providing any additional guarantee, but the contrary, since if after the first loop iteration the server crashes we end with just a single slave entry losing all the other informations. It is wiser to rewrite the config at the end when the full new state is configured.
-
由 Yossi Gottlieb 提交于
limit.
-
由 clark.kang 提交于
-
- 29 4月, 2015 1 次提交
-
-
由 antirez 提交于
This fixes issue #2535, that was actually an hiredis library bug (I submitted an issue and fix to the redis/hiredis repo as well). When an asynchronous hiredis connection subscribes to a Pub/Sub channel and gets an error, and in other related conditions, the function redisProcessCallbacks() enters a code path where the link is disconnected, however the function returns before freeing the allocated reply object. This causes a memory leak. The memory leak was trivial to trigger in Redis Sentinel, which uses hiredis, every time we tried to subscribe to an instance that required a password, in case the Sentinel was configured either with the wrong password or without password at all. In this case, the -AUTH error caused the leaking code path to be executed. It was verified with Valgrind that after this change the leak no longer happens in Sentinel with a misconfigured authentication password.
-
- 27 4月, 2015 1 次提交
-
-
由 antirez 提交于
-
- 01 4月, 2015 1 次提交
-
-
由 Oran Agra 提交于
master was closing the connection if the RDB transfer took long time. and also sent PINGs to the slave before it got the initial ACK, in which case the slave wouldn't be able to find the EOF marker.
-
- 27 3月, 2015 1 次提交
-
-
由 antirez 提交于
-
- 24 3月, 2015 1 次提交
-
-
由 antirez 提交于
Bug as old as Redis and blocking operations. It's hard to trigger since only happens on instance role switch, but the results are quite bad since an inconsistency between master and slave is created. How to trigger the bug is a good description of the bug itself. 1. Client does "BLPOP mylist 0" in master. 2. Master is turned into slave, that replicates from New-Master. 3. Client does "LPUSH mylist foo" in New-Master. 4. New-Master propagates write to slave. 5. Slave receives the LPUSH, the blocked client get served. Now Master "mylist" key has "foo", Slave "mylist" key is empty. Highlights: * At step "2" above, the client remains attached, basically escaping any check performed during command dispatch: read only slave, in that case. * At step "5" the slave (that was the master), serves the blocked client consuming a list element, which is not consumed on the master side. This scenario is technically likely to happen during failovers, however since Redis Sentinel already disconnects clients using the CLIENT command when changing the role of the instance, the bug is avoided in Sentinel deployments. Closes #2473.
-
- 08 3月, 2015 1 次提交
-
-
由 antirez 提交于
-
- 05 3月, 2015 1 次提交
-
-
由 antirez 提交于
Itereator misuse due to analyzeLatencyForEvent() accessing the dictionary during the iteration, without the iterator being reclared as safe.
-
- 10 2月, 2015 9 次提交
-
-
由 Charles Hooper 提交于
-
由 antirez 提交于
-
由 antirez 提交于
--stat mode already used to reconnect automatically if the server is no longer available. This is useful since this is an interactive mode used for debugging, however the same applies to --latency and --latency-dist modes, so now both use the reconnecting command execution as well. The reconnection code was modified to use basic VT100 escape sequences in order to play better with different kinds of output on the screen when the reconnection happens, and to hide the reconnection attempt output when finally the reconnection happens.
-
由 antirez 提交于
So far not able to find a color palette within the 256 colors which is not confusing. However I believe it is a possible task, so will try better later.
-
由 antirez 提交于
Still not happy with the result but low grays are hard to see in certain monitors with a non perfect gamma.
-
由 antirez 提交于
-
由 antirez 提交于
-
由 antirez 提交于
-
由 antirez 提交于
This test on Linux was extremely slow, since in Tcl we can't enable easily tcp-nodelay, so the busy loop used to take *a lot* with bigger writes. Fixed using pipelining.
-
- 03 2月, 2015 1 次提交
-
-
由 mattcollier 提交于
Code was adding '\n' (line 521) to the end of NIL values exlusively making csv output inconsistent. Removed '\n'
-
- 22 1月, 2015 3 次提交
-
-
由 antirez 提交于
Rationale is that when re-entering, it is likely due to Lua debugging hooks. Returning an error will be ignored in most cases, going totally unnoticed. With the log at least we leave a trace. Related to issue #2302.
-
由 antirez 提交于
Instead of calling redisPanic() to abort the server. Related to issue #2302.
-
由 antirez 提交于
Related to issue #2302.
-
- 21 1月, 2015 1 次提交
-
-
由 antirez 提交于
The cleanup code expects that if 'di' is not NULL, it is a valid iterator that should be freed. The result of this bug was a crash of the AOF rewriting process if an error occurred after the DBs data are written and the iterator is no longer valid.
-
- 09 1月, 2015 2 次提交
- 08 1月, 2015 2 次提交
-
-
由 antirez 提交于
-
由 Jungtaek Lim 提交于
-
- 23 12月, 2014 1 次提交
-
-
由 antirez 提交于
1. Server unxtime may remain not updated while loading AOF, so ETA is not updated correctly. 2. Number of processed byte was not initialized. 3. Possible division by zero condition (likely cause of issue #1932).
-
- 22 12月, 2014 1 次提交
-
-
由 Alon Diamant 提交于
-
- 19 12月, 2014 1 次提交
-
-
由 antirez 提交于
Fixes issue #2225.
-
- 17 12月, 2014 1 次提交
-
-
由 Rhommel Lamas 提交于
-
- 16 12月, 2014 1 次提交
-
-
由 antirez 提交于
-
- 13 12月, 2014 5 次提交
-
-
由 antirez 提交于
Otherwise there are security risks, especially when providing Redis as a service, the user may "sniff" for admin commands renamed to an unguessable string via rename-command in redis.conf.
-
由 antirez 提交于
The old list did not made much sense... and the flag is currently not used at all, so no side effects.
-
由 Salvatore Sanfilippo 提交于
Adds a symlink for redis-sentinel when Make install
-
由 antirez 提交于
It fixes a bad bug that crashes the server in certain conditions as shown in issue #2210.
-
由 Rhommel Lamas 提交于
-
- 11 12月, 2014 1 次提交
-
-
由 antirez 提交于
Related to #2094.
-