11480 Commits

Author SHA1 Message Date
John Sully
1a661c81fe Merge commit 'baaf869fc3e138cfcb4cfda09f09fd3c87c8f924' into redis_6_merge
Former-commit-id: cbdd47d0569cd7dd5d45fa764f3f966a9bf7aee9
2020-04-14 20:44:27 -04:00
John Sully
07005cc187 Merge commit 'be4bc1a5be26a7fde2fd05acd8187f5f0ed59f25' into redis_6_merge
Former-commit-id: 516c8c6e231cdfc87a3db5be401407cb7afa3937
2020-04-14 20:42:48 -04:00
John Sully
f27524674a Merge commit '973297336fc05a601e17be70aba88e5dca6480ae' into redis_6_merge
Former-commit-id: ef1236b6009ebd7b00f6dd2f43df57ad95e51253
2020-04-14 20:19:48 -04:00
John Sully
d57fa7c8f9 Merge commit '349aa24511253b3e323064b95cefb4414f31726c' into redis_6_merge
Former-commit-id: 28cbed1d13961c5568f2bdc50c6a23107d3434d0
2020-04-14 20:09:53 -04:00
John Sully
12999c17dd Merge commit 'df83892760d19b1b7e92d76e72daf4834ad2df6c' into redis_6_merge
Former-commit-id: cde199a7973ad63317b68f581df607321e12bf46
2020-04-14 19:43:04 -04:00
John Sully
947bf289a5 Merge commit 'f42ce57d0f7eee6705fb0a81714cabe97a4f2c0a' into redis_6_merge
Former-commit-id: 5589a0a69ca6f5798b750a6a79f7e9b44d20e136
2020-04-14 19:22:44 -04:00
John Sully
5dbcd55669 Merge commit '51c1a9f8fbc12a9276489178242e498bb6ccbdba' into redis_6_merge
Former-commit-id: 09e8fb17cd0889ad17461e48446221b3955f5a8f
2020-04-14 18:44:42 -04:00
John Sully
bd73ec5f1e Merge commit '6fe55c2f299bbb306533af39cb28346bf5d473d3' into redis_6_merge
Former-commit-id: d71c4c221580221c2c31b5e3b5d23bab50a544dc
2020-04-14 18:30:26 -04:00
John Sully
7ee5ad6430 Merge commit '721a39ddff0eb9be822d27dba80267f6da149aff' into redis_6_merge
Former-commit-id: 6f621e6480fd629593de8b264117a8b130b21175
2020-04-14 18:29:03 -04:00
John Sully
e751664909 Merge commit 'cbabf779c24fd107ca8e4fe6369e4677ad0eda10' into redis_6_merge
Former-commit-id: 8e33c2d30116ea469238c340ed367f0182856454
2020-04-14 18:05:10 -04:00
John Sully
8f4c9d6403 Merge commit 'ecd17e819cbb05110a49d81c6fda10e6770a7838' into redis_6_merge
Former-commit-id: 52aca124c30815fc1609ce2fb36081823ef5ddef
2020-04-14 18:04:51 -04:00
antirez
eafcca9f29 Jump to right label on AOF parsing error.
Related to #6054.


Former-commit-id: c7159d58f118e840a3b9f72160d1abf3e8a86b3d
2020-04-14 18:03:22 -04:00
antirez
0fac746f0e 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
10a7bfe3a2 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
f084ee6f17 Fix merge conflicts from cherry-pick
Former-commit-id: 57956b3fd2d05581c976f58d07e245896d3a515b
2020-04-14 17:33:54 -04:00
antirez
34f7c653d5 Remove RDB files used for replication in persistence-less instances.
Former-commit-id: b323645227a3e2cc5928e649586221aba508b10d
2020-04-14 17:27:05 -04:00
Johannes Truschnigg
1a078be843 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
234e6e7b09 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
945f40c76a Fix failure to AUTH with master when masterauth is set last
Former-commit-id: 3fdc8608f35b9e333a1c789b039d16722a6ceef5
2020-04-06 01:24:59 -04:00
John Sully
e9d1f9bc6c Merge branch 'redis_6_merge' of https://github.com/JohnSully/KeyDB into redis_6_merge
Former-commit-id: 95b4f899c5a9218f7ed4cbb81b7f0b894bffe83f
2020-03-30 00:52:43 -04:00
John Sully
4cf5373b9c Merge branch 'unstable' into redis_6_merge
Former-commit-id: 294615531347d7db5d1b0c6a021ac9b05e0bcb48
2020-03-30 00:52:12 -04:00
John Sully
754138a94c Allow active replicas to connect to each other when replica-serve-stale-data is set
Former-commit-id: f2ca2aa1f70956a0309d6a2441417a80383fd717
2020-03-30 00:51:40 -04:00
John Sully
b28c7298ce Don't send build log to stderr
Former-commit-id: b20bf10fda319389c6e7d06cc7cc6c6b6b4f1c6c
2020-03-28 23:36:57 -04:00
John Sully
623c617042 Merge branch 'unstable' into redis_6_merge
Former-commit-id: 208c15bc16aa2a0abf8f8dbcb132316134f0be31
2020-03-27 14:50:37 -04:00
John Sully
6283ca8a2c Raspberry Pi fixes (compile and replication)
Former-commit-id: c3d3c82f3a1751f063a3e77b4bde47f1802a517e
2020-03-27 12:46:25 -04:00
John Sully
8011cc3c6d Fix merge issues
Former-commit-id: b22d9cc27d0434578891c59825f1c8813a3a9b28
2020-03-25 22:26:27 -04:00
John Sully
aaa751acb8 Merge branch 'unstable' into redis_6_merge
Former-commit-id: 908cf5042ebcd7870166bd1a0bb450f37e5f3b4d
2020-03-25 22:12:22 -04:00
John Sully
356ed25c62 Fix issue #143
Former-commit-id: 6ec1641294b23e22a2a5dc5cc6098a02ce234df3
2020-03-25 21:55:31 -04:00
John Sully
5e96404ad8 Give a better error when handling std::terminate
Former-commit-id: 7b79ec360ba046da6d9dbf3cc731bbdee1458d34
2020-03-25 16:27:24 -04:00
John Sully
af459476ea Merge branch 'unstable' into redis_6_merge
Former-commit-id: 718aee242dd75abd16a5a6a89353d2a35f37b010
2020-03-25 15:47:12 -04:00
John Sully
d5c4d4999b Add roundtrip test for subkey expires
Former-commit-id: 56fc6b7deb59cfb3219d65c01c96969d3983e84a
2020-03-25 15:34:30 -04:00
John Sully
7b2b437539 Fix failure to load subkey expires
Former-commit-id: 528a43bd6c80f073d928dd18c4f67f37cfd0977a
2020-03-25 01:38:58 -04:00
John Sully
70faf2f375 Expire entry needs to be resorted after a subkey expires
Former-commit-id: b357803362728c26a1169e3cec279c693b86205b
2020-03-25 01:06:40 -04:00
John Sully
b057a9cd7a Unstable branch should always be version 0.0.0
Former-commit-id: 448808529ab9e9e4705c2e7cbda5b3e6523b7c6f
2020-03-19 15:52:24 -04:00
John Sully
dada212214 Merge branch 'RELEASE_5' into unstable
Former-commit-id: a0bc2084128f991697d3e1b7473d14c55afdd785
2020-03-19 15:38:16 -04:00
John Sully
69806aaa7b Print stack traces of other threads in the deadlock detector
Former-commit-id: 6b0172b9bf124372f4c8688c91c380c6c1b607c7
2020-03-19 15:37:49 -04:00
John Sully
1bdccb3c42 Log which thread a message came from
Former-commit-id: bc1eccb66d3302d6c99588fb4a5a879e1ef243b1
2020-03-19 15:37:24 -04:00
John Sully
4d5d7ed59f Fix lock inversion in processEventsWhileBlocked
Former-commit-id: a9249d4a82a0f0355ac8ffa40b34b9c14cabf66b
2020-03-19 15:28:39 -04:00
John Sully
87626299a6 Prevent dangling lock when we can't free the client
Former-commit-id: 3c373494d63b21744b264f0a47e6999bcdda6b2b
2020-03-19 14:34:23 -04:00
John Sully
3df47fa3ab Merge branch 'unstable' into redis_6_merge
Former-commit-id: 40761e403166bf3342fe388ab742498f99245b1a
2020-03-17 00:09:48 -04:00
John Sully
42027c533a Fix issue #153: Config get replicaof returns a corrupt response
Former-commit-id: 5aef606d3bc1d748ca8d2df1d36feccaa2e583c0
2020-03-16 20:43:46 -04:00
John Sully
c7f1eab8a4 Merge branch 'unstable' into redis_6_merge
Former-commit-id: 4671cd6002c50dd8484e59fd7434878053340702
2020-03-15 18:47:27 -04:00
John Sully
15df3ed91d Handle HTTP error codes with MOTD
Former-commit-id: 2ec0b2cd206f2c73fabcda5d59751b013aa8cfbf
2020-03-15 18:47:01 -04:00
John Sully
d73ac7e377 Merge branch 'unstable' into redis_6_merge
Former-commit-id: 07effa392564f3c53989600e803103f3e3951fe7
2020-03-15 18:33:24 -04:00
John Sully
3b1f36a521 Update MOTD URL
Former-commit-id: cd76a71de393eb527f98024ea85a9492ef0c36ca
2020-03-15 18:32:05 -04:00
antirez
baaf869fc3 Introduce bg_unlink(). 2020-03-05 12:51:14 +01:00
antirez
be4bc1a5be Remove RDB files used for replication in persistence-less instances. 2020-03-05 12:51:14 +01:00
antirez
07dc1b42fb Use a smaller getkeys global buffer.
The idea is that very few commands have a lot of keys, and when this
happens the allocation time becomes neglegible.
2020-03-05 12:51:14 +01:00
Oran Agra
10e71b3d01 Optimize temporary memory allocations for getKeysFromCommand mechanism
now that we may use it more often (ACL), these excessive calls to malloc
and free can become an overhead.
2020-03-05 12:51:14 +01:00
antirez
edc0ed1415 Modules: reformat RM_Scan() top comment a bit. 2020-03-05 12:51:14 +01:00