403 Commits

Author SHA1 Message Date
antirez
aa9b870db3 Modules hooks: event firing logic. 2019-10-23 18:39:53 +02:00
antirez
e9f6e9306b Modules: refactoring of RM_GetClientInfoById(). 2019-10-23 18:39:53 +02:00
antirez
482cf667aa Modules: fix RedisModule_GetClientInfoById() example. 2019-10-23 18:39:53 +02:00
antirez
16af0381d5 Modules: export GetClientInfoById(). 2019-10-23 18:39:53 +02:00
antirez
23ec02d161 Modules: add the client ID to the client info structure. 2019-10-23 18:39:53 +02:00
antirez
35c8b8969e Modules: RM_GetClientInfoById() draft. 2019-10-23 18:39:53 +02:00
antirez
1f1d25b5a9 Modules hooks: a first version of events and some API. 2019-10-23 18:39:53 +02:00
antirez
7333e5c5a8 Modules hooks: initial design of data structures. 2019-10-23 18:39:53 +02:00
antirez
58a0ef3020 Modules: fix moduleCreateArgvFromUserFormat() casting bug.
In 32 bit systems casting to "long" will cut the result to 32 bit.
2019-10-23 18:39:14 +02:00
antirez
7414be69c8 module: fix propagation API bug. 2019-10-17 18:28:34 +02:00
antirez
ea85cda320 Modules: allow to check for AOF loading client. 2019-10-17 18:10:50 +02:00
antirez
34961ddee8 Modules: add new flags to context, replica state + more. 2019-10-17 17:49:33 +02:00
Yossi Gottlieb
85d7f38136 Merge remote-tracking branch 'upstream/unstable' into tls 2019-10-16 17:08:07 +03:00
Salvatore Sanfilippo
d3bfd0ed88 Merge pull request #5926 from JimB123/unstable
Addition of RedisModule_OnUnload hook
2019-10-16 11:13:12 +02:00
Yossi Gottlieb
10ffeb03e4 TLS: Connections refactoring and TLS support.
* Introduce a connection abstraction layer for all socket operations and
integrate it across the code base.
* Provide an optional TLS connections implementation based on OpenSSL.
* Pull a newer version of hiredis with TLS support.
* Tests, redis-cli updates for TLS support.
2019-10-07 21:06:13 +03:00
antirez
124493582b Modules: RM_Call(): give pointer to documentation. 2019-10-04 11:46:53 +02:00
antirez
9f2a31368c Modules: RM_Call/Replicate() ability to exclude AOF/replicas. 2019-10-04 11:44:53 +02:00
antirez
414f633962 Modules: RM_Replicate() in thread safe contexts. 2019-10-03 11:03:46 +02:00
antirez
67cdd03efa Modules: implement RM_Replicate() from async callbacks. 2019-10-03 10:56:37 +02:00
antirez
5526c0b9cb Modules: handle propagation when ctx is freed. Flag modules commands ctx. 2019-10-02 18:33:40 +02:00
Oran Agra
3556b6109c Use sdscatfmt instead of sdscatprintf in module info
sdscatfmt is faster
2019-09-30 21:13:13 +03:00
Oran Agra
bd49c4679b Merge remote-tracking branch 'antirez/unstable' into modules_info 2019-09-30 20:47:35 +03:00
antirez
0660ff3696 Change a bit the style of #6385. 2019-09-30 10:58:15 +02:00
Salvatore Sanfilippo
d69ff13992 Merge pull request #6385 from filipecosta90/perf-reply-ss-error
Improve performance of RM_ReplyWithSimpleString and RM_ReplyWi…
2019-09-30 10:57:05 +02:00
antirez
9ec77b6a7a moduleRDBLoadError(): io->ctx may be NULL.
The correct way to access the module about a given IO context is to
deference io->type->module, since io->ctx is only populated if the user
requests an explicit context from an IO object.
2019-09-27 18:42:38 +02:00
antirez
bd0ddcdc3b Fix memory leak in moduleLoadFromQueue(). 2019-09-27 18:33:21 +02:00
antirez
795d1029b4 Fix memory leak in RM_UnregisterCommandFilter(). 2019-09-27 18:33:05 +02:00
antirez
48aae0d0db TerminateModuleForkChild(): fix function prototype. 2019-09-27 12:23:07 +02:00
antirez
7aaedf9192 TerminateModuleForkChild(): move safety checks there.
We don't want that the API could be used directly in an unsafe way,
without checking if there is an active child. Now the safety checks are
moved directly in the function performing the operations.
2019-09-27 12:17:47 +02:00
antirez
1ef0c2f630 Function renamed hasForkChild() -> hasActiveChildProcess(). 2019-09-27 12:03:09 +02:00
antirez
eba38bc3a9 TerminateModuleForkChild(): use wait4 for safety.
In theory currently there is only one active child, but the API may
change or for bugs in the implementation we may have several (it was
like that for years because of a bug). Better to wait for a specific
pid and avoid consuing other pending children information.
2019-09-27 11:59:58 +02:00
antirez
e885d74018 Modules fork: improve SIGUSR1 handling, fix include.
We can't expect SIGUSR1 to have any specific value range, so let's
define an exit code that we can handle in a special way.
This also fixes an #include <wait.h> that is not standard.
2019-09-27 11:39:45 +02:00
Salvatore Sanfilippo
5c5761bcd6 Merge branch 'unstable' into modules_fork 2019-09-27 11:24:06 +02:00
antirez
cf2dc07791 INFO: more info about loaded modules.
Related to #6024.
2019-09-26 12:18:55 +02:00
Salvatore Sanfilippo
4d5fc6b46d Merge pull request #6024 from itamarhaber/info_modules
Adds a "Modules" section to `INFO`
2019-09-26 11:58:52 +02:00
Salvatore Sanfilippo
f11b71b9b8 Merge pull request #6235 from oranagra/module_rdb_load_errors
Allow modules to handle RDB loading errors.
2019-09-26 11:52:42 +02:00
Salvatore Sanfilippo
838fd190ca Merge pull request #4980 from yossigo/rm-assert
Add RedisModule_Assert() API call.
2019-09-26 11:39:29 +02:00
filipecosta90
02ddcc0c78 [fix] fixed the un-refactor bug. 2019-09-25 17:28:42 +01:00
filipecosta90
26452e0d85 [fix] un-refactor the code. [perf] replyWithStatus now makes usage of addReplyProto 2019-09-23 23:45:31 +01:00
filipecosta90
6184d97323 [add] improved performance of RM_ReplyWithSimpleString and RM_ReplyWithError by making usage addReplyProto instead of addReplySds 2019-09-15 21:16:30 +01:00
Doug Nelson
f701f7c007 Typo fixes in API documentation 2019-09-05 16:25:06 +01:00
Oran Agra
8bf7c6d789 Modlue fork is killed when the parent exists 2019-08-25 10:11:48 +03:00
Oran Agra
8319ffb34d Module INFO, support default section for simple modules 2019-08-18 10:01:57 +03:00
Oran Agra
d4c24a3067 Module INFO, add support for dict fields, rename API to have common prefix 2019-08-18 09:41:45 +03:00
Oran Agra
5973b475cb RM_ReplyWithCString was missing registration 2019-08-07 13:06:11 +03:00
Oran Agra
7d18a61559 Merge remote-tracking branch 'oss/unstable' into module_rdb_load_errors 2019-07-30 15:14:08 +03:00
Oran Agra
9fa285523c Avoid diskelss-load if modules did not declare they handle read errors 2019-07-30 15:11:57 +03:00
Salvatore Sanfilippo
8e2a99eb4b Merge pull request #6264 from oranagra/modules_api_aux_rdb
Implement module api for aux data in rdb
2019-07-30 11:50:44 +02:00
Oran Agra
b2fce80695 Extend modules API to allow modules report to redis INFO
this implements #6012
2019-07-24 12:58:15 +03:00
Oran Agra
ff0780e8e6 Implement module api for aux data in rdb
Other changes:
* fix memory leak in error handling of rdb loading of type OBJ_MODULE
2019-07-22 21:15:33 +03:00