6e07fac405
RM_Log - add support for logging without a context or context without module
...
for instance detached thread safe contexts, or various callbacks that don't
provide a context.
2019-07-17 15:08:18 +03:00
677e95e2f5
Merge pull request #6161 from swilly22/redismodule-loading-ctx-flag
...
Extend REDISMODULE_CTX_FLAGS to indicate if redis is loading
2019-07-07 17:01:29 +02:00
a714004738
Merge pull request #6022 from itamarhaber/RedisModule_ReplyWithCString
...
Adds RedisModule_ReplyWithCString
2019-07-05 20:25:18 +02:00
f54d95e803
Extend REDISMODULE_CTX_FLAGS to indicate if redis is currently loading from either RDB or AOF
2019-06-12 15:37:19 +03:00
9f3679880a
Preserve client->id for blocked clients.
2019-05-05 20:32:53 +03:00
52686f4866
Adds a "Modules" section to INFO
...
Fixes #6012 .
As long as "INFO is broken", this should be adequate IMO. Once we rework
`INFO`, perhaps into RESP3, this implementation should be revisited.
2019-04-16 22:16:12 +03:00
c184b32d4c
Uses addReplyBulkCString
...
Signed-off-by: Itamar Haber <itamar@redislabs.com >
2019-04-16 17:38:33 +03:00
26d9d4ec2c
Adds RedisModule_ReplyWithCString
...
Signed-off-by: Itamar Haber <itamar@redislabs.com >
2019-04-16 17:15:23 +03:00
d044e33c20
Merge pull request #5961 from yossigo/modules-tests
...
Modules tests
2019-04-11 07:56:23 -07:00
9e67691ffb
Aesthetic change to #5962 to conform to Redis style.
2019-04-10 18:53:35 +02:00
acba2fc9b4
slave corrupts replication stream when module blocked client uses large reply (or POSTPONED_ARRAY)
...
when redis appends the blocked client reply list to the real client, it didn't
bother to check if it is in fact the master client. so a slave executing that
module command will send replies to the master, causing the master to send the
slave error responses, which will mess up the replication offset
(slave will advance it's replication offset, and the master does not)
2019-03-24 14:17:37 +02:00
822a992f91
fix: missing initialization.
2019-03-24 12:00:33 +02:00
5e8caca036
Merge pull request #5944 from yossigo/command-filtering
...
Command Filtering API
2019-03-22 17:43:49 +01:00
6c0a5fde3d
CommandFilter API: REDISMODULE_CMDFILTER_NOSELF.
...
Add a flag to automatically protect filters from being called
recursively by their own module.
2019-03-21 19:53:12 +02:00
4ea3ed896b
CommandFilter API: fix UnregisterCommandFilter.
2019-03-21 19:45:41 +02:00
e2626f69ec
CommandFilter API: Add unregister option.
...
A filter handle is returned and can be used to unregister a filter. In
the future it can also be used to further configure or manipulate the
filter.
Filters are now automatically unregistered when a module unloads.
2019-03-21 14:44:49 +02:00
dd8b4be46b
CommandFilter API: Extend documentation.
2019-03-19 19:48:47 +02:00
325fc1cb2e
CommandFilter API: Support Lua and RM_call() flows.
2019-03-18 23:06:38 +02:00
2a5aeef79f
CommandFilter API: More cleanup.
2019-03-18 23:05:52 +02:00
6711132083
Add command filtering argument handling API.
2019-03-18 18:36:46 +02:00
c3e187190b
Initial command filter experiment.
2019-03-18 13:50:34 +02:00
a88264d934
Add RedisModule_GetKeyNameFromIO().
2019-03-15 10:23:27 +02:00
68fd59056b
Add RedisModule_Assert() API call.
2019-03-14 15:00:31 +02:00
d292a51618
Improve comments after merging #5834 .
2019-03-14 12:47:36 +01:00
0cce98f2f9
Merge pull request #5834 from guybe7/trim_module_sds
...
Trim SDS free space of retained module strings
2019-03-14 12:41:31 +01:00
01ace0b240
Merge pull request #5694 from guybe7/rm_log_args
...
Check server.verbosity in RM_LogRaw
2019-03-14 11:32:03 +01:00
6fd4af1f12
Merge branch 'sharedapi' into unstable
2019-03-14 11:24:48 +01:00
283d6cfd58
Addition of OnUnload function
2019-03-13 16:31:24 +00:00
89bf4db4fa
document additional flag of RM_GetContextFlags
2019-03-13 08:22:40 +02:00
468860ae18
Extend REDISMODULE_CTX_FLAGS to indicate if command was sent by master
2019-03-11 10:02:19 +02:00
bdd9a8002a
Trim SDS free space of retained module strings
...
In some cases processMultibulkBuffer uses sdsMakeRoomFor to
expand the querybuf, but later in some cases it uses that query
buffer as is for an argv element (see "Optimization"), which means
that the sds in argv may have a lot of wasted space, and then in case
modules keep that argv RedisString inside their data structure, this
space waste will remain for long (until restarted from rdb).
2019-02-12 14:21:21 +01:00
1769c22248
ACL: set modules help clients to the root user.
...
It does not make much sense to limit what modules can do: the admin
should instead limit what module commnads an user may call. So
RedisModule_Call() and other module operations should be able to execute
everything they want: the limitation should be posed by the API exported
by the module itself.
2019-02-01 11:37:28 +01:00
b6372f16c4
ACL: assign ACL command ID to modules commands.
2019-02-01 08:17:24 +01:00
709a6612eb
RESP3: addReplyString() -> addReplyProto().
...
The function naming was totally nuts. Let's fix it as we break PRs
anyway with RESP3 refactoring and changes.
2019-01-09 17:00:30 +01:00
4f0860cbfd
RESP3: initial implementation of the HELLO command.
2019-01-09 17:00:29 +01:00
baf5b3f93a
RESP3: module.c updated.
2019-01-09 17:00:29 +01:00
8a87de130f
Modules shared API: export new core APIs.
2018-12-20 17:57:49 +01:00
d3eb0028e9
Modules shared API: also unregister the module as user.
2018-12-20 17:57:46 +01:00
9403b3d7a3
Modules shared API: prevent unloading of used modules.
2018-12-20 17:57:43 +01:00
6bb8cdaebe
Modules shared API: unregister APIs function.
2018-12-20 17:57:40 +01:00
27f6e9bb9b
Modules shared API: initial core functions.
...
Based on ideas and code in PR #5560 by @MeirShpilraien.
2018-12-20 17:57:35 +01:00
850b64c116
Revert shared APIs to modify the design.
2018-12-20 17:56:38 +01:00
ab37289fa6
added module ability to register api to be used by other modules
2018-12-20 17:55:18 +01:00
ed88f77d6d
Check server.verbosity in RM_LogRaw
2018-12-13 13:57:38 +01:00
87264235cc
fix timer context selected database
2018-10-04 17:02:10 +03:30
86fb7b20bf
fix dict get on not found
2018-10-01 13:57:25 +03:30
0aecb135c9
Modules: Modules: dictionary API WIP #13 : Compare API exported.
2018-09-27 11:46:22 +02:00
80bde9844b
Modules: Modules: dictionary API WIP #12 : DictCompare API.
2018-09-27 11:44:25 +02:00
7af83a0c11
Modules: Modules: dictionary API WIP #11 : DictCompareC API.
2018-09-27 11:44:16 +02:00
1e585d01de
Modules: dictionary API WIP #10 : export API to modules.
2018-09-26 13:39:01 +02:00