900 Commits

Author SHA1 Message Date
antirez
c102ad59e9 Sentinel test files / directories layout improved.
The test now runs in a self-contained directory.
The general abstractions to run the tests in an environment where
mutliple instances are executed at the same time was extrapolated into
instances.tcl, that will be reused to test Redis Cluster.
2014-04-24 11:08:22 +02:00
antirez
1ce3a4ff64 Test: spawn_instance now supports additional config. 2014-04-24 10:50:51 +02:00
Salvatore Sanfilippo
d7a561fbc7 Merge pull request #1677 from mattsta/expire-before-delete
Check key expiration before deleting
2014-04-23 16:13:49 +02:00
yoav
c8adbd0799 Merge remote-tracking branch 'upstream/unstable' into unstable 2014-04-22 10:01:21 +03:00
antirez
ed2cc684ab Fuzzy test for ZREMRANGEBYLEX added. 2014-04-18 13:02:16 +02:00
antirez
531fbda313 PFCOUNT multi-key test added. 2014-04-18 12:36:33 +02:00
antirez
00e9dc8b75 Sorted set lex ranges stress tester. 2014-04-17 10:25:58 +02:00
antirez
cd35352677 Basic ZRANGEBYLEX / ZLEXCOUNT tests. 2014-04-17 00:08:11 +02:00
antirez
20d49e3ac9 More HyperLogLog tests. 2014-04-16 09:17:38 +02:00
antirez
cd73060972 PFMERGE fixed to work with sparse encoding. 2014-04-14 16:09:32 +02:00
Matt Stancliff
daba106237 Add test for deleting an expired key
Verify proper expire-before-delete behavior.

This test passes with the expire-before-delete commit and fails
without it.
2014-04-10 18:32:19 -04:00
yoav
9af8168552 Fix eval usage in tests to conform with eval semantics 2014-04-06 17:20:01 +03:00
antirez
038f6c8221 Initial HyperLogLog tests. 2014-04-03 22:16:05 +02:00
antirez
947e9d4d98 Test: do not complain when "leaks" can't run because process died. 2014-03-25 09:33:37 +01:00
antirez
ebdf5ddfa9 Sentinel test: 02 unit better coverage + refactoring. 2014-03-18 15:18:51 +01:00
antirez
c870142fca Sentinel test: foreach_instance_id implements 'break'. 2014-03-18 15:06:52 +01:00
antirez
d9148d9fde Sentinel: instance_is_killed proc added to sentinel.tcl. 2014-03-18 14:58:27 +01:00
antirez
50d43b10d9 Sentinel test: set less time sensitive defaults.
This commit sets the failover timeout to 30 seconds instead of the 180
seconds default, and allows to reconfigure multiple slaves at the same
time.

This makes tests less sensible to timing, with the result that there are
less false positives due to normal behaviors that require time to
succeed or to be retried.

However the long term solution is probably some way in order to detect
when a test failed because of timing issues (for example split brain
during leader election) and retry it.
2014-03-04 17:10:29 +01:00
antirez
77298419f2 Sentinel test: debugging console improved. 2014-03-04 15:55:36 +01:00
antirez
d178f178e2 Sentinel test: initial debugging console. 2014-03-04 12:05:49 +01:00
antirez
5e30678074 Sentinel test: be more patient in create_redis_master_slave_cluster. 2014-03-04 11:20:53 +01:00
antirez
57e4555c2e Sentiel test: add test start time in output. 2014-03-04 11:17:27 +01:00
antirez
ce36a9e511 Sentinel test: use 1000 as retry in initial 00 unit test. 2014-03-03 13:26:18 +01:00
antirez
0af9090c4e Sentinel test: initial tests in 03 unit. 2014-03-03 13:25:14 +01:00
antirez
9a5d9f47f6 Sentinel test: foreach_instance_id now supports 'continue'. 2014-03-03 13:23:32 +01:00
antirez
144b3044a8 Sentienl test: fixed typo in unit 03 top comment. 2014-03-03 13:01:11 +01:00
antirez
4aa6b6e9b8 BITPOS fuzzy testing. 2014-02-27 15:27:05 +01:00
antirez
0348a8c1f8 Basic BITPOS tests. 2014-02-27 15:01:45 +01:00
antirez
411d930529 Added two more BITCOUNT tests stressing misaligned access. 2014-02-27 10:07:29 +01:00
antirez
ef3d34c345 BITCOUNT fuzzy test with random start/end added.
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.
2014-02-27 10:00:17 +01:00
antirez
da7d4088c5 Sentinel test: add stub for unit 04. 2014-02-25 15:36:51 +01:00
antirez
eb282315ff Sentinel test: added TODO items in 02 unit. 2014-02-25 15:21:53 +01:00
antirez
808c9c16a9 Sentinel test: check role at end of unit 01. 2014-02-25 14:59:36 +01:00
antirez
ed309a8162 Sentinel test: kill masters instead of using DEBUG SLEEP in all tests. 2014-02-25 14:33:44 +01:00
antirez
9edf4e7c92 Sentinel test: restart instances left killed by previous unit.
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.
2014-02-25 08:48:46 +01:00
antirez
6a18afff59 Sentinel test: jump to next unit on test failure.
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.
2014-02-25 08:33:41 +01:00
antirez
0c63971394 Sentinel test: test majority crashing Sentinels.
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.
2014-02-25 08:29:12 +01:00
antirez
5507ad1148 Sentinel test: restart_instance should refresh pid attrib.
Also kill_instance was modified to warn when a test will try to kill the
same instance multiple times for error.
2014-02-25 08:23:48 +01:00
antirez
cd219998da Sentinel test: more stuff mored from 00-base to init.
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).
2014-02-24 17:21:50 +01:00
antirez
c13ccbd3e5 Sentinel test: removed useless code to set SDOWN timeout.
The new common initialization code used to start a new unit already set
the timeout to 2000 milliseconds.
2014-02-24 16:57:52 +01:00
antirez
2361550063 Sentinel test: tmp dir and gitignore added. 2014-02-24 11:51:31 +01:00
antirez
26b08f160a Sentinel test: minor fixes to --pause-on-error. 2014-02-23 18:02:52 +01:00
antirez
0506a4918f Sentinel test: --pause-on-error option added.
Pause the test with running instances available for state inspection on
error.
2014-02-23 17:57:56 +01:00
antirez
d97b0090a9 Sentinel test: added empty units to fill later. 2014-02-23 17:50:59 +01:00
antirez
6f02cfaeac Sentinel test: framework improved and conf-update unit added.
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.
2014-02-22 17:27:49 +01:00
antirez
8def3a143e Sentinel test: move init tests as includes.
Most units will start with these two basic tests to create an
environment where the real tests are ran.
2014-02-20 16:58:23 +01:00
antirez
8c378427b2 Sentinel test: ability to run just a subset of test files. 2014-02-20 16:28:41 +01:00
antirez
0cf419af0f Sentinel test: some reliability fixes to 00-base tests. 2014-02-19 10:26:23 +01:00
antirez
6f298002de Sentinel test: check that role matches at end of 00-base. 2014-02-19 10:08:49 +01:00
antirez
693385e2dc Sentinel test: ODOWN and agreement. 2014-02-19 09:44:38 +01:00