11906 Commits

Author SHA1 Message Date
John Sully
4f55afa948 Print stack traces of other threads in the deadlock detector
Former-commit-id: 6b0172b9bf124372f4c8688c91c380c6c1b607c7
2020-03-19 15:37:49 -04:00
John Sully
833f5b39f4 Log which thread a message came from
Former-commit-id: bc1eccb66d3302d6c99588fb4a5a879e1ef243b1
2020-03-19 15:37:24 -04:00
John Sully
1b9ef774da Fix lock inversion in processEventsWhileBlocked
Former-commit-id: a9249d4a82a0f0355ac8ffa40b34b9c14cabf66b
2020-03-19 15:28:39 -04:00
John Sully
96be5f6a6c Prevent dangling lock when we can't free the client
Former-commit-id: 3c373494d63b21744b264f0a47e6999bcdda6b2b
2020-03-19 14:34:23 -04:00
hwware
d59e54c32c fix spelling in cluster.c 2020-03-18 09:48:03 -04:00
hwware
ee1443973c fix potentical memory leak in redis-cli 2020-03-18 09:33:52 -04:00
Guy Benoish
44c3c39dde Allow RM_GetContextFlags to work with ctx==NULL 2020-03-18 18:34:27 +05:30
Salvatore Sanfilippo
dd181bb36e Merge pull request #6996 from artix75/redis_cli_proxy_info
Support Redis Cluster Proxy PROXY INFO command
2020-03-18 11:06:49 +01:00
Salvatore Sanfilippo
2ceda2d79d Merge pull request #7000 from ppillip/patch-1
Update redis.conf
2020-03-18 11:06:22 +01:00
Salvatore Sanfilippo
2ff36d4139 Merge pull request #7001 from trevor211/fixDataInconsistency
Fix data inconsistency
2020-03-18 11:04:08 +01:00
WuYunlong
f4a6b931cc Fix master replica inconsistency for upgrading scenario.
Before this commit, when upgrading a replica, expired keys will not
be loaded, thus causing replica having less keys in db. To this point,
master and replica's keys is logically consistent. However, before
the keys in master and replica are physically consistent, that is,
they have the same dbsize, if master got a problem and the replica
got promoted and becomes new master of that partition, and master
updates a key which does not exist on master, but physically exists
on the old master(new replica), the old master would refuse to update
the key, thus causing master and replica data inconsistent.

How could this happen?
That's all because of the wrong judgement of roles while starting up
the server. We can not use server.masterhost to judge if the server
is master or replica, since it fails in cluster mode.

When we start the server, we load rdb and do want to load expired keys,
and do not want to have the ability to active expire keys, if it is
a replica.
2020-03-18 16:22:07 +08:00
WuYunlong
0c9916d008 Add 14-consistency-check.tcl to prove there is a data consistency issue. 2020-03-18 16:17:46 +08:00
박승현
70705e758d Update redis.conf 2020-03-18 14:40:50 +09:00
John Sully
e800858c4c Merge branch 'unstable' into redis_6_merge
Former-commit-id: 40761e403166bf3342fe388ab742498f99245b1a
2020-03-17 00:09:48 -04:00
John Sully
72f6847f95 Fix issue #153: Config get replicaof returns a corrupt response
Former-commit-id: 5aef606d3bc1d748ca8d2df1d36feccaa2e583c0
2020-03-16 20:43:46 -04:00
antirez
498e28f98b Sentinel: document auth-user directive. 2020-03-16 17:11:43 +01:00
antirez
3b5ca2f19f ACL: Make Redis 6 more backward compatible with requirepass.
Note that this as a side effect fixes Sentinel "requirepass" mode.
2020-03-16 16:57:12 +01:00
artix
0de01d8e51 Support Redis Cluster Proxy PROXY INFO command 2020-03-16 16:15:02 +01:00
antirez
411aadd83e Sentinel: implement auth-user directive for ACLs. 2020-03-16 15:59:34 +01:00
antirez
d1493dbc0b Merge branch 'unstable' of github.com:/antirez/redis into unstable 2020-03-16 13:48:35 +01:00
antirez
bd35171848 Example sentinel conf: document requirepass. 2020-03-16 13:48:29 +01:00
Salvatore Sanfilippo
b790538289 Merge pull request #6991 from soloestoy/io-threads-bugfix
Threaded IO: bugfix client kill may crash redis
2020-03-16 10:53:54 +01:00
Salvatore Sanfilippo
ff49d766d8 Merge pull request #6993 from soloestoy/optimize-threaded-io
Threaded IO: handle pending reads clients ASAP after event loop
2020-03-16 10:48:23 +01:00
zhaozhao.zz
a02e9fc81d Threaded IO: handle pending reads clients ASAP after event loop 2020-03-16 11:20:48 +08:00
John Sully
61176a1a5e Merge branch 'unstable' into redis_6_merge
Former-commit-id: 4671cd6002c50dd8484e59fd7434878053340702
2020-03-15 18:47:27 -04:00
John Sully
af3afa979a Handle HTTP error codes with MOTD
Former-commit-id: 2ec0b2cd206f2c73fabcda5d59751b013aa8cfbf
2020-03-15 18:47:01 -04:00
John Sully
97537d0525 Merge branch 'unstable' into redis_6_merge
Former-commit-id: 07effa392564f3c53989600e803103f3e3951fe7
2020-03-15 18:33:24 -04:00
John Sully
143ae07899 Update MOTD URL
Former-commit-id: cd76a71de393eb527f98024ea85a9492ef0c36ca
2020-03-15 18:32:05 -04:00
zhaozhao.zz
078c97ea44 Threaded IO: bugfix client kill may crash redis 2020-03-15 23:30:25 +08:00
antirez
4295673072 Aesthetic changes in PR #6989. 2020-03-15 16:10:37 +01:00
Salvatore Sanfilippo
9b5fcd4aaa Merge pull request #6989 from soloestoy/io-threads-bugfix
Threaded IO: bugfix #6988 process events while blocked
2020-03-15 15:57:22 +01:00
zhaozhao.zz
c022f07e04 Threaded IO: bugfix #6988 process events while blocked 2020-03-15 22:07:36 +08:00
antirez
e886009f9f Restore newline at the end of redis-cli.c 2020-03-13 16:21:55 +01:00
Salvatore Sanfilippo
5c2babe9c5 Merge pull request #6918 from chendq8/fixModuleUnregisterUsedApi
Fix module unregister used api
2020-03-13 12:46:27 +01:00
Salvatore Sanfilippo
98c47d60c9 Merge pull request #6961 from guodongxiaren/pr
string literal should be const char*
2020-03-13 12:37:08 +01:00
Salvatore Sanfilippo
9521b4f1de Merge pull request #6976 from itamarhaber/ksn-patch
Adds keyspace notifications to migrate and restore
2020-03-13 12:35:00 +01:00
Salvatore Sanfilippo
ee13632d85 Merge pull request #6977 from yangbodong22011/fix-makefile-duplicate-obj
Remove duplicate obj files in Makefile
2020-03-13 12:32:03 +01:00
Salvatore Sanfilippo
a96c0ceff6 Merge pull request #6974 from yangbodong22011/fix-tcl-test-host-option
Fix bug of tcl test using external server
2020-03-13 12:27:26 +01:00
Salvatore Sanfilippo
24d39186f0 Merge pull request #6980 from fengpf/fix_latency_comments
fix comments in latency.c
2020-03-13 12:26:18 +01:00
antirez
317496405a Update linenoise. 2020-03-12 15:53:47 +01:00
lifubang
8e3c92fff8 add askpass mode
Signed-off-by: lifubang <lifubang@acmcoder.com>
2020-03-12 15:53:47 +01:00
lifubang
109296b438 update linenoise to fc9667a81d
Signed-off-by: lifubang <lifubang@acmcoder.com>
2020-03-12 15:53:47 +01:00
Jamie Scott
6e3f53a46f Remove default guidance in Redis.conf
Removing the default guidance in Redis.conf since this is not an available value.
2020-03-12 15:53:47 +01:00
Jamie Scott
2880ed0b90 Update Redis.conf to improve TLS usability
When using TLS with a Redis.conf file the line for TLS reading tls-cert-file redis.crt tls-key-file redis.key is interpreted as one complete directive. I am separating this on two separate lines to improve usability so users do not get the below error.

ubuntu@ip-172-31-29-250:~/redis-6.0-rc1$ ./src/redis-server redis.conf 

*** FATAL CONFIG FILE ERROR ***
Reading the configuration file, at line 145
>>> 'tls-cert-file redis.crt tls-key-file redis.key'
wrong number of arguments
ubuntu@ip-172-31-29-250:~/redis-6.0-rc1$ vi redis.conf 
ubuntu@ip-172-31-29-250:~/redis-6.0-rc1$ ./src/redis-server redis.conf 
23085:C 04 Mar 2020 01:58:12.631 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
23085:C 04 Mar 2020 01:58:12.631 # Redis version=5.9.101, bits=64, commit=00000000, modified=0, pid=23085, just started
23085:C 04 Mar 2020 01:58:12.631 # Configuration loaded
23085:M 04 Mar 2020 01:58:12.632 * Increased maximum number of open files to 10032 (it was originally set to 1024).
2020-03-12 15:53:47 +01:00
Johannes Truschnigg
9f1b635067 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.
2020-03-12 15:53:47 +01:00
Oran Agra
cde46df309 fix for flaky psync2 test
*** [err]: PSYNC2: total sum of full synchronizations is exactly 4 in tests/integration/psync2.tcl
Expected 5 == 4 (context: type eval line 6 cmd {assert {$sum == 4}} proc ::test)

issue was that sometime the test got an unexpected full sync since it
tried to switch to the replica before it was in sync with it's master.
2020-03-12 15:53:47 +01:00
antirez
75d5ed8938 ae.c: fix crash when resizing the event loop.
See #6964. The root cause is that the event loop may be resized from an
event callback itself, causing the event pointer to be invalid.
2020-03-12 15:53:47 +01:00
antirez
ca0268c0ac Update linenoise. 2020-03-12 15:53:08 +01:00
fengpf
4278c5ad5d fix comments in latency.c 2020-03-12 20:44:32 +08:00
antirez
ccae1031e7 Merge branch 'unstable' of github.com:/antirez/redis into unstable 2020-03-12 13:25:01 +01:00