1
0
Fork 0
mirror of https://github.com/dragonflydb/dragonfly.git synced 2024-12-14 11:58:02 +00:00
dragonflydb-dragonfly/tests/dragonfly
Shahar Mike c868b27bbe
fix: Support replicating Valkey and Redis 7.2 (#3927)
Until now, we only tested Dragonfly against Redis 6.2.  It appears that
something has changed in the way Redis sends stable sync commands, and
now they also forward `MULTI` and `EXEC` as part of their replication.

Since we do not allow all commands to run under `MULTI`/`EXEC`,
specifically `SELECT`, a Dragonfly replica of such servers failed these
commands and became inconsistent with the data on the master.

The proposed fix is to simply ignore (i.e. not execute) `MULTI`/`EXEC`
coming from a Redis/Valkey master, and run the commands within those
transactions individually, like we do for other transactions.

To test this we randomly choose a redis/valkey server based on 3
available installed binaries and test against them.
2024-10-15 13:12:16 +03:00
..
seeder chore: collection size (#3844) 2024-10-08 18:51:11 +03:00
__init__.py chore: Small refactor of DflyInstance (#1951) 2023-09-28 10:11:11 +03:00
acl_family_test.py chore: add logs to test_acl_cat_commands_multi_exec_squash (#3826) 2024-09-30 12:03:40 +00:00
cluster_mgr_test.py chore: do not close connections at the end of pytest (#3811) 2024-09-30 09:54:41 +03:00
cluster_test.py chore: do not close connections at the end of pytest (#3811) 2024-09-30 09:54:41 +03:00
config_test.py chore: use decode_responses when creating a redis client (#2109) 2023-11-03 11:00:26 +02:00
conftest.py chore: do not close connections at the end of pytest (#3811) 2024-09-30 09:54:41 +03:00
connection_test.py fix: Do not publish to connections without context (#3873) 2024-10-08 14:45:57 +03:00
eval_test.py fix(server): Implement SCRIPT GC command (#3431) 2024-08-02 23:49:51 +03:00
generic_test.py feat(server): introduce rss oom limit (#3702) 2024-09-22 13:28:24 +03:00
http_conf_test.py fix: authorize the http connection to call commands (#2863) 2024-04-08 13:19:01 +03:00
instance.py fix: Support replicating Valkey and Redis 7.2 (#3927) 2024-10-15 13:12:16 +03:00
json_test.py fix: Fix unsupported object type rejson-rl in RedisInsight (#3384) 2024-07-27 19:05:00 +02:00
list_family_test.py feat: Add black formatter to the project (#1544) 2023-07-17 13:13:12 +03:00
management_test.py feat: implement CONFIG GET command (#1751) 2023-08-28 19:26:38 +03:00
memory_test.py chore: do not close connections at the end of pytest (#3811) 2024-09-30 09:54:41 +03:00
proxy.py feat: Expose replica_reconnect_count for Prometheus metrics (#3370) 2024-08-13 12:34:01 +02:00
pymemcached_test.py chore: relax assertion in test_noreply_pipeline (#3908) 2024-10-14 09:27:57 +03:00
redis_replication_test.py feat: add slave_repl_offset to the replication section. (#3596) 2024-08-30 18:58:07 +03:00
replication_test.py chore: do not close connections at the end of pytest (#3811) 2024-09-30 09:54:41 +03:00
requirements.txt chore(deps): bump aiohttp from 3.8.4 to 3.10.2 in /tests/dragonfly (#3600) 2024-08-29 14:03:51 +03:00
search_test.py feat(search): STOPWORDS (#3851) 2024-10-10 21:58:12 +03:00
seeder_test.py chore: collection size (#3844) 2024-10-08 18:51:11 +03:00
sentinel_test.py chore: replace session wide fixtures with scope (#3251) 2024-07-02 10:26:26 +03:00
server_family_test.py chore: do not close connections at the end of pytest (#3811) 2024-09-30 09:54:41 +03:00
shutdown_test.py chore: replace session wide fixtures with scope (#3251) 2024-07-02 10:26:26 +03:00
snapshot_test.py test: more stabe test_bgsave_and_save (#3843) 2024-10-01 15:03:12 +03:00
tiering_test.py chore: upload all the logs from /tmp (#3263) 2024-07-04 09:17:25 +03:00
tls_conf_test.py fix: HELLO AUTH with non default user (#3486) 2024-08-11 14:35:26 +03:00
utility.py chore: do not close connections at the end of pytest (#3811) 2024-09-30 09:54:41 +03:00