Salvatore Sanfilippo
7d10c95786
Merge pull request #6821 from guybe7/key_miss_notify
...
Exclude "keymiss" notification from NOTIFY_ALL
2020-02-06 10:43:05 +01:00
Salvatore Sanfilippo
4bf051d4d2
Merge pull request #6837 from oranagra/signal_modified_key_doc
...
update RM_SignalModifiedKey doc comment
2020-02-06 10:38:36 +01:00
Salvatore Sanfilippo
1056e09940
Merge pull request #6846 from oranagra/module_client_flags
...
Fix client flags to be int64 in module.c
2020-02-06 10:32:35 +01:00
Oran Agra
01eadbd6e1
moduleRDBLoadError, add key name, and use panic rather than exit
...
using panic rather than exit means you get s stack trace of the code
path that experianced the error, and possibly other info.
2020-02-06 09:37:04 +02:00
Oran Agra
4050c57139
Fix client flags to be int64 in module.c
...
currently there's no bug since the flags these functions handle are
always lower than 32bit, but still better fix the type to prevent future
bugs.
2020-02-06 09:33:20 +02:00
Oran Agra
13a7379024
update RM_SignalModifiedKey doc comment
2020-02-05 18:15:38 +02: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
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
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
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
Guy Benoish
fe65141135
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
2019-12-30 10:10:59 +05:30
Yossi Gottlieb
7ca3d5db5f
Add REDISMODULE_CTX_FLAGS_MULTI_DIRTY.
2019-12-23 19:43:51 +02:00
antirez
1d353f171b
Fix ip and missing mode in RM_GetClusterNodeInfo().
2019-12-20 12:29:02 +01:00
Salvatore Sanfilippo
95a43c2178
Merge pull request #6615 from soloestoy/wrap-also-propagate-as-multi
...
Wrap also propagate as multi
2019-12-19 09:24:52 +01:00
antirez
15e2c2b2f1
Modules: rewrite top function doc of AvoidReplicaTraffic().
2019-12-18 17:11:03 +01:00
Salvatore Sanfilippo
f9644f1903
Merge pull request #6497 from oranagra/avoid_replica_traffic
...
Add config and module API for AvoidReplicaTraffic
2019-12-18 17:06:05 +01:00
antirez
75687fcf17
Avoid changing setKey() API after #6679 fix.
2019-12-18 11:58:02 +01:00
zhaozhao.zz
746c23419f
add a new SET option KEEPTTL that doesn't remove expire time
2019-12-18 15:20:36 +08:00
Salvatore Sanfilippo
8912e70042
Merge pull request #5916 from madolson/dev-unstable-acl-module-pr
...
Add module APIs for custom authentication
2019-12-17 09:58:26 +01:00
Madelyn Olson
1ce271b9b4
Split error message so dependandent callers give a useful result
2019-12-16 23:34:37 -08:00
Madelyn Olson
35aed09f95
Added better exception handling around scripting and module
2019-12-16 23:33:53 -08:00
Madelyn Olson
783831bb10
Tweaking the documentation
2019-12-17 07:28:55 +00:00
Madelyn Olson
05b7628687
Add module APIs for custom authentication
2019-12-17 06:59:59 +00:00
antirez
caba0f876e
Merge branch 'unstable' of github.com:/antirez/redis into unstable
2019-12-16 11:18:20 +01:00
antirez
c600118cfb
Modules: allow to execute RM_Call() from the module init function.
2019-12-13 17:34:37 +01:00
Yossi Gottlieb
937a32d84c
Improve RM_ModuleTypeReplaceValue() API.
...
With the previous API, a NULL return value was ambiguous and could
represent either an old value of NULL or an error condition. The new API
returns a status code and allows the old value to be returned
by-reference.
This commit also includes test coverage based on
tests/modules/datatype.c which did not exist at the time of the original
commit.
2019-12-12 18:50:11 +02:00
antirez
22552a5794
Remove useless space from moduleLoad().
2019-12-12 09:29:10 +01:00
Salvatore Sanfilippo
f1f0548419
Merge branch 'unstable' into ModuleSecurity
2019-12-12 09:27:14 +01:00
Oran Agra
f4a1d066a6
Add module API for AvoidReplicaTraffic
...
This is useful to tell redis and modules to try to avoid doing things that may
increment the replication offset, and should be used when draining a master
and waiting for replicas to be in perfect sync before a failover.
2019-12-12 08:38:09 +02:00
Salvatore Sanfilippo
1ed8bda113
Merge pull request #6656 from oranagra/leak_rm_load_from_str
...
fix leak in RM_LoadDataTypeFromString, and save
2019-12-11 11:39:27 +01:00
Oran Agra
4e1326940c
fix leak in RM_LoadDataTypeFromString, and save
2019-12-11 12:35:00 +02:00
antirez
e65c6772fc
Modules: more clarification about disconnection callback.
2019-12-09 12:15:38 +01:00
antirez
d4c5516650
Modules: clarify when the disconnection callback is called.
2019-12-05 10:38:18 +01:00
antirez
c57ba6d6b4
Modules: create timers in contexts without a client.
2019-12-03 16:21:23 +01:00
zhaozhao.zz
bb0183a3bf
Propagation: flag module client as CLIENT_MULTI if needed
...
in case of nested MULTI/EXEC
2019-11-22 16:20:30 +08:00
zhaozhao.zz
b512cb40b8
Propagation: wrap commands in also_propagate array with MULIT/EXEC
...
Random command like SPOP with count is replicated as
some SREM operations, and store them in also_propagate
array to propagate after the call, but this would break
atomicity.
To keep the command's atomicity, wrap also_propagate
array with MULTI/EXEC.
2019-11-22 15:42:49 +08:00
Salvatore Sanfilippo
22c68cc3bf
Merge branch 'unstable' into rm_get_server_info
2019-11-21 10:06:15 +01:00
Salvatore Sanfilippo
a62e00420c
Merge pull request #6547 from guybe7/module_api_streams
...
Support streams in general module API functions
2019-11-21 10:03:50 +01:00
antirez
d97625dcf6
Recomment PR #6346 .
2019-11-21 10:01:49 +01:00
Salvatore Sanfilippo
e50df1216d
Merge branch 'unstable' into expose_zmalloc_capabilities
2019-11-21 09:57:19 +01:00
Salvatore Sanfilippo
bf67482a88
Merge branch 'unstable' into module-long-double
2019-11-19 12:15:45 +01:00
Salvatore Sanfilippo
cdae22b9b2
Merge pull request #6557 from oranagra/rm_lru_lfu_revized
...
rename RN_SetLRUOrLFU -> RM_SetLRU and RN_SetLFU
2019-11-19 11:58:07 +01:00
Salvatore Sanfilippo
9d7315b5a7
Merge pull request #6597 from yossigo/rm-call-extended-errors
...
Improve RM_Call() errno classification.
2019-11-19 11:41:32 +01:00
Yossi Gottlieb
3d4a44bd0b
Improve RM_Call() errno classification.
...
RM_Call() will now use EBADF and ENONET in addition to EINVAL in order
to provide more information about errors (i.e. when return value is
NULL).
2019-11-19 12:10:48 +02:00
Salvatore Sanfilippo
ed51330a12
Merge branch 'unstable' into scan_module_impl
2019-11-19 11:08:02 +01:00
Salvatore Sanfilippo
5ac93593c1
Merge pull request #6577 from oranagra/module_doc
...
module docs, missing LOADING flag
2019-11-19 11:02:58 +01:00
Salvatore Sanfilippo
55f744b694
Merge pull request #4076 from yossigo/add_mt_replacevalue
...
Add RM_ModuleTypeReplaceValue.
2019-11-19 11:00:01 +01:00
Salvatore Sanfilippo
36460f5680
Merge pull request #3383 from yossigo/datatype_load_save
...
Redis Module API calls to allow re-use of data type RDB save/load.
2019-11-19 10:55:42 +01:00