10405 Commits

Author SHA1 Message Date
yanhui13
92974f9a98 optimize the output of cluster slots 2020-04-21 16:55:05 +08:00
antirez
94f2e7f9f9 Tracking: NOLOOP internals implementation. 2020-04-21 10:51:46 +02:00
Dave-in-lafayette
80b6f9b0cb
fix for crash during panic before all threads are up
If there's a panic before all threads have been started (say, if file descriptor 0 is closed at exec), the panic response will crash here again.
2020-04-20 16:38:06 -07:00
Dave-in-lafayette
071197fb64
fix for unintended crash during panic response
If redis crashes early, before lua is set up (like, if File Descriptor 0 is closed before exec), it will crash again trying to print memory statistics.
2020-04-20 16:34:36 -07:00
Salvatore Sanfilippo
c49fb47fbe
Merge pull request #7118 from yossigo/fix/openssl-build-issue
TLS: Fix build on older verisons of OpenSSL.
2020-04-20 14:53:33 +02:00
Yossi Gottlieb
c8a720d17d TLS: Fix build on older verisons of OpenSSL. 2020-04-20 13:34:37 +03:00
antirez
c7db333abb Implement redis_set_thread_title for MacOS.
Strange enough, pthread_setname_np() produces a warning for not defined
function even if pthread is included. Moreover the MacOS documentation
claims the return value for the function is void, but actually is int.

Related to #7089.
2020-04-20 12:18:37 +02:00
Salvatore Sanfilippo
85d1d1f870
Merge pull request #7089 from bytedance/set-thread-name
Threaded IO: set thread name for redis-server
2020-04-20 11:54:25 +02:00
antirez
2321939218 Sentinel: small refactoring of sentinelCollectTerminatedScripts().
Related to #7113.
2020-04-20 11:52:34 +02:00
Salvatore Sanfilippo
f9d624c504
Merge pull request #7113 from OMG-By/unstable
fix(sentinel): sentinel.running_scripts not reset
2020-04-20 11:51:51 +02:00
zhenwei pi
5010da6ab0 Threaded IO: set thread name for redis-server
Set thread name for each thread of redis-server, this helps us to
monitor the utilization and optimise the performance.

And suggested-by Salvatore, implement this feature for multi
platforms. Currently support linux and bsd, ignore other OS.

An exmaple on Linux:
 # top -d 5 -p `pidof redis-server ` -H

    PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
3682671 root      20   0  227744   8248   3836 R 99.2  0.0   0:19.53 redis-server
3682677 root      20   0  227744   8248   3836 S 26.4  0.0   0:04.15 io_thd_3
3682675 root      20   0  227744   8248   3836 S 23.6  0.0   0:03.98 io_thd_1
3682676 root      20   0  227744   8248   3836 S 23.6  0.0   0:03.97 io_thd_2
3682672 root      20   0  227744   8248   3836 S  0.2  0.0   0:00.02 bio_close_file
3682673 root      20   0  227744   8248   3836 S  0.2  0.0   0:00.02 bio_aof_fsync
3682674 root      20   0  227744   8248   3836 S  0.0  0.0   0:00.00 bio_lazy_free
3682678 root      20   0  227744   8248   3836 S  0.0  0.0   0:00.00 jemalloc_bg_thd
3682682 root      20   0  227744   8248   3836 S  0.0  0.0   0:00.00 jemalloc_bg_thd
3682683 root      20   0  227744   8248   3836 S  0.0  0.0   0:00.00 jemalloc_bg_thd
3682684 root      20   0  227744   8248   3836 S  0.0  0.0   0:00.00 jemalloc_bg_thd
3682685 root      20   0  227744   8248   3836 S  0.0  0.0   0:00.00 jemalloc_bg_thd
3682687 root      20   0  227744   8248   3836 S  0.0  0.0   0:00.00 jemalloc_bg_thd

Another exmaple on FreeBSD-12.1:
  PID USERNAME    PRI NICE   SIZE    RES STATE    C   TIME    WCPU COMMAND
 5212 root        100    0    48M  7280K CPU2     2   0:26  99.52% redis-server{redis-server}
 5212 root         38    0    48M  7280K umtxn    4   0:06  26.94% redis-server{io_thd_3}
 5212 root         36    0    48M  7280K umtxn    6   0:06  26.84% redis-server{io_thd_1}
 5212 root         39    0    48M  7280K umtxn    1   0:06  25.30% redis-server{io_thd_2}
 5212 root         20    0    48M  7280K uwait    3   0:00   0.00% redis-server{redis-server}
 5212 root         21    0    48M  7280K uwait    2   0:00   0.00% redis-server{bio_close_file}
 5212 root         21    0    48M  7280K uwait    3   0:00   0.00% redis-server{bio_aof_fsync}
 5212 root         21    0    48M  7280K uwait    0   0:00   0.00% redis-server{bio_lazy_free}

Signed-off-by: zhenwei pi <pizhenwei@bytedance.com>
2020-04-18 11:17:21 +08:00
omg-by
9d27e00ddb fix(sentinel): sentinel.running_scripts will always increase more times and not reset
when trigger a always fail scripts, sentinel.running_scripts will increase ten times, however it
only decrease one times onretry the maximum. and it will't reset, when it become
SENTINEL_SCRIPT_MAX_RUNNING, sentinel don't trigger scripts.
2020-04-18 00:49:16 +08:00
antirez
c39f16c422 Fix XCLAIM propagation in AOF/replicas for blocking XREADGROUP.
See issue #7105.
2020-04-17 12:40:54 +02:00
antirez
c479eace45 Fix XCLAIM propagation in AOF/replicas for blocking XREADGROUP.
See issue #7105.
2020-04-17 12:38:15 +02:00
John Sully
0b9779c33f Fix some clang warnings
Former-commit-id: 3785b1efd49002e629c1d821c57e971f8f09a2d2
2020-04-16 20:12:05 -04:00
John Sully
3ecb621ccf Always link libatomic
Former-commit-id: 7aeae62f84fe958bcda9925f76180a7e149a337e
2020-04-16 20:01:24 -04:00
John Sully
e5a1f84582 Fix warning in cluster.cpp
Former-commit-id: e5e33f8cb7b4c928884a934184cbf81b916b3c03
2020-04-16 20:01:13 -04:00
John Sully
158868ed92 quiet TSAN in serverLog
Former-commit-id: a836d5947d5a024d855bf5d0d6269e014e47b868
2020-04-16 17:06:25 -04:00
antirez
7cf0a77d59 Redis 6.0-RC4. 2020-04-16 16:18:02 +02:00
antirez
9f594e2432 Update SDS to latest version. 2020-04-16 16:09:06 +02:00
antirez
37b135a400 Update SDS to latest version. 2020-04-16 16:08:37 +02:00
antirez
48781dd95c RESP3: fix HELLO map len in Sentinel mode.
See #6160.
2020-04-16 11:22:18 +02:00
antirez
c9388ecc73 RESP3: fix HELLO map len in Sentinel mode.
See #6160.
2020-04-16 11:21:52 +02:00
John Sully
cf9efc8e9f Deprecate travis and finish setting up github CI
Former-commit-id: 90094a2dcaa004437c43818b411d44e722da420a
2020-04-15 23:04:04 -04:00
John Sully
c498381b1a Merge branch 'unstable' into redis_6_merge
Former-commit-id: cc9924ffa606200f331b3bf5e1e1a4aa3f2702fa
2020-04-15 23:00:13 -04:00
John Sully
e09a2ac94a OS X build break
Former-commit-id: 5e6b4ab99e6f2ad29577c8d4cc151284f0c652b4
2020-04-15 22:43:40 -04:00
John Sully
34131bf287 During AOF reload we can erroneously read incorrect aof_state values, so this variable must be read with the global lock acquired
Former-commit-id: 6ff9d23fd4541a011d754209d9fda3ef3af4a7f9
2020-04-15 22:30:19 -04:00
John Sully
470a895585 Quiet test only ASAN fd race
Former-commit-id: d4939c838b58eab2fb3b631267045cff9d3caff1
2020-04-15 22:27:45 -04:00
John Sully
19550c4819 Fix race in sendBulk
Former-commit-id: 5fd07e08894482e1a55f18ece9c52ff5379b82ec
2020-04-15 22:26:00 -04:00
John Sully
bbb08af294 Convert variables accessed outside lock to atomics
Former-commit-id: b0796ff5fd7e069a2fadbfd968f7bbb2020edd2d
2020-04-15 22:25:17 -04:00
John Sully
4f2f2affed ASAN races in leak checker
Former-commit-id: 9dfa074cd6d5ed9a87036e582861dfc386b56d5e
2020-04-15 22:24:12 -04:00
hwware
12b9fd4f03 Fix not used marco in cluster.c 2020-04-15 22:00:36 -04:00
John Sully
fc66f768e0 Fix TSAN race
Former-commit-id: f00d28fdabe858bd621a1bd98e40493aca5aba1e
2020-04-15 16:34:38 -04:00
John Sully
4ee29a3b25 Fix incorrect cluster slot tracking (regression from merge)
Former-commit-id: 4705f29e2f62d90c374e072319c8cd486d32f807
2020-04-15 16:34:07 -04:00
antirez
371ab0cff8 Don't allow empty spaces in ACL usernames.
Fixes issue #6418.
2020-04-15 18:40:11 +02:00
antirez
b86140ac5f Don't allow empty spaces in ACL key patterns.
Fixes issue #6418.
2020-04-15 18:40:11 +02:00
antirez
503a5a24fb Don't allow empty spaces in ACL usernames.
Fixes issue #6418.
2020-04-15 16:40:25 +02:00
antirez
3519a5a026 Don't allow empty spaces in ACL key patterns.
Fixes issue #6418.
2020-04-15 16:12:07 +02:00
antirez
bec68bff29 Use the special static refcount for stack objects. 2020-04-15 16:03:16 +02:00
antirez
414debfd04 Speedup: unblock clients on keys in O(1).
See #7071.
2020-04-15 16:03:16 +02:00
liumiuyong
a7ee3c3e77 FIX: truncate max/min longitude,latitude related geo_point (ex: {180, 85.05112878} ) 2020-04-15 16:03:16 +02:00
antirez
0f239e51b0 RDB: refactor some RDB loading code into dbAddRDBLoad(). 2020-04-15 16:03:16 +02:00
Guy Benoish
e5b9eb8171 Typo in getTimeoutFromObjectOrReply's error reply 2020-04-15 16:03:16 +02:00
antirez
f855db61b0 incrRefCount(): abort on statically allocated object. 2020-04-15 16:03:16 +02:00
antirez
0f31bb5c1a Fix HELLO reply in Sentinel mode, see #6160. 2020-04-15 16:03:16 +02:00
antirez
23094ba015 More powerful DEBUG RELOAD.
Related to #3243.
2020-04-15 16:03:16 +02:00
hwware
b92d9a895f fix spelling in acl.c 2020-04-15 16:03:16 +02:00
antirez
8161a7a3ef RDB: clarify a condition in rdbLoadRio(). 2020-04-15 16:03:16 +02:00
antirez
8f896e57ae Fix zsetAdd() top comment spelling. 2020-04-15 16:03:16 +02:00
antirez
61b153073f RDB: load files faster avoiding useless free+realloc.
Reloading of the RDB generated by

    DEBUG POPULATE 5000000
    SAVE

is now 25% faster.

This commit also prepares the ability to have more flexibility when
loading stuff from the RDB, since we no longer use dbAdd() but can
control exactly how things are added in the database.
2020-04-15 16:03:16 +02:00