Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
82004f9d
Commit
82004f9d
authored
Mar 30, 2018
by
antirez
Browse files
Modules Cluster API: fix new API calls exporting.
parent
b4dc782e
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/module.c
View file @
82004f9d
...
...
@@ -3850,6 +3850,8 @@ void moduleCallClusterReceivers(char *sender_id, uint64_t module_id, uint8_t typ
* is already a callback for this function, the callback is unregistered
* (so this API call is also used in order to delete the receiver). */
void
RM_RegisterClusterMessageReceiver
(
RedisModuleCtx
*
ctx
,
uint8_t
type
,
RedisModuleClusterMessageReceiver
callback
)
{
if
(
!
server
.
cluster_enabled
)
return
;
uint64_t
module_id
=
moduleTypeEncodeId
(
ctx
->
module
->
name
,
0
);
moduleClusterReceiver
*
r
=
clusterReceivers
[
type
],
*
prev
=
NULL
;
while
(
r
)
{
...
...
@@ -3892,6 +3894,7 @@ void RM_RegisterClusterMessageReceiver(RedisModuleCtx *ctx, uint8_t type, RedisM
* otherwise if the node is not connected or such node ID does not map to any
* known cluster node, REDISMODULE_ERR is returned. */
int
RM_SendClusterMessage
(
RedisModuleCtx
*
ctx
,
char
*
target_id
,
uint8_t
type
,
unsigned
char
*
msg
,
uint32_t
len
)
{
if
(
!
server
.
cluster_enabled
)
return
REDISMODULE_ERR
;
uint64_t
module_id
=
moduleTypeEncodeId
(
ctx
->
module
->
name
,
0
);
if
(
clusterSendModuleMessageToTarget
(
target_id
,
module_id
,
type
,
msg
,
len
)
==
C_OK
)
return
REDISMODULE_OK
;
...
...
src/redismodule.h
View file @
82004f9d
...
...
@@ -254,7 +254,8 @@ long long REDISMODULE_API_FUNC(RedisModule_Milliseconds)(void);
void
REDISMODULE_API_FUNC
(
RedisModule_DigestAddStringBuffer
)(
RedisModuleDigest
*
md
,
unsigned
char
*
ele
,
size_t
len
);
void
REDISMODULE_API_FUNC
(
RedisModule_DigestAddLongLong
)(
RedisModuleDigest
*
md
,
long
long
ele
);
void
REDISMODULE_API_FUNC
(
RedisModule_DigestEndSequence
)(
RedisModuleDigest
*
md
);
int
REDISMODULE_API
(
RedisModule_SendClusterMessage
)(
RedisModuleCtx
*
ctx
,
char
*
target_id
,
uint8_t
type
,
unsigned
char
*
msg
,
uint32_t
len
);
void
REDISMODULE_API_FUNC
(
RedisModule_RegisterClusterMessageReceiver
)(
RedisModuleCtx
*
ctx
,
uint8_t
type
,
RedisModuleClusterMessageReceiver
callback
);
int
REDISMODULE_API_FUNC
(
RedisModule_SendClusterMessage
)(
RedisModuleCtx
*
ctx
,
char
*
target_id
,
uint8_t
type
,
unsigned
char
*
msg
,
uint32_t
len
);
/* Experimental APIs */
#ifdef REDISMODULE_EXPERIMENTAL_API
...
...
@@ -269,8 +270,6 @@ void REDISMODULE_API_FUNC(RedisModule_FreeThreadSafeContext)(RedisModuleCtx *ctx
void
REDISMODULE_API_FUNC
(
RedisModule_ThreadSafeContextLock
)(
RedisModuleCtx
*
ctx
);
void
REDISMODULE_API_FUNC
(
RedisModule_ThreadSafeContextUnlock
)(
RedisModuleCtx
*
ctx
);
int
REDISMODULE_API_FUNC
(
RedisModule_SubscribeToKeyspaceEvents
)(
RedisModuleCtx
*
ctx
,
int
types
,
RedisModuleNotificationFunc
cb
);
void
REDISMODULE_API_FUNC
(
RedisModule_RegisterClusterMessageReceiver
)(
RedisModuleCtx
*
ctx
,
uint8_t
type
,
RedisModuleClusterMessageReceiver
callback
);
#endif
/* This is included inline inside each Redis module. */
...
...
@@ -380,6 +379,7 @@ static int RedisModule_Init(RedisModuleCtx *ctx, const char *name, int ver, int
REDISMODULE_GET_API
(
DigestAddStringBuffer
);
REDISMODULE_GET_API
(
DigestAddLongLong
);
REDISMODULE_GET_API
(
DigestEndSequence
);
REDISMODULE_GET_API
(
RegisterClusterMessageReceiver
);
REDISMODULE_GET_API
(
SendClusterMessage
);
#ifdef REDISMODULE_EXPERIMENTAL_API
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment