Example #1
0
void publishCommand(client *c) {
    int receivers = pubsubPublishMessage(c->argv[1],c->argv[2]);
    if (server.cluster_enabled)
        clusterPropagatePublish(c->argv[1],c->argv[2]);
    else
        forceCommandPropagation(c,PROPAGATE_REPL);
    addReplyLongLong(c,receivers);
}
Example #2
0
void do_bridge_notify(void  *pdb,void *pkeyobj)
{
    redisDb *db=(redisDb *)pdb;
    robj *keyobj=(robj *)pkeyobj;
    if(server.bridge_db.bridge_event[db->id]==BRIDGE_KEY_NOTIFY) //do notify event
    {
        sds key = sdsnew(BRIDGE_SYSTEM_CHANNEL);
        robj *bridge_channel = createStringObject(key,sdslen(key));
        int receivers = pubsubPublishMessage(bridge_channel,keyobj);
        if (server.cluster_enabled) clusterPropagatePublish(bridge_channel,keyobj);
        redisLog(REDIS_NOTICE,"%d clients receive the expire event",receivers);
        decrRefCount(bridge_channel);
    }
}
Example #3
0
void publishCommand(redisClient *c) {
    int receivers = pubsubPublishMessage(c->argv[1],c->argv[2]);
    if (server.cluster_enabled) clusterPropagatePublish(c->argv[1],c->argv[2]);
    addReplyLongLong(c,receivers);
}