20927 Commits

Author SHA1 Message Date
Yossi Gottlieb
d2b53f6d1e Fix FreeBSD <12.x builds. (#8603) 2021-03-07 14:14:23 +02:00
Yossi Gottlieb
e8e6ca6309
Fix FreeBSD <12.x builds. (#8603) 2021-03-07 14:14:23 +02:00
Huang Zhw
a3db5fd855 Remove some dead code (#8605) 2021-03-05 09:54:34 -08:00
Huang Zhw
367ba4125f
Remove some dead code (#8605) 2021-03-05 09:54:34 -08:00
yanchaozhong
11e3eaa233 Fix typo in sentinel.c (#8600) 2021-03-05 09:32:11 -08:00
yanchaozhong
3d9c6a7ce6
Fix typo in sentinel.c (#8600) 2021-03-05 09:32:11 -08:00
uriyage
b6e4761af9 remove unused latency variable (#8597)
Remove unused latency variable from redis-cli
2021-03-05 09:29:52 -08:00
uriyage
55c74617d7
remove unused latency variable (#8597)
Remove unused latency variable from redis-cli
2021-03-05 09:29:52 -08:00
John Sully
50060b4a13 Fix crash saving an RDB
Former-commit-id: 51c35f03a84f7ada0f150a1c3992df574ab89b95
2021-03-05 00:54:11 +00:00
John Sully
7efaf33a78 Fix crash saving an RDB
Former-commit-id: 51c35f03a84f7ada0f150a1c3992df574ab89b95
2021-03-05 00:54:11 +00:00
Yossi Gottlieb
ed23d94107 Improve redis-cli non-binary safe string handling. (#8566)
* The `redis-cli --scan` output should honor output mode (set explicitly or implicitly), and quote key names when not in raw mode.
  * Technically this is a breaking change, but it should be very minor since raw mode is by default on for non-tty output.
  * It should only affect  TTY output (human users) or non-tty output if `--no-raw` is specified.

* Added `--quoted-input` option to treat all arguments as potentially quoted strings.
* Added `--quoted-pattern` option to accept a potentially quoted pattern.

Unquoting is applied to potentially quoted input only if single or double quotes are used. 

Fixes #8561, #8563
2021-03-04 15:03:49 +02:00
Yossi Gottlieb
3c7d6a1853
Improve redis-cli non-binary safe string handling. (#8566)
* The `redis-cli --scan` output should honor output mode (set explicitly or implicitly), and quote key names when not in raw mode.
  * Technically this is a breaking change, but it should be very minor since raw mode is by default on for non-tty output.
  * It should only affect  TTY output (human users) or non-tty output if `--no-raw` is specified.

* Added `--quoted-input` option to treat all arguments as potentially quoted strings.
* Added `--quoted-pattern` option to accept a potentially quoted pattern.

Unquoting is applied to potentially quoted input only if single or double quotes are used. 

Fixes #8561, #8563
2021-03-04 15:03:49 +02:00
sundb
141c6e1716 Fix memory overlap in quicklistRotate (#8599)
When the length of the quicklist is 1(only one zipmap), the rotate operation will cause
memory overlap when moving an entity from the tail of the zipmap to the head.
quicklistRotate is a dead code, so it has no impact on the existing code.
2021-03-04 13:12:00 +02:00
sundb
f07b7393a0
Fix memory overlap in quicklistRotate (#8599)
When the length of the quicklist is 1(only one zipmap), the rotate operation will cause
memory overlap when moving an entity from the tail of the zipmap to the head.
quicklistRotate is a dead code, so it has no impact on the existing code.
2021-03-04 13:12:00 +02:00
YaacovHazan
ead6f01882 Fix RedisModule_IsAOFClient Redis Module API (#8596)
Since the API declared (as #define) in redismodule.h and uses
the CLIENT_ID_AOF that declared in the server.h, when
a module will want to make use of this API, it will get a compilation
error (module doesn't include the server.h).

The API was broken by fd914fd (failed attempt for a cleanup).
Revert to the original version of RedisModule_IsAOFClient
that uses UINT64_MAX instead of CLIENT_ID_AOF
2021-03-04 13:02:23 +02:00
YaacovHazan
ac91822952
Fix RedisModule_IsAOFClient Redis Module API (#8596)
Since the API declared (as #define) in redismodule.h and uses
the CLIENT_ID_AOF that declared in the server.h, when
a module will want to make use of this API, it will get a compilation
error (module doesn't include the server.h).

The API was broken by d6eb3af (failed attempt for a cleanup).
Revert to the original version of RedisModule_IsAOFClient
that uses UINT64_MAX instead of CLIENT_ID_AOF
2021-03-04 13:02:23 +02:00
John Sully
902264efb7 Load perf fixes with a storage provider set
Former-commit-id: 861b19de00c75c9167cc25031292284ad1c21893
2021-03-04 07:41:06 +00:00
John Sully
1bf6ca0645 Load perf fixes with a storage provider set
Former-commit-id: 861b19de00c75c9167cc25031292284ad1c21893
2021-03-04 07:41:06 +00:00
John Sully
50ce24a10c Fix compile warnings
Former-commit-id: c314cab888e9c8b3e825b2dfe0c0392ee998bdc4
2021-03-03 22:12:51 +00:00
John Sully
269cbd5c25 Fix compile warnings
Former-commit-id: c314cab888e9c8b3e825b2dfe0c0392ee998bdc4
2021-03-03 22:12:51 +00:00
jsully
ba5b7a6da1 Merge branch 'time_thread_priority' into 'keydbpro'
time thread priority + nanosleep

See merge request keydb-dev/KeyDB-Pro!11

Former-commit-id: 423b76a2bbbd568f525f6469ce829ab053972536
2021-03-03 18:55:07 +00:00
jsully
0352f7c9cd Merge branch 'time_thread_priority' into 'keydbpro'
time thread priority + nanosleep

See merge request keydb-dev/KeyDB-Pro!11

Former-commit-id: 423b76a2bbbd568f525f6469ce829ab053972536
2021-03-03 18:55:07 +00:00
Yossi Gottlieb
31ebf191ba Improve SSL cleanup handling. (#8589)
This solves the problem of /dev/random and /dev/urandom open file
descriptors leaking to childs with some versions of OpenSSL.
2021-03-03 10:08:06 +02:00
Yossi Gottlieb
ea1b48bd12
Improve SSL cleanup handling. (#8589)
This solves the problem of /dev/random and /dev/urandom open file
descriptors leaking to childs with some versions of OpenSSL.
2021-03-03 10:08:06 +02:00
yoav-steinberg
667b36adac Fix client_recent_max_input/output_buffer in 'INFO CLIENTS' when all clients drop. (#8588)
When no connected clients variables stopped being updated instead of being zeroed over time.

The other changes are cleanup and optimization (avoiding an unnecessary division per client)
2021-03-03 09:36:27 +02:00
yoav-steinberg
fba391ae66
Fix client_recent_max_input/output_buffer in 'INFO CLIENTS' when all clients drop. (#8588)
When no connected clients variables stopped being updated instead of being zeroed over time.

The other changes are cleanup and optimization (avoiding an unnecessary division per client)
2021-03-03 09:36:27 +02:00
John Sully
08b9f21d71 Data loss issue due to async rehash interfering with snapshots
Former-commit-id: 5245ca9a67c74b34139cafc9754543d1b8bed90a
2021-03-03 07:06:19 +00:00
John Sully
e06cae3fe0 Data loss issue due to async rehash interfering with snapshots
Former-commit-id: 5245ca9a67c74b34139cafc9754543d1b8bed90a
2021-03-03 07:06:19 +00:00
John Sully
ea6ba8370d In low load async rehash may not complete in time, do it in the cron
Former-commit-id: 0a27d30753d887b6251e645abe26118068c55587
2021-03-03 07:05:51 +00:00
John Sully
9ea8843e14 In low load async rehash may not complete in time, do it in the cron
Former-commit-id: 0a27d30753d887b6251e645abe26118068c55587
2021-03-03 07:05:51 +00:00
John Sully
4066ce8f3a Don't let dictionaries shrink too rapidly. It can cause massive perf issues while in the shrink rehash
Former-commit-id: a7ad346e4f03c85d22a29c8268d35471e86283aa
2021-03-03 07:05:12 +00:00
John Sully
9e986e7a63 Don't let dictionaries shrink too rapidly. It can cause massive perf issues while in the shrink rehash
Former-commit-id: a7ad346e4f03c85d22a29c8268d35471e86283aa
2021-03-03 07:05:12 +00:00
Wen Hui
8264f8bdbd generalize error check for SENTINEL MONITOR rumtime config (#8590) 2021-03-03 08:36:08 +02:00
Wen Hui
257009afff
generalize error check for SENTINEL MONITOR rumtime config (#8590) 2021-03-03 08:36:08 +02:00
Yossi Gottlieb
fe76001425 Fix errors when loading RDB with missing modules. (#8579)
Fixes #8574
2021-03-02 09:39:37 +02:00
Yossi Gottlieb
0bad00d049
Fix errors when loading RDB with missing modules. (#8579)
Fixes #8574
2021-03-02 09:39:37 +02:00
John Sully
76698beeaf Drastically improve perf when loading an RDB with a storage provider
Former-commit-id: 0133b42d54676e8fac2c5cb006cc87988dced268
2021-03-02 04:16:20 +00:00
John Sully
20089d7256 Drastically improve perf when loading an RDB with a storage provider
Former-commit-id: 0133b42d54676e8fac2c5cb006cc87988dced268
2021-03-02 04:16:20 +00:00
John Sully
6065f276c4 Key prefetch error handling instead of crashign
Former-commit-id: b322a14efb1b897134b229c1726b45264b57783f
2021-03-02 01:38:12 +00:00
John Sully
52ee1687ff Key prefetch error handling instead of crashign
Former-commit-id: b322a14efb1b897134b229c1726b45264b57783f
2021-03-02 01:38:12 +00:00
VivekSainiEQ
d855afdcac Fixed bug where make USE_SYSTEMD=yes would not pass in correct flags, issue #226
Former-commit-id: 69dc0a06bfd34516c5c18a6e22985ef01a472339
2021-03-01 21:31:33 +00:00
VivekSainiEQ
57a38dca29 Fixed bug where make USE_SYSTEMD=yes would not pass in correct flags, issue #226
Former-commit-id: 69dc0a06bfd34516c5c18a6e22985ef01a472339
2021-03-01 21:31:33 +00:00
Oran Agra
003cff7b0a Redis 6.2.1 2021-03-01 21:02:05 +02:00
Oran Agra
7018ad69a2 Redis 6.2.1 2021-03-01 21:02:05 +02:00
Oran Agra
c83db6bf5a Merge unstable into 6.2 2021-03-01 20:54:02 +02:00
Oran Agra
46df4db87b Merge unstable into 6.2 2021-03-01 20:54:02 +02:00
Oran Agra
e978fc37ed fix stream deep sanitization with deleted records (#8568)
When sanitizing the stream listpack, we need to count the deleted records too.
otherwise the last line that checks the next pointer fails.

Add test to cover that state in the stream tests.
2021-03-01 17:23:29 +02:00
Oran Agra
349ef3f6a0
fix stream deep sanitization with deleted records (#8568)
When sanitizing the stream listpack, we need to count the deleted records too.
otherwise the last line that checks the next pointer fails.

Add test to cover that state in the stream tests.
2021-03-01 17:23:29 +02:00
YaacovHazan
c0de6fbd29 Make port, tls-port and bind configurations modifiable (#8510)
Add ability to modify port, tls-port and bind configurations by CONFIG SET command.

To simplify the code and make it cleaner, a new structure
added, socketFds, which contains the file descriptors array and its counter,
and used for TCP, TLS and Cluster sockets file descriptors.
2021-03-01 16:04:44 +02:00
YaacovHazan
a031d268b1
Make port, tls-port and bind configurations modifiable (#8510)
Add ability to modify port, tls-port and bind configurations by CONFIG SET command.

To simplify the code and make it cleaner, a new structure
added, socketFds, which contains the file descriptors array and its counter,
and used for TCP, TLS and Cluster sockets file descriptors.
2021-03-01 16:04:44 +02:00