12612 Commits

Author SHA1 Message Date
antirez
7bb3ef2ec6 Fix handling of special chars in ACL LOAD.
Now it is also possible for ACL SETUSER to accept empty strings
as valid operations (doing nothing), so for instance

    ACL SETUSER myuser ""

Will have just the effect of creating a user in the default state.

This should fix #7329.
2020-05-29 11:07:13 +02:00
Salvatore Sanfilippo
fa3e801afe Merge pull request #7330 from liuzhen/unstable
fix clusters mixing accidentally by gossip
2020-05-29 10:15:26 +02:00
John Sully
f18ba66242 Cluster crash
Former-commit-id: f25c405ad2a8004b79a816072cb011c1dc2407d5
2020-05-29 03:40:52 -04:00
John Sully
2e0c684324 active replica tests on slow computers
Former-commit-id: c9920849dd6d6d0f6ecfe0d1002cb0edd7f7bfa9
2020-05-29 01:58:15 -04:00
John Sully
688dceb3a8 Fix test issue with TLS
Former-commit-id: 81b240f81d1c52fd331c4e0e89659913380229c4
2020-05-29 01:44:52 -04:00
John Sully
f79cc0011a Fix CI
Former-commit-id: 6a902b29e16bebdb2da1d0a33ea5a170fc9949a0
2020-05-29 01:01:41 -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
John Sully
a768c260dc Fix TLS tests
Former-commit-id: f0d8d1680f594cc72ccd863eb74b1071368f3052
2020-05-29 00:16:06 -04:00
John Sully
34d3bac791 gencert its own step
Former-commit-id: 6dcbcacb104814e6a710a4ffe101668a573ebd4f
2020-05-28 23:49:13 -04:00
John Sully
8bb3ac40f1 CI yml syntax error
Former-commit-id: 3196717ceee0bde8a5e30b25dd99bd7f3776c6ab
2020-05-28 23:18:02 -04:00
John Sully
f4f9e83ead Fix TLS tests in CI
Former-commit-id: f95578ac0268b3f29139fc715bba0b27b92767c3
2020-05-28 23:16:42 -04:00
John Sully
71fbeb65b6 fix TLS test failure
Former-commit-id: 57ca6facc3038e005656912b6378cb7fbe04f55a
2020-05-28 23:16:27 -04:00
antirez
c512f64428 Redis 6.0.4. 2020-05-28 12:18:38 +02:00
antirez
41bb699867 Test: take PSYNC2 test master timeout high during switch.
This will likely avoid false positives due to trailing pings.
2020-05-28 10:56:14 +02:00
antirez
0071eb1311 Test: take PSYNC2 test master timeout high during switch.
This will likely avoid false positives due to trailing pings.
2020-05-28 10:47:30 +02: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
571b03021a tests: find_available_port start search from next port
i.e. don't start the search from scratch hitting the used ones again.
this will also reduce the likelihood of collisions (if there are any
left) by increasing the time until we re-use a port we did use in the
past.
2020-05-28 10:09:51 +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
31bd963557 32bit CI needs to build modules correctly 2020-05-28 10:09:51 +02:00
Oran Agra
01039e5964 adjust revived meaningful offset tests
these tests create several edge cases that are otherwise uncovered (at
least not consistently) by the test suite, so although they're no longer
testing what they were meant to test, it's still a good idea to keep
them in hope that they'll expose some issue in the future.
2020-05-28 10:09:51 +02:00
Oran Agra
98e6f2cd5b revive meaningful offset tests 2020-05-28 10:09:51 +02:00
antirez
84117d13b7 Replication: showLatestBacklog() refactored out. 2020-05-28 10:09:51 +02:00
antirez
14d99c183f Drop useless line from replicationCacheMaster(). 2020-05-28 10:09:51 +02:00
antirez
0163e4e495 Another meaningful offset test removed. 2020-05-28 10:09:51 +02:00
antirez
24a0f7bf55 Remove the PSYNC2 meaningful offset test. 2020-05-28 10:09:51 +02:00
antirez
911c579b68 Remove the meaningful offset feature.
After a closer look, the Redis core devleopers all believe that this was
too fragile, caused many bugs that we didn't expect and that were very
hard to track. Better to find an alternative solution that is simpler.
2020-05-28 10:09:51 +02:00
antirez
7e55485b21 Set a protocol error if master use the inline protocol.
We want to react a bit more aggressively if we sense that the master is
sending us some corrupted stream. By setting the protocol error we both
ensure that the replica will disconnect, and avoid caching the master so
that a full SYNC will be required. This is protective against
replication bugs.
2020-05-28 10:09:51 +02:00
Oran Agra
abb9dcd975 daily CI test with tls 2020-05-28 10:09:51 +02:00
Oran Agra
0705a29959 avoid using sendfile if tls-replication is enabled
this obviously broke the tests, but went unnoticed so far since tls
wasn't often tested.
2020-05-28 10:09:51 +02:00
antirez
fee0c76304 Replication: log backlog creation event. 2020-05-28 10:09:51 +02:00
antirez
2411e4e33f Test: PSYNC2 test can now show server logs. 2020-05-28 10:09:51 +02:00
antirez
d61473903f Merge branch 'unstable' of github.com:/antirez/redis into unstable 2020-05-28 10:08:29 +02:00
antirez
0cd63f06b4 Replication: showLatestBacklog() refactored out. 2020-05-28 10:08:16 +02:00
Salvatore Sanfilippo
504b01bdb4 Merge pull request #7327 from oranagra/test-port-ranges
tests: each test client work on a distinct port range
2020-05-28 09:52:10 +02:00
Salvatore Sanfilippo
8254ca8dc6 Merge pull request #7336 from oranagra/modules_ci_32bit
32bit CI needs to build modules correctly
2020-05-28 09:51:58 +02:00
Salvatore Sanfilippo
c42d5fb19c Merge pull request #7339 from oranagra/revive_mo_tests
Revive and adjust meaningful offset tests
2020-05-28 08:52:56 +02:00
Oran Agra
afc7ea44b5 adjust revived meaningful offset tests
these tests create several edge cases that are otherwise uncovered (at
least not consistently) by the test suite, so although they're no longer
testing what they were meant to test, it's still a good idea to keep
them in hope that they'll expose some issue in the future.
2020-05-28 09:10:51 +03:00
Oran Agra
49687e9cb6 revive meaningful offset tests 2020-05-28 08:21:24 +03:00
Oran Agra
033b4b31c7 32bit CI needs to build modules correctly 2020-05-27 18:19:30 +03:00
antirez
e1c7733319 Drop useless line from replicationCacheMaster(). 2020-05-27 17:08:51 +02:00
Oran Agra
ee211d651d tests: find_available_port start search from next port
i.e. don't start the search from scratch hitting the used ones again.
this will also reduce the likelihood of collisions (if there are any
left) by increasing the time until we re-use a port we did use in the
past.
2020-05-27 16:12:35 +03:00
Kevin Fwu
d50291e290 Fix TLS certificate loading for chained certificates.
This impacts client verification for chained certificates (such as Lets
Encrypt certificates). Client Verify requires the full chain in order to
properly verify the certificate.
2020-05-27 08:53:29 -04:00
antirez
fafe3502da Another meaningful offset test removed. 2020-05-27 12:50:02 +02:00
antirez
4c264e994e Remove the PSYNC2 meaningful offset test. 2020-05-27 12:47:34 +02:00
antirez
858845ad56 Remove the meaningful offset feature.
After a closer look, the Redis core devleopers all believe that this was
too fragile, caused many bugs that we didn't expect and that were very
hard to track. Better to find an alternative solution that is simpler.
2020-05-27 12:06:33 +02:00
antirez
a85dcd7ac3 Set a protocol error if master use the inline protocol.
We want to react a bit more aggressively if we sense that the master is
sending us some corrupted stream. By setting the protocol error we both
ensure that the replica will disconnect, and avoid caching the master so
that a full SYNC will be required. This is protective against
replication bugs.
2020-05-27 11:45:49 +02:00
Liu Zhen
7045d1cad9 fix clusters mixing accidentally by gossip
`clusterStartHandshake` will start hand handshake
and eventually send CLUSTER MEET message, which is strictly prohibited
in the REDIS CLUSTER SPEC.
Only system administrator can initiate CLUSTER MEET message.
Futher, according to the SPEC, rather than IP/PORT pairs, only nodeid
can be trusted.
2020-05-27 12:01:40 +08:00
antirez
7c0fb16790 Merge branch 'unstable' of github.com:/antirez/redis into unstable 2020-05-26 23:55:52 +02:00
antirez
d065e2b7d0 Replication: log backlog creation event. 2020-05-26 23:55:18 +02:00