225 Commits

Author SHA1 Message Date
Yossi Gottlieb
99b920534f TLS: Add missing redis-cli options. (#7456)
* Tests: fix and reintroduce redis-cli tests.

These tests have been broken and disabled for 10 years now!

* TLS: add remaining redis-cli support.

This adds support for the redis-cli --pipe, --rdb and --replica options
previously unsupported in --tls mode.

* Fix writeConn().
2020-07-10 10:25:55 +03:00
Oran Agra
fe8d6fe749 EXEC always fails with EXECABORT and multi-state is cleared
In order to support the use of multi-exec in pipeline, it is important that
MULTI and EXEC are never rejected and it is easy for the client to know if the
connection is still in multi state.

It was easy to make sure MULTI and DISCARD never fail (done by previous
commits) since these only change the client state and don't do any actual
change in the server, but EXEC is a different story.

Since in the past, it was possible for clients to handle some EXEC errors and
retry the EXEC, we now can't affort to return any error on EXEC other than
EXECABORT, which now carries with it the real reason for the abort too.

Other fixes in this commit:
- Some checks that where performed at the time of queuing need to be re-
  validated when EXEC runs, for instance if the transaction contains writes
  commands, it needs to be aborted. there was one check that was already done
  in execCommand (-READONLY), but other checks where missing: -OOM, -MISCONF,
  -NOREPLICAS, -MASTERDOWN
- When a command is rejected by processCommand it was rejected with addReply,
  which was not recognized as an error in case the bad command came from the
  master. this will enable to count or MONITOR these errors in the future.
- make it easier for tests to create additional (non deferred) clients.
- add tests for the fixes of this commit.
2020-06-23 12:01:33 +03:00
John Sully
8503b69bf9 Merge branch 'unstable' into keydbpro
Former-commit-id: ca3a50537e987bd30aec38265be535d89bb260f3
2020-06-08 16:51:16 -04:00
John Sully
08842f8d6e Endurance mode for tests ignore flaky ones
Former-commit-id: 515bb0e6bda8abcab4f8b4cd693084594c734007
2020-06-07 16:59:59 -04:00
John Sully
4001a99481 Merge branch 'unstable' into keydbpro
Former-commit-id: 461eea07260a31cd75753d5b7be691f5793a6f1b
2020-06-07 16:41:21 -04:00
John Sully
0120d23a48 Solo tests should work with loopn
Former-commit-id: bc7ea8fb20c71ace6c35559791e2e8dc6bf4097b
2020-06-07 15:06:50 -04:00
John Sully
df3f1e8d8e Merge branch 'unstable' into keydbpro
Former-commit-id: 08a36155e3db9918048e87c3d691b7317787c9ab
2020-06-01 17:41:37 -04:00
John Sully
dd45ade779 --loop should run forever
Former-commit-id: 9b1e636a6654a4ba3b629b5ad1097caf513ca000
2020-05-31 21:27:15 -04:00
John Sully
68bf5a04a0 Unify beforeSleep handling
Former-commit-id: 1cb48c7bf6a7e91e728a677902a7bfc64fe80dd6
2020-05-29 17:44:55 -04:00
John Sully
ed2e0e66f6 Merge tag '6.0.4' into unstable
Redis 6.0.4.


Former-commit-id: 9c31ac7925edba187e527f506e5e992946bd38a6
2020-05-29 00:57:07 -04:00
antirez
40578433c7 Test: add the tracking unit as default. 2020-05-28 10:22:29 +02:00
antirez
deea754004 Test: add the tracking unit as default. 2020-05-28 10:22:22 +02:00
Oran Agra
4653d796f0 tests: each test client work on a distinct port range
apparently when running tests in parallel (the default of --clients 16),
there's a chance for two tests to use the same port.
specifically, one test might shutdown a master and still have the
replica up, and then another test will re-use the port number of master
for another master, and then that replica will connect to the master of
the other test.

this can cause a master to count too many full syncs and fail a test if
we run the tests with --single integration/psync2 --loop --stop

see Probmem 2 in #7314
2020-05-28 10:09:51 +02:00
Oran Agra
98e6f2cd5b revive meaningful offset tests 2020-05-28 10:09:51 +02:00
antirez
24a0f7bf55 Remove the PSYNC2 meaningful offset test. 2020-05-28 10:09:51 +02:00
Oran Agra
8f0c339892 tests: each test client work on a distinct port range
apparently when running tests in parallel (the default of --clients 16),
there's a chance for two tests to use the same port.
specifically, one test might shutdown a master and still have the
replica up, and then another test will re-use the port number of master
for another master, and then that replica will connect to the master of
the other test.

this can cause a master to count too many full syncs and fail a test if
we run the tests with --single integration/psync2 --loop --stop

see Probmem 2 in #7314
2020-05-26 11:17:08 +03:00
John Sully
f617eafbe1 Merge branch 'unstable' into keydbpro
Former-commit-id: b0636273806ce323627ce31c1ad7f86ceb39696d
2020-05-26 01:34:19 -04:00
John Sully
5b44b62854 Fix client tracking, also ensure tracking tests are enabled
Former-commit-id: 1938af27f50f9686dc98b4839fb439cc03b4a250
2020-05-26 01:28:52 -04:00
John Sully
e0a0d93a07 Merge branch 'unstable' into keydbpro
Former-commit-id: a830cf85df236885558c5571c0bf23cfb23e3655
2020-05-24 14:41:53 -04:00
John Sully
c03e9a3e2c Merge commit 'e834acb91c89d083d0075e320dea6ad7188f2d0d' into unstable
Former-commit-id: 817a11ff110772893eda0675912bbb0cfc1fca74
2020-05-22 15:56:35 -04:00
John Sully
193d7c76cb Fix bad merge in CI.yml
Former-commit-id: 6311d709c39b3bacaeab77b18033010f1b548f81
2020-05-21 22:09:06 -04:00
John Sully
327d543f2c Merge commit 'c5d805f87771581d3f6b29861ed2062c0ae2a688' into unstable
Former-commit-id: 95cecb0229af0278cf614ffd746ba829ae7c897c
2020-05-21 17:45:15 -04:00
antirez
8134e0b3f1 Test: --dont-clean should do first cleanup. 2020-05-08 10:37:36 +02:00
antirez
e7c236b187 Test: --dont-clean should do first cleanup. 2020-05-05 13:18:53 +02:00
antirez
d4d2d24745 A few comments and name changes for #7103. 2020-04-17 13:02:40 +02:00
Oran Agra
f37a123687 testsuite run the defrag latency test solo
this test is time sensitive and it sometimes fail to pass below the
latency threshold, even on strong machines.

this test was the reson we're running just 2 parallel tests in the
github actions CI, revering this.
2020-04-17 13:02:40 +02:00
antirez
c97372af78 A few comments and name changes for #7103. 2020-04-17 10:51:12 +02:00
John Sully
f627dd8cbe Initial merge of unstable 6
Former-commit-id: aac140de199646914cc02997a45111c9c695e55d
2020-04-16 16:36:16 -04:00
Oran Agra
4ccb0cee4b testsuite run the defrag latency test solo
this test is time sensitive and it sometimes fail to pass below the
latency threshold, even on strong machines.

this test was the reson we're running just 2 parallel tests in the
github actions CI, revering this.
2020-04-16 18:09:22 +03:00
John Sully
ce54857237 Merge commit '454e12cb8961f21c9dd8502dc82ae6ffd7e22fe0' into redis_6_merge
Former-commit-id: cc3ebbe5194e9744fb84ce490e90ac5fbe7f8716
2020-04-14 22:19:29 -04:00
John Sully
0725491043 Merge commit 'c609bf3f2c7f0982f632f82623ee4802868b8ef1' into redis_6_merge
Former-commit-id: 320bc3c0329ff9e5a980b79426b719addae381cf
2020-04-14 21:04:42 -04:00
John Sully
68c50ae876 Merge commit '6718d5d37517bd927635649708913affb98f67c9' into redis_6_merge
Former-commit-id: ef1236b6009ebd7b00f6dd2f43df57ad95e51253
2020-04-14 20:19:48 -04:00
John Sully
2c049c16a2 Merge commit '79e8b17d7b44c793d8b22668b8583a297ee1b387' into redis_6_merge
Former-commit-id: 28cbed1d13961c5568f2bdc50c6a23107d3434d0
2020-04-14 20:09:53 -04:00
Oran Agra
dcd6726366 diffrent fix for runtest --host --port 2020-04-07 16:52:28 +02:00
Oran Agra
98208c3f30 diffrent fix for runtest --host --port 2020-04-06 09:41:14 +03:00
antirez
28d402d31b PSYNC2: meaningful offset test. 2020-03-25 15:55:24 +01:00
bodong.ybd
c609bf3f2c Fix bug of tcl test using external server 2020-03-25 15:54:34 +01:00
antirez
3734ba96ba PSYNC2: meaningful offset test. 2020-03-25 15:43:34 +01:00
bodong.ybd
53fd8f4d0d Fix bug of tcl test using external server 2020-03-11 21:01:27 +08:00
antirez
2d9a144515 Test engine: better tracking of what workers are doing. 2020-02-27 18:00:47 +01:00
antirez
54237ff024 Test is more complex now, increase default timeout. 2020-02-27 18:00:47 +01:00
antirez
55bd09593d Test engine: better tracking of what workers are doing. 2020-02-21 17:08:45 +01:00
antirez
fbcdb676ca Test is more complex now, increase default timeout. 2020-02-21 13:48:43 +01:00
John Sully
3fad87ca13 Merge branch 'unstable' into keydbpro
Former-commit-id: f3457e2a9a8464bac656b57256316bbddb65d9e9
2020-02-16 04:04:34 -05:00
John Sully
fbaa46505c Merge branch 'unstable' into redis_6_merge
Former-commit-id: 18a5f46b6138e8a975dda0ed4897d19eed756d24
2020-02-11 02:39:08 -05:00
John Sully
25ef65463e Ensure multi-master works for ring topologies
Former-commit-id: a7cc3aac28ccec4dadb80aa2cc7279c53982bc28
2020-02-10 00:25:03 -05:00
John Sully
bf83742b4f merge 5.0 unstable
Former-commit-id: c45f1328ac82fa9ebc8731314b40bd059ea45b6f
2020-02-07 16:45:59 -05:00
John Sully
8800a516d1 Add test to detect issue #137 and #132
Former-commit-id: 49d86746edef497a568c6f3a64695d420305cca8
2020-02-06 23:31:12 -05:00
John Sully
3186cb683f Merge KeyDB 6
Former-commit-id: 9129b98c12b0da856bbda3eb68b4ddc7530693c9
2020-01-29 12:55:23 -05:00
John Sully
6193e9ad4f Merge remote-tracking branch 'redis/6.0' into redis_merge
Former-commit-id: ef9a3cadcf94326bf2f163db7698aad9a3c01690
2020-01-27 02:55:48 -05:00