- 27 Feb, 2014 6 commits
-
-
antirez authored
With the new behavior it is possible to specify just the start in the range (the end will be assumed to be the first byte), or it is possible to specify both start and end. This is useful to change the behavior of the command when looking for zeros inside a string. 1) If the user specifies both start and end, and no 0 is found inside the range, the command returns -1. 2) If instead no range is specified, or just the start is given, even if in the actual string no 0 bit is found, the command returns the first bit on the right after the end of the string. So for example if the string stored at key foo is "\xff\xff": BITPOS foo (returns 16) BITPOS foo 0 -1 (returns -1) BITPOS foo 0 (returns 16) The idea is that when no end is given the user is just looking for the first bit that is zero and can be set to 1 with SETBIT, as it is "available". Instead when a specific range is given, we just look for a zero within the boundaries of the range.
-
antirez authored
It appears to work but more stress testing, and both unit tests and fuzzy testing, is needed in order to ensure the implementation is sane.
-
antirez authored
-
antirez authored
-
antirez authored
It was verified in practice that this test is able to stress much more the implementation by introducing errors that were only trivially to detect with different offsets but impossible to detect starting always at zero and counting bits the full length of the string.
-
antirez authored
-
- 25 Feb, 2014 17 commits
-
-
Salvatore Sanfilippo authored
Fix IP representation in clusterMsgDataGossip
-
Matt Stancliff authored
-
antirez authored
-
antirez authored
-
-
antirez authored
-
michael-grunder authored
This commit changes the findBigKeys() function in redis-cli.c to use the new SCAN command for iterating the keyspace, rather than RANDOMKEY. Because we can know when we're done using SCAN, it will exit after exhausting the keyspace.
-
antirez authored
-
antirez authored
-
antirez authored
The computation is just something to take the CPU busy, no need to use a specific type. Since stdint.h was not included this prevented compilation on certain systems.
-
antirez authored
-
antirez authored
-
antirez authored
-
antirez authored
An unit can abort in the middle for an error. The next unit should not assume that the instances are in a clean state, and must restart what was left killed.
-
antirez authored
Sentinel tests are designed to be dependent on the previous tests in the same unit, so usually we can't continue with the next test in the same unit if a previous test failed.
-
antirez authored
The test was previously performed by removing the master from the Sentinel monitored masters. The test with the Sentinels crashed is more similar to real-world partitions / failures.
-
antirez authored
Also kill_instance was modified to warn when a test will try to kill the same instance multiple times for error.
-
- 24 Feb, 2014 7 commits
-
-
antirez authored
The area a number of mandatory tests to craete a stable setup for testing that is not too sensitive to timing issues. All those tests moved to includes/init-tests, and marked as (init).
-
antirez authored
-
antirez authored
The new common initialization code used to start a new unit already set the timeout to 2000 milliseconds.
-
antirez authored
-
antirez authored
Now that we have a runtime configuration system, it is very important to be able to log how the Sentinel configuration changes over time because of API calls.
-
antirez authored
-
antirez authored
-
- 23 Feb, 2014 4 commits
-
-
antirez authored
-
antirez authored
Pause the test with running instances available for state inspection on error.
-
antirez authored
-
Salvatore Sanfilippo authored
Deny SYNC and PSYNC in redis-cli
-
- 22 Feb, 2014 2 commits
-
-
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.
-
antirez authored
It is now possible to kill and restart sentinel or redis instances for more real-world testing. The 01 unit tests the capability of Sentinel to update the configuration of Sentinels rejoining the cluster, however the test is pretty trivial and more tests should be added.
-
- 21 Feb, 2014 2 commits
-
-
Salvatore Sanfilippo authored
Add cluster or sentinel to proc title
-
Matt Stancliff authored
If you launch redis with `redis-server --sentinel` then in a ps, your output only says "redis-server IP:Port" — this patch changes the proc title to include [sentinel] or [cluster] depending on the current server mode: e.g. "redis-server IP:Port [sentinel]" "redis-server IP:Port [cluster]"
-
- 20 Feb, 2014 2 commits