Guy Benoish
d9f508d527
Modules: Fix blocked-client-related memory leak
...
If a blocked module client times-out (or disconnects, unblocked
by CLIENT command, etc.) we need to call moduleUnblockClient
in order to free memory allocated by the module sub-system
and blocked-client private data
Other changes:
Made blockedonkeys.tcl tests a bit more aggressive in order
to smoke-out potential memory leaks
2020-02-04 10:23:48 +01:00
WuYunlong
7d63a7d128
Add tcl regression test in scripting.tcl to reproduce memory leak.
2020-02-04 10:23:48 +01:00
Yossi Gottlieb
a27a4b82f4
TLS: Fix missing initialization in redis-cli.
2020-02-04 10:23:48 +01:00
Oran Agra
2ffb9a3682
fix uninitialized info_cb var in module.c
2020-02-04 10:23:48 +01:00
Salvatore Sanfilippo
32e2e7770a
Merge pull request #6818 from leomurillo/zskiplistLevels
...
Set ZSKIPLIST_MAXLEVEL to 32
2020-02-04 10:20:56 +01:00
Salvatore Sanfilippo
2659773a0b
Merge pull request #6825 from trevor211/fixMemoryLeakAboutLuaScript
...
Fix memory leak about lua script
2020-02-04 10:19:16 +01:00
WuYunlong
85bc26f8da
Fix lua related memory leak.
2020-02-04 16:38:46 +08:00
WuYunlong
c0c29adce9
Add tcl regression test in scripting.tcl to reproduce memory leak.
2020-02-04 16:34:11 +08:00
John Sully
6bb1429a46
module fixes
...
Former-commit-id: ef4e11ecb8a6f1a05bb21f014120b0ef9e771b60
2020-02-04 01:22:25 -05:00
John Sully
771787273a
Fix cluster test failures from Redis 6 merge
...
Former-commit-id: fd702e43f19ac2b8097afef84a73c8e71172979b
2020-02-03 20:00:09 -05:00
Salvatore Sanfilippo
a0781a2ce8
Merge pull request #6808 from yossigo/fix/redis-cli-openssl-1.0.x
...
TLS: Fix missing initialization in redis-cli.
2020-02-03 16:43:56 +01:00
Salvatore Sanfilippo
bac311851e
Merge pull request #6824 from oranagra/fix_module_c_uninit_var
...
fix uninitialized info_cb var in module.c
2020-02-03 15:46:13 +01:00
Oran Agra
f5d37082ca
fix uninitialized info_cb var in module.c
2020-02-03 16:35:39 +02:00
Guy Benoish
2492bdc90b
Exclude "keymiss" notification from NOTIFY_ALL
...
Because "keymiss" is "special" compared to the rest of
the notifications (Trying not to break existing apps
using the 'A' format for notifications)
Also updated redis.conf and module.c docs
2020-02-03 15:43:44 +05:30
Leo Murillo
0ab1604c0c
Set ZSKIPLIST_MAXLEVEL to optimal value given 2^64 elements and p=0.25
2020-02-02 02:48:00 -06:00
John Sully
ae0a3e9f65
addRef memory model too restrictive
...
Former-commit-id: 249e0fdd363853ab7b489314002bdacd2438fa55
2020-02-01 21:52:17 -05:00
John Sully
8ea5d731ad
RDB memory leaks
...
Former-commit-id: 6208118b133c7f4209fd0a55d2a75341407e3e2c
2020-01-30 17:57:10 -05:00
John Sully
24c9edd93b
replication memory leaks
...
Former-commit-id: 73020b6a939f241ade7512d58a4ddf17f5a803c5
2020-01-30 17:56:24 -05:00
John Sully
1cfc7071f5
Fix memory leak in cron
...
Former-commit-id: a9667e84ad44a3f2c08df0d95caeb6364f3f3509
2020-01-30 17:55:48 -05:00
John Sully
8f9fc831a6
Merge branch 'redis_merge' into unstable
...
Former-commit-id: ab1524ff1a8290199bc5a88e2bd9623566866d6f
2020-01-30 16:05:40 -05:00
Salvatore Sanfilippo
541a667c77
Merge pull request #6812 from guybe7/str_convert_fix
...
ld2string should fail if string contains \0 in the middle
2020-01-30 17:51:04 +01:00
Guy Benoish
add0229c31
DEBUG OBJECT should pass keyname to module when loading
2020-01-30 19:15:12 +05:30
Guy Benoish
3fd717daee
ld2string should fail if string contains \0 in the middle
...
This bug affected RM_StringToLongDouble and HINCRBYFLOAT.
I added tests for both cases.
Main changes:
1. Fixed string2ld to fail if string contains \0 in the middle
2. Use string2ld in getLongDoubleFromObject - No point of
having duplicated code here
The two changes above broke RM_SaveLongDouble/RM_LoadLongDouble
because the long double string was saved with length+1 (An innocent
mistake, but it's actually a bug - The length passed to
RM_SaveLongDouble should not include the last \0).
2020-01-30 18:15:17 +05:30
antirez
8185f2b6ce
ACL LOG: implement a few basic tests.
2020-01-30 11:14:13 +01:00
antirez
bc168c91ec
ACL LOG: also log ACL errors in the scripting/MULTI ctx.
2020-01-30 10:50:32 +01:00
Yossi Gottlieb
a7420b2478
TLS: Fix missing initialization in redis-cli.
2020-01-29 21:40:02 +02:00
antirez
eef1489240
ACL LOG: implement LOG RESET.
2020-01-29 18:51:04 +01:00
antirez
5bcb4e6905
ACL LOG: group similar entries in a given time delta.
2020-01-29 18:40:32 +01:00
antirez
2ed300b786
Add more info in the unblockClientFromModule() function.
2020-01-29 12:47:50 +01:00
Salvatore Sanfilippo
d0bb1e572f
Merge pull request #6699 from guybe7/module_blocked_on_key_timeout_memleak
...
Modules: Fix blocked-client-related memory leak
2020-01-29 12:06:14 +01:00
John Sully
ae344960f1
CRON jobs were running half as often as required
...
Former-commit-id: 1069d0b4bf39818cbd72d0bcbd168769244cf18f
2020-01-28 21:40:40 -05:00
John Sully
1adc5e9832
More threading fixes from merge
...
Former-commit-id: 4a980f4ddbebe3f62703aa3de67c93cdffb6b4b8
2020-01-28 17:54:00 -05:00
antirez
f550dfca47
ACL LOG: actually emit entries.
2020-01-28 18:04:20 +01:00
antirez
99a5b98bf0
ACL LOG: implement ACL LOG subcommadn skeleton.
2020-01-28 17:30:50 +01:00
John Sully
d9c070408b
reenable multithreading after merge
...
Former-commit-id: 9fbb9a551e83ddfc66894fba688dae7c9c3c7ae1
2020-01-27 19:59:04 -05:00
John Sully
527aeda2db
cron reliability
...
Former-commit-id: c24a7c03c207d5e6ad95ef8958c0cfb118c1b593
2020-01-27 18:31:02 -05:00
John Sully
d57e98ac5e
fix expire test failures during overwrite
...
Former-commit-id: 5a8280d5772e5d185b8e4010b86f01752be5c9b5
2020-01-27 18:26:23 -05:00
John Sully
14188ef92d
Fix most tests (still some failures)
...
Former-commit-id: da83e841255487efe0e4b13d42b2dcc55a369838
2020-01-27 18:16:19 -05:00
antirez
800425a319
ACL LOG: data structures and initial functions.
2020-01-27 18:37:52 +01: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
qetu3790
72ed0b2b03
Merge pull request #1 from qetu3790/qetu3790-patch-1
...
Fix not used constant in lru_test_mode.
2020-01-23 17:30:35 +08:00
qetu3790
7bd9afe780
Fix not used constant in lru_test_mode.
...
LRU_CYCLE_PERIOD is defined,but not used.
2020-01-23 17:18:07 +08:00
John Sully
3be0eac7b6
Missing cron files
...
Former-commit-id: c983d57f739cc9b4b8271a6d069fad1b5a9d3dad
2020-01-21 19:51:16 -05:00
John Sully
1116b63a0e
Initial implementation of the CRON command
...
Former-commit-id: 3204a39ada15ec33ac7926dc8b8f0e1875b99acb
2020-01-21 19:50:28 -05:00
John Sully
5f3fde673b
Bump version
...
Former-commit-id: f4319c12803f27a93150178f8b61f10aea09ce01
2020-01-20 19:20:50 -05:00
srzhao
f6621280c9
Check OOM at script start to get stable lua OOM state.
...
Checking OOM by `getMaxMemoryState` inside script might get different result
with `freeMemoryIfNeededAndSafe` at script start, because lua stack and
arguments also consume memory.
This leads to memory `borderline` when memory grows near server.maxmemory:
- `freeMemoryIfNeededAndSafe` at script start detects no OOM, no memory freed
- `getMaxMemoryState` inside script detects OOM, script aborted
We solve this 'borderline' issue by saving OOM state at script start to get
stable lua OOM state.
related to issue #6565 and #5250 .
2020-01-20 21:34:05 +08:00
antirez
9a39a227ff
Document I/O threads in redis.conf.
2020-01-17 10:47:38 +01:00
antirez
dff5370c8b
Simplify #6379 changes.
2020-01-17 10:47:38 +01:00
antirez
87d059a745
Jump to right label on AOF parsing error.
...
Related to #6054 .
2020-01-17 10:47:38 +01:00
antirez
4048cf6125
Change error message for #6775 .
2020-01-17 10:47:38 +01:00