9076 Commits

Author SHA1 Message Date
Guy Benoish
5a6cfbf4ca Some refactroing using getClientType instead of CLIENT_SLAVE 2020-02-12 14:15:56 +01:00
Guy Benoish
fae306b374 Fix small bugs related to replica and monitor ambiguity
1. server.repl_no_slaves_since can be set when a MONITOR client disconnects
2. c->repl_ack_time can be set by a newline from a MONITOR client
3. Improved comments
2020-02-12 14:15:56 +01:00
Oran Agra
488e194787 config.c verbose error replies for CONFIG SET, like config file parsing
We noticed that the error replies for the generic mechanism for enums
are very verbose for config file parsing, but not for config set
command.

instead of replicating this code, i did a small refactoring to share
code between CONFIG SET and config file parsing.

and also renamed the enum group functions to be consistent with the
naming of other types.
2020-02-12 14:15:56 +01:00
Oran Agra
c82ccf0670 memoryGetKeys helper function so that ACL can limit access to keys for MEMORY command 2020-02-12 14:15:56 +01:00
antirez
51c1a9f8fb ACL LOG: make max log entries configurable. 2020-02-12 14:15:35 +01:00
antirez
7379c78a9b ACL LOG: log failed auth attempts. 2020-02-12 14:15:35 +01:00
antirez
82790e510f ACL LOG: also log ACL errors in the scripting/MULTI ctx. 2020-02-12 14:15:35 +01:00
antirez
943008ebac ACL LOG: implement LOG RESET. 2020-02-12 14:15:35 +01:00
antirez
e271a61103 ACL LOG: group similar entries in a given time delta. 2020-02-12 14:15:35 +01:00
antirez
f1974d5d67 ACL LOG: actually emit entries. 2020-02-12 14:15:35 +01:00
antirez
d9b153c9f6 ACL LOG: implement ACL LOG subcommadn skeleton. 2020-02-12 14:15:35 +01:00
antirez
577fc4388b ACL LOG: data structures and initial functions. 2020-02-12 14:15:35 +01:00
John Sully
2af2e5c730 Merge branch 'redis_6_merge' into keydbpro
Former-commit-id: 4bd4159e2d8a7cdd0af9719776dca3e7d161d166
2020-02-11 03:48:24 -05:00
John Sully
d1885547f2 Merge branch 'unstable' into redis_6_merge
Former-commit-id: 329519d4aa230a9f7f2d3b82158f8cafcbbd6952
2020-02-11 03:48:08 -05:00
John Sully
da293758fc Fix race condition in allocating connections to threads
Former-commit-id: 52434a583aa7114ff5658226441ab82ed3110a57
2020-02-11 03:44:28 -05:00
John Sully
a52e7fa2af Merge branch 'redis_6_merge' into keydbpro
Former-commit-id: 4091800e499cade8bc188c9e6f52f535c500f282
2020-02-11 02:54:24 -05:00
John Sully
ee99605def Merge branch 'unstable' into redis_6_merge
Former-commit-id: 18a5f46b6138e8a975dda0ed4897d19eed756d24
2020-02-11 02:39:08 -05:00
John Sully
e30630d53b Implement an error handler so bug #125 can't happen
Former-commit-id: 16a019dba053fd0654116ff98a2ad0b66a9ed4e6
2020-02-11 01:41:00 -05:00
John Sully
3282d4114f Fix higher latency at low load by grouping clients to threads. This fixes slow perf in cluster benchmarks mentioned in issue #102
Former-commit-id: 1a4c3224c9848f02fbdb49674045b593cfc41d31
2020-02-11 01:00:21 -05:00
John Sully
47acc74247 Fix cases where duplicate RREPLAY is applied
Former-commit-id: c3317686f8b8d94a3b2295def899ae30e208f327
2020-02-11 00:59:07 -05:00
John Sully
3f62860342 Fix issue #119
Former-commit-id: 46224721237616c345f6726b721a354d7bda71df
2020-02-10 19:52:57 -05:00
John Sully
5a71721610 Fix memory leak in cron
Former-commit-id: f1748f8c7611ad96d7ba4fed66439cd1f043e6f3
2020-02-10 18:26:04 -05:00
John Sully
66925e9a54 CLANG build fix
Former-commit-id: dc78bf1ccbd3dfd2de582d2a0d0be3223de3c7c3
2020-02-10 00:29:26 -05:00
John Sully
9cd3b8253d Ensure multi-master works for ring topologies
Former-commit-id: a7cc3aac28ccec4dadb80aa2cc7279c53982bc28
2020-02-10 00:25:03 -05:00
John Sully
1a3285ff17 Merge branch 'unstable' into keydbpro
Former-commit-id: fec8209c1996112976d927d65dbc2b4492131681
2020-02-07 16:46:13 -05:00
John Sully
70cb1df72a merge 5.0 unstable
Former-commit-id: c45f1328ac82fa9ebc8731314b40bd059ea45b6f
2020-02-07 16:45:59 -05:00
John Sully
a5a736be73 Fix issue #137 and #132
Former-commit-id: 050d58007f84e4f71b0ae8b053ae4d6fd5bb4ec7
2020-02-06 23:31:31 -05:00
John Sully
a21c81c30e Add test to detect issue #137 and #132
Former-commit-id: 49d86746edef497a568c6f3a64695d420305cca8
2020-02-06 23:31:12 -05:00
Guy Benoish
6fe55c2f29 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-02-04 10:23:48 +01:00
Leo Murillo
f7a94526dd Set ZSKIPLIST_MAXLEVEL to optimal value given 2^64 elements and p=0.25 2020-02-04 10:23:48 +01:00
antirez
bbce3ba974 Add more info in the unblockClientFromModule() function. 2020-02-04 10:23:48 +01:00
WuYunlong
eecfa9793e Fix lua related memory leak. 2020-02-04 10:23:48 +01:00
Guy Benoish
40295fb3fe 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
Yossi Gottlieb
29d4a1502a TLS: Fix missing initialization in redis-cli. 2020-02-04 10:23:48 +01:00
Oran Agra
ec0c61da05 fix uninitialized info_cb var in module.c 2020-02-04 10:23:48 +01:00
John Sully
46506b3e53 module fixes
Former-commit-id: ef4e11ecb8a6f1a05bb21f014120b0ef9e771b60
2020-02-04 01:22:25 -05:00
John Sully
0a07ce9d6d rename to pro binary
Former-commit-id: a8854bfd83de72d6aa418ee6d9b44fae1f622787
2020-02-04 00:30:13 -05:00
John Sully
2bf1648e04 Bump version
Former-commit-id: ac84153f61b213d42ad503ac38948f9740a5f923
2020-02-03 20:01:53 -05:00
John Sully
dcfd0472ed Merge branch 'unstable' into keydbpro
Former-commit-id: 0db79c793e30ab268cb0f771928468e477e3b8da
2020-02-03 20:00:16 -05:00
John Sully
c2eb10c322 Fix cluster test failures from Redis 6 merge
Former-commit-id: fd702e43f19ac2b8097afef84a73c8e71172979b
2020-02-03 20:00:09 -05:00
John Sully
2ee97b5bb5 Fix failure to save RDB on shutdown
Former-commit-id: 1a8331c88a17deaa5faf34c7ea65957c57530546
2020-02-03 16:00:01 -05:00
John Sully
9e4233207e Optimize bgsave snapshotting
Former-commit-id: 15b4bf003537fe6fd926146f46d38203683846be
2020-02-02 23:42:44 -05:00
John Sully
0ac4c6b5ec 3 fixes, 0 array access on boot, getAsync is useless on single theaded, and don't print COW info for BG thread work since it will be inaccurate
Former-commit-id: 09362ff44afed8525816437aead84f215eb59c36
2020-02-02 23:30:42 -05:00
John Sully
70994b5a07 RDB thread cleanup fixes
Former-commit-id: 3e30cf6de930c40c3a1c63a761b2018836d4ae52
2020-02-02 23:29:20 -05:00
John Sully
a532e49dc2 Handle case where src dict is larger in dictMerge
Former-commit-id: c750fdb381f5dd3e92d251a82bd86533eb2cadf5
2020-02-02 23:27:25 -05:00
John Sully
d8dcb94e37 endSnapshotAsync implementation (fails tests w/ multithreading)
Former-commit-id: b401e9fcae40cf1d4e4c1584f57e760d9adf36a9
2020-02-01 22:28:24 -05:00
John Sully
a223fb7bed Merge branch 'unstable' into keydbpro
Former-commit-id: 53b36801cede2dbebbf33ec665af69f810b438d5
2020-02-01 21:52:26 -05:00
John Sully
2c899d7219 addRef memory model too restrictive
Former-commit-id: 249e0fdd363853ab7b489314002bdacd2438fa55
2020-02-01 21:52:17 -05:00
John Sully
2bc0075623 use dictMerge() in endSnapshot for speed and cleaner code
Former-commit-id: ed8e10234e4499506f2557b0858dba86c30c9dc0
2020-02-01 21:08:26 -05:00
John Sully
8755f8b115 Allow rehashing if RDB thread is active, it doesn't suffer from COW madness
Former-commit-id: 2f1f2eaa9d160701f45eed52fc7903fcccd7656b
2020-02-01 20:28:17 -05:00