John Sully
c177e6e34d
Fix race in sendBulk
...
Former-commit-id: 5fd07e08894482e1a55f18ece9c52ff5379b82ec
2020-04-15 22:26:00 -04:00
John Sully
f69c169c04
Merge tag '6.0-rc3' into redis_6_merge
...
Redis 6.0 RC3.
Former-commit-id: b2cb10de5f39b4d8e1ee19877c2bdaf19eefd9db
2020-04-14 22:56:19 -04: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
90cbdd5573
Merge commit 'c208956fbe077e8249d2965dec2ea1b9b7588d6d' into redis_6_merge
...
Former-commit-id: 2825e515504cffcf6000be2e547ab1cbd86441bc
2020-04-14 20:55:29 -04:00
John Sully
4d4a7d656b
Merge commit '00e53fb140fb67d329aff6cd2200f1eaf9e80cf5' into redis_6_merge
...
Former-commit-id: cbdd47d0569cd7dd5d45fa764f3f966a9bf7aee9
2020-04-14 20:44:27 -04:00
John Sully
4f56e9c3b0
Merge commit 'e91ca9fee9c56ef319b407b104afc435be0c53cb' into redis_6_merge
...
Former-commit-id: 516c8c6e231cdfc87a3db5be401407cb7afa3937
2020-04-14 20:42:48 -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
d48ea996e7
Merge commit '13fbdf970660b15011c4312f31137e58bbda5b2c' into redis_6_merge
...
Former-commit-id: cde199a7973ad63317b68f581df607321e12bf46
2020-04-14 19:43:04 -04:00
antirez
c38bc83f47
PSYNC2: meaningful offset implemented.
...
A very commonly signaled operational problem with Redis master-replicas
sets is that, once the master becomes unavailable for some reason,
especially because of network problems, many times it wont be able to
perform a partial resynchronization with the new master, once it rejoins
the partition, for the following reason:
1. The master becomes isolated, however it keeps sending PINGs to the
replicas. Such PINGs will never be received since the link connection is
actually already severed.
2. On the other side, one of the replicas will turn into the new master,
setting its secondary replication ID offset to the one of the last
command received from the old master: this offset will not include the
PINGs sent by the master once the link was already disconnected.
3. When the master rejoins the partion and is turned into a replica, its
offset will be too advanced because of the PINGs, so a PSYNC will fail,
and a full synchronization will be required.
Related to issue #7002 and other discussion we had in the past around
this problem.
Former-commit-id: 5d6e8fe3e3e43162f0c57f580b6e8432274fca30
2020-04-14 17:56:09 -04:00
Oran Agra
031d5044bf
reduce repeated calls to use_diskless_load
...
this function possibly iterates on the module list
Former-commit-id: 99762dac23e26a217fcd66531ee4ca9b4d13a7ac
2020-04-14 17:34:36 -04:00
John Sully
c168ae6cfe
Fix merge conflicts from cherry-pick
...
Former-commit-id: 57956b3fd2d05581c976f58d07e245896d3a515b
2020-04-14 17:33:54 -04:00
antirez
f7e8240900
Remove RDB files used for replication in persistence-less instances.
...
Former-commit-id: b323645227a3e2cc5928e649586221aba508b10d
2020-04-14 17:27:05 -04:00
Johannes Truschnigg
0ef7e8e0b2
Signal systemd readiness atfer Partial Resync
...
"Partial Resynchronization" is a special variant of replication success
that we have to tell systemd about if it is managing redis-server via a
Type=Notify service unit.
Former-commit-id: dd9502f373eb7e32aee69a30dcb521bea3ccd3ad
2020-04-14 17:22:30 -04:00
Guy Benoish
49dda32114
Diskless-load emptyDb-related fixes
...
1. Call emptyDb even in case of diskless-load: We want modules
to get the same FLUSHDB event as disk-based replication.
2. Do not fire any module events when flushing the backups array.
3. Delete redundant call to signalFlushedDb (Called from emptyDb).
Former-commit-id: aa8a3077a2d20e66e34f72f2860d0cc3daad496e
2020-04-14 17:21:10 -04:00
John Sully
549b15d5a2
Merge branch 'unstable' into redis_6_merge
...
Former-commit-id: 294615531347d7db5d1b0c6a021ac9b05e0bcb48
2020-03-30 00:52:12 -04:00
John Sully
4af17a23d8
Raspberry Pi fixes (compile and replication)
...
Former-commit-id: c3d3c82f3a1751f063a3e77b4bde47f1802a517e
2020-03-27 12:46:25 -04:00
John Sully
f4caa84987
Fix merge issues
...
Former-commit-id: b22d9cc27d0434578891c59825f1c8813a3a9b28
2020-03-25 22:26:27 -04:00
John Sully
9c4b66b9a4
Merge branch 'unstable' into redis_6_merge
...
Former-commit-id: 908cf5042ebcd7870166bd1a0bb450f37e5f3b4d
2020-03-25 22:12:22 -04:00
John Sully
71fe6f7ba9
Fix issue #143
...
Former-commit-id: 6ec1641294b23e22a2a5dc5cc6098a02ce234df3
2020-03-25 21:55:31 -04:00
John Sully
e39dd04f6c
Merge branch 'unstable' into redis_6_merge
...
Former-commit-id: 52fd4445a472fa3112e96c6a7ef66ecdfe6ce9f5
2020-03-04 17:13:01 -05:00
John Sully
01a85ba7fe
Add extra logging when reporting errors from masters - especially in rreplay
...
Former-commit-id: 5397f0b03312b8cace07a85333d8f035bdfb8d57
2020-03-04 17:09:12 -05:00
John Sully
0af756d4d7
Merge branch 'unstable' into redis_6_merge
...
Former-commit-id: 9dc8f30e4783d7e2e9749b155f6bf3df57c536a7
2020-02-28 23:56:26 -05:00
John Sully
e8b9258890
Fix crash propogating stale keys
...
Former-commit-id: d95bead3837edeca11f27f6f344eca8174ca53e3
2020-02-26 21:49:40 -05:00
John Sully
04d174ba1a
Merge branch 'unstable' into redis_6_merge
...
Former-commit-id: 30a603ce05956195aa027a3400eafd48d2750ea7
2020-02-16 18:18:24 -05:00
John Sully
41c75234bd
Fix memory leak of ReplicaNestState on shutdown
...
Former-commit-id: 4781eda7225c2640e25387663c33ef74cd98b0c4
2020-02-16 03:43:29 -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
e4d74b993f
Fix cases where duplicate RREPLAY is applied
...
Former-commit-id: c3317686f8b8d94a3b2295def899ae30e208f327
2020-02-11 00:59:07 -05:00
John Sully
eac3cffe41
CLANG build fix
...
Former-commit-id: dc78bf1ccbd3dfd2de582d2a0d0be3223de3c7c3
2020-02-10 00:29:26 -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
24c9edd93b
replication memory leaks
...
Former-commit-id: 73020b6a939f241ade7512d58a4ddf17f5a803c5
2020-01-30 17:56:24 -05:00
John Sully
1adc5e9832
More threading fixes from merge
...
Former-commit-id: 4a980f4ddbebe3f62703aa3de67c93cdffb6b4b8
2020-01-28 17:54:00 -05:00
John Sully
d9c070408b
reenable multithreading after merge
...
Former-commit-id: 9fbb9a551e83ddfc66894fba688dae7c9c3c7ae1
2020-01-27 19:59:04 -05:00
John Sully
14188ef92d
Fix most tests (still some failures)
...
Former-commit-id: da83e841255487efe0e4b13d42b2dcc55a369838
2020-01-27 18:16:19 -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
John Sully
6ab3e82e45
Drop severity of master disconnect log when multimaster is enabled
...
Former-commit-id: edb993d52b25c30392c6eb1e60896498f991a223
2020-01-02 15:36:02 -05:00
John Sully
55cddbe82f
Fix some static analysis warnings
...
Former-commit-id: 42a8f22c21706f9ddcaa63ceafc5ad817c1fe876
2019-12-27 18:17:22 -05:00
Petr Vaněk
8146f24391
Rename redis.conf to keydb.conf
...
Former-commit-id: 4b01ad1e30568a5385881accedd8a841c7a7882f
2019-12-21 15:00:24 -05:00
John Sully
27c23b0c9b
Fix issue #83
...
Former-commit-id: 3028a890ef11cd99b2c7538de0f480d2466eb150
2019-11-21 20:05:16 -05:00
John Sully
051bde5d3d
Fix issue #107 , active replicas do their own expires
...
Former-commit-id: 8e4f323439df29a5e8c0de9db7a848291721fd07
2019-11-20 19:44:31 -05:00
John Sully
70fba8e707
Two fixes: 1) Remove race conditions by not locking clients when async writing. 2) Don't derefence dangling pointers in lambda
...
Former-commit-id: cb93752aff4c67d4475e9ed17833335716c45744
2019-10-24 23:07:02 -04:00
John Sully
8d0b21c403
If a replica is about to be closed, don't wait on its lock (potential deadlock)
...
Former-commit-id: 4986dc6da9855ba14d760a89f13ec40c8bea4baf
2019-10-23 13:20:23 -04:00
John Sully
e57d2e24c9
Update more slave instances to use replica (Issue #75 )
...
Former-commit-id: 252725d50fc9d4ff2b6e9246a36c38176d61beae
2019-10-13 12:29:20 -04:00
John Sully
05d7536b02
Update a few uses of slave to use the new replica terminology (Issue #75 )
...
Former-commit-id: c15633ea9e784ef0e12e4015a75245661a8cf1b7
2019-10-13 12:12:05 -04:00
John Sully
6080010db0
Fix an intermittent crash when replicationCron happens before slavesdb is update
...
Former-commit-id: 27c9ae667e515819d5be06722722ed6ff43a3205
2019-10-13 12:04:54 -04:00
John Sully
4db6193052
RREPLAY command now takes a DB argument
...
Former-commit-id: 6e1e5bd08b59f8ad4653621a6c01fcf3a76f0692
2019-09-28 14:59:44 -04:00
John Sully
cdfcc42b6d
Fix leaking stale RDBs during multimaster sync
...
Former-commit-id: e1c96209510b374e644e5d7e7b6a009ed0f27c32
2019-09-27 13:17:29 -04:00
John Sully
4f19c5de9f
Fix multi master bugs: 1. we fail to create the temp file. 2. We use a master RDB as our backup even though we merged databases (and therefore it is not representitive)
...
Former-commit-id: e776474f68a2824bb7d4082c41991a9a9f3a9c9d
2019-09-26 20:35:51 -04:00
John Sully
e45268930a
Fix issue where Active Replicas were commiting data to the wrong database under load
...
Former-commit-id: ac595ebe371480a924d542aa62733854eb7c527a
2019-09-06 13:30:28 -04:00
John Sully
e3b97286ca
RREPLAY failures should be logged
...
Former-commit-id: 08b6a04055e950e53f043391ec9f9a09f654b1ee
2019-07-24 22:49:30 -04:00
John Sully
4c49370efe
Issue #64 RREPLAY isn't binary safe. Add fix and test.
...
Former-commit-id: afe66288fe9df6d8247d459e57858430f1ec7a25
2019-07-24 22:31:02 -04:00