- {"get",getCommand,2,0,NULL,1,1,1,0,0},
- {"set",setCommand,3,REDIS_CMD_DENYOOM,NULL,0,0,0,0,0},
- {"setnx",setnxCommand,3,REDIS_CMD_DENYOOM,NULL,0,0,0,0,0},
- {"setex",setexCommand,4,REDIS_CMD_DENYOOM,NULL,0,0,0,0,0},
- {"append",appendCommand,3,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"strlen",strlenCommand,2,0,NULL,1,1,1,0,0},
- {"del",delCommand,-2,0,NULL,0,0,0,0,0},
- {"exists",existsCommand,2,0,NULL,1,1,1,0,0},
- {"setbit",setbitCommand,4,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"getbit",getbitCommand,3,0,NULL,1,1,1,0,0},
- {"setrange",setrangeCommand,4,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"getrange",getrangeCommand,4,0,NULL,1,1,1,0,0},
- {"substr",getrangeCommand,4,0,NULL,1,1,1,0,0},
- {"incr",incrCommand,2,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"decr",decrCommand,2,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"mget",mgetCommand,-2,0,NULL,1,-1,1,0,0},
- {"rpush",rpushCommand,3,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"lpush",lpushCommand,3,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"rpushx",rpushxCommand,3,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"lpushx",lpushxCommand,3,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"linsert",linsertCommand,5,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"rpop",rpopCommand,2,0,NULL,1,1,1,0,0},
- {"lpop",lpopCommand,2,0,NULL,1,1,1,0,0},
- {"brpop",brpopCommand,-3,0,NULL,1,1,1,0,0},
- {"brpoplpush",brpoplpushCommand,4,REDIS_CMD_DENYOOM,NULL,1,2,1,0,0},
- {"blpop",blpopCommand,-3,0,NULL,1,1,1,0,0},
- {"llen",llenCommand,2,0,NULL,1,1,1,0,0},
- {"lindex",lindexCommand,3,0,NULL,1,1,1,0,0},
- {"lset",lsetCommand,4,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"lrange",lrangeCommand,4,0,NULL,1,1,1,0,0},
- {"ltrim",ltrimCommand,4,0,NULL,1,1,1,0,0},
- {"lrem",lremCommand,4,0,NULL,1,1,1,0,0},
- {"rpoplpush",rpoplpushCommand,3,REDIS_CMD_DENYOOM,NULL,1,2,1,0,0},
- {"sadd",saddCommand,3,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"srem",sremCommand,3,0,NULL,1,1,1,0,0},
- {"smove",smoveCommand,4,0,NULL,1,2,1,0,0},
- {"sismember",sismemberCommand,3,0,NULL,1,1,1,0,0},
- {"scard",scardCommand,2,0,NULL,1,1,1,0,0},
- {"spop",spopCommand,2,0,NULL,1,1,1,0,0},
- {"srandmember",srandmemberCommand,2,0,NULL,1,1,1,0,0},
- {"sinter",sinterCommand,-2,REDIS_CMD_DENYOOM,NULL,1,-1,1,0,0},
- {"sinterstore",sinterstoreCommand,-3,REDIS_CMD_DENYOOM,NULL,2,-1,1,0,0},
- {"sunion",sunionCommand,-2,REDIS_CMD_DENYOOM,NULL,1,-1,1,0,0},
- {"sunionstore",sunionstoreCommand,-3,REDIS_CMD_DENYOOM,NULL,2,-1,1,0,0},
- {"sdiff",sdiffCommand,-2,REDIS_CMD_DENYOOM,NULL,1,-1,1,0,0},
- {"sdiffstore",sdiffstoreCommand,-3,REDIS_CMD_DENYOOM,NULL,2,-1,1,0,0},
- {"smembers",sinterCommand,2,0,NULL,1,1,1,0,0},
- {"zadd",zaddCommand,4,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"zincrby",zincrbyCommand,4,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"zrem",zremCommand,3,0,NULL,1,1,1,0,0},
- {"zremrangebyscore",zremrangebyscoreCommand,4,0,NULL,1,1,1,0,0},
- {"zremrangebyrank",zremrangebyrankCommand,4,0,NULL,1,1,1,0,0},
- {"zunionstore",zunionstoreCommand,-4,REDIS_CMD_DENYOOM,zunionInterBlockClientOnSwappedKeys,0,0,0,0,0},
- {"zinterstore",zinterstoreCommand,-4,REDIS_CMD_DENYOOM,zunionInterBlockClientOnSwappedKeys,0,0,0,0,0},
- {"zrange",zrangeCommand,-4,0,NULL,1,1,1,0,0},
- {"zrangebyscore",zrangebyscoreCommand,-4,0,NULL,1,1,1,0,0},
- {"zrevrangebyscore",zrevrangebyscoreCommand,-4,0,NULL,1,1,1,0,0},
- {"zcount",zcountCommand,4,0,NULL,1,1,1,0,0},
- {"zrevrange",zrevrangeCommand,-4,0,NULL,1,1,1,0,0},
- {"zcard",zcardCommand,2,0,NULL,1,1,1,0,0},
- {"zscore",zscoreCommand,3,0,NULL,1,1,1,0,0},
- {"zrank",zrankCommand,3,0,NULL,1,1,1,0,0},
- {"zrevrank",zrevrankCommand,3,0,NULL,1,1,1,0,0},
- {"hset",hsetCommand,4,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"hsetnx",hsetnxCommand,4,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"hget",hgetCommand,3,0,NULL,1,1,1,0,0},
- {"hmset",hmsetCommand,-4,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"hmget",hmgetCommand,-3,0,NULL,1,1,1,0,0},
- {"hincrby",hincrbyCommand,4,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"hdel",hdelCommand,3,0,NULL,1,1,1,0,0},
- {"hlen",hlenCommand,2,0,NULL,1,1,1,0,0},
- {"hkeys",hkeysCommand,2,0,NULL,1,1,1,0,0},
- {"hvals",hvalsCommand,2,0,NULL,1,1,1,0,0},
- {"hgetall",hgetallCommand,2,0,NULL,1,1,1,0,0},
- {"hexists",hexistsCommand,3,0,NULL,1,1,1,0,0},
- {"incrby",incrbyCommand,3,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"decrby",decrbyCommand,3,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"getset",getsetCommand,3,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"mset",msetCommand,-3,REDIS_CMD_DENYOOM,NULL,1,-1,2,0,0},
- {"msetnx",msetnxCommand,-3,REDIS_CMD_DENYOOM,NULL,1,-1,2,0,0},
- {"randomkey",randomkeyCommand,1,0,NULL,0,0,0,0,0},
- {"select",selectCommand,2,0,NULL,0,0,0,0,0},
- {"move",moveCommand,3,0,NULL,1,1,1,0,0},
- {"rename",renameCommand,3,0,NULL,1,1,1,0,0},
- {"renamenx",renamenxCommand,3,0,NULL,1,1,1,0,0},
- {"expire",expireCommand,3,0,NULL,0,0,0,0,0},
- {"expireat",expireatCommand,3,0,NULL,0,0,0,0,0},
- {"keys",keysCommand,2,0,NULL,0,0,0,0,0},
- {"dbsize",dbsizeCommand,1,0,NULL,0,0,0,0,0},
- {"auth",authCommand,2,0,NULL,0,0,0,0,0},
- {"ping",pingCommand,1,0,NULL,0,0,0,0,0},
- {"echo",echoCommand,2,0,NULL,0,0,0,0,0},
- {"save",saveCommand,1,0,NULL,0,0,0,0,0},
- {"bgsave",bgsaveCommand,1,0,NULL,0,0,0,0,0},
- {"bgrewriteaof",bgrewriteaofCommand,1,0,NULL,0,0,0,0,0},
- {"shutdown",shutdownCommand,1,0,NULL,0,0,0,0,0},
- {"lastsave",lastsaveCommand,1,0,NULL,0,0,0,0,0},
- {"type",typeCommand,2,0,NULL,1,1,1,0,0},
- {"multi",multiCommand,1,0,NULL,0,0,0,0,0},
- {"exec",execCommand,1,REDIS_CMD_DENYOOM,execBlockClientOnSwappedKeys,0,0,0,0,0},
- {"discard",discardCommand,1,0,NULL,0,0,0,0,0},
- {"sync",syncCommand,1,0,NULL,0,0,0,0,0},
- {"flushdb",flushdbCommand,1,0,NULL,0,0,0,0,0},
- {"flushall",flushallCommand,1,0,NULL,0,0,0,0,0},
- {"sort",sortCommand,-2,REDIS_CMD_DENYOOM,NULL,1,1,1,0,0},
- {"info",infoCommand,-1,0,NULL,0,0,0,0,0},
- {"monitor",monitorCommand,1,0,NULL,0,0,0,0,0},
- {"ttl",ttlCommand,2,0,NULL,1,1,1,0,0},
- {"persist",persistCommand,2,0,NULL,1,1,1,0,0},
- {"slaveof",slaveofCommand,3,0,NULL,0,0,0,0,0},
- {"debug",debugCommand,-2,0,NULL,0,0,0,0,0},
- {"config",configCommand,-2,0,NULL,0,0,0,0,0},
- {"subscribe",subscribeCommand,-2,0,NULL,0,0,0,0,0},
- {"unsubscribe",unsubscribeCommand,-1,0,NULL,0,0,0,0,0},
- {"psubscribe",psubscribeCommand,-2,0,NULL,0,0,0,0,0},
- {"punsubscribe",punsubscribeCommand,-1,0,NULL,0,0,0,0,0},
- {"publish",publishCommand,3,REDIS_CMD_FORCE_REPLICATION,NULL,0,0,0,0,0},
- {"watch",watchCommand,-2,0,NULL,0,0,0,0,0},
- {"unwatch",unwatchCommand,1,0,NULL,0,0,0,0,0}
+ {"get",getCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"set",setCommand,3,"wm",0,noPreloadGetKeys,1,1,1,0,0},
+ {"setnx",setnxCommand,3,"wm",0,noPreloadGetKeys,1,1,1,0,0},
+ {"setex",setexCommand,4,"wm",0,noPreloadGetKeys,2,2,1,0,0},
+ {"append",appendCommand,3,"wm",0,NULL,1,1,1,0,0},
+ {"strlen",strlenCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"del",delCommand,-2,"w",0,noPreloadGetKeys,1,-1,1,0,0},
+ {"exists",existsCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"setbit",setbitCommand,4,"wm",0,NULL,1,1,1,0,0},
+ {"getbit",getbitCommand,3,"r",0,NULL,1,1,1,0,0},
+ {"setrange",setrangeCommand,4,"wm",0,NULL,1,1,1,0,0},
+ {"getrange",getrangeCommand,4,"r",0,NULL,1,1,1,0,0},
+ {"substr",getrangeCommand,4,"r",0,NULL,1,1,1,0,0},
+ {"incr",incrCommand,2,"wm",0,NULL,1,1,1,0,0},
+ {"decr",decrCommand,2,"wm",0,NULL,1,1,1,0,0},
+ {"mget",mgetCommand,-2,"r",0,NULL,1,-1,1,0,0},
+ {"rpush",rpushCommand,-3,"wm",0,NULL,1,1,1,0,0},
+ {"lpush",lpushCommand,-3,"wm",0,NULL,1,1,1,0,0},
+ {"rpushx",rpushxCommand,3,"wm",0,NULL,1,1,1,0,0},
+ {"lpushx",lpushxCommand,3,"wm",0,NULL,1,1,1,0,0},
+ {"linsert",linsertCommand,5,"wm",0,NULL,1,1,1,0,0},
+ {"rpop",rpopCommand,2,"w",0,NULL,1,1,1,0,0},
+ {"lpop",lpopCommand,2,"w",0,NULL,1,1,1,0,0},
+ {"brpop",brpopCommand,-3,"w",0,NULL,1,1,1,0,0},
+ {"brpoplpush",brpoplpushCommand,4,"wm",0,NULL,1,2,1,0,0},
+ {"blpop",blpopCommand,-3,"w",0,NULL,1,-2,1,0,0},
+ {"llen",llenCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"lindex",lindexCommand,3,"r",0,NULL,1,1,1,0,0},
+ {"lset",lsetCommand,4,"wm",0,NULL,1,1,1,0,0},
+ {"lrange",lrangeCommand,4,"r",0,NULL,1,1,1,0,0},
+ {"ltrim",ltrimCommand,4,"w",0,NULL,1,1,1,0,0},
+ {"lrem",lremCommand,4,"w",0,NULL,1,1,1,0,0},
+ {"rpoplpush",rpoplpushCommand,3,"wm",0,NULL,1,2,1,0,0},
+ {"sadd",saddCommand,-3,"wm",0,NULL,1,1,1,0,0},
+ {"srem",sremCommand,-3,"w",0,NULL,1,1,1,0,0},
+ {"smove",smoveCommand,4,"w",0,NULL,1,2,1,0,0},
+ {"sismember",sismemberCommand,3,"r",0,NULL,1,1,1,0,0},
+ {"scard",scardCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"spop",spopCommand,2,"wRs",0,NULL,1,1,1,0,0},
+ {"srandmember",srandmemberCommand,2,"rR",0,NULL,1,1,1,0,0},
+ {"sinter",sinterCommand,-2,"r",0,NULL,1,-1,1,0,0},
+ {"sinterstore",sinterstoreCommand,-3,"wm",0,NULL,2,-1,1,0,0},
+ {"sunion",sunionCommand,-2,"r",0,NULL,1,-1,1,0,0},
+ {"sunionstore",sunionstoreCommand,-3,"wm",0,NULL,2,-1,1,0,0},
+ {"sdiff",sdiffCommand,-2,"r",0,NULL,1,-1,1,0,0},
+ {"sdiffstore",sdiffstoreCommand,-3,"wm",0,NULL,2,-1,1,0,0},
+ {"smembers",sinterCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"zadd",zaddCommand,-4,"wm",0,NULL,1,1,1,0,0},
+ {"zincrby",zincrbyCommand,4,"wm",0,NULL,1,1,1,0,0},
+ {"zrem",zremCommand,-3,"w",0,NULL,1,1,1,0,0},
+ {"zremrangebyscore",zremrangebyscoreCommand,4,"w",0,NULL,1,1,1,0,0},
+ {"zremrangebyrank",zremrangebyrankCommand,4,"w",0,NULL,1,1,1,0,0},
+ {"zunionstore",zunionstoreCommand,-4,"wm",0,zunionInterGetKeys,0,0,0,0,0},
+ {"zinterstore",zinterstoreCommand,-4,"wm",0,zunionInterGetKeys,0,0,0,0,0},
+ {"zrange",zrangeCommand,-4,"r",0,NULL,1,1,1,0,0},
+ {"zrangebyscore",zrangebyscoreCommand,-4,"r",0,NULL,1,1,1,0,0},
+ {"zrevrangebyscore",zrevrangebyscoreCommand,-4,"r",0,NULL,1,1,1,0,0},
+ {"zcount",zcountCommand,4,"r",0,NULL,1,1,1,0,0},
+ {"zrevrange",zrevrangeCommand,-4,"r",0,NULL,1,1,1,0,0},
+ {"zcard",zcardCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"zscore",zscoreCommand,3,"r",0,NULL,1,1,1,0,0},
+ {"zrank",zrankCommand,3,"r",0,NULL,1,1,1,0,0},
+ {"zrevrank",zrevrankCommand,3,"r",0,NULL,1,1,1,0,0},
+ {"hset",hsetCommand,4,"wm",0,NULL,1,1,1,0,0},
+ {"hsetnx",hsetnxCommand,4,"wm",0,NULL,1,1,1,0,0},
+ {"hget",hgetCommand,3,"r",0,NULL,1,1,1,0,0},
+ {"hmset",hmsetCommand,-4,"wm",0,NULL,1,1,1,0,0},
+ {"hmget",hmgetCommand,-3,"r",0,NULL,1,1,1,0,0},
+ {"hincrby",hincrbyCommand,4,"wm",0,NULL,1,1,1,0,0},
+ {"hdel",hdelCommand,-3,"w",0,NULL,1,1,1,0,0},
+ {"hlen",hlenCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"hkeys",hkeysCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"hvals",hvalsCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"hgetall",hgetallCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"hexists",hexistsCommand,3,"r",0,NULL,1,1,1,0,0},
+ {"incrby",incrbyCommand,3,"wm",0,NULL,1,1,1,0,0},
+ {"decrby",decrbyCommand,3,"wm",0,NULL,1,1,1,0,0},
+ {"getset",getsetCommand,3,"wm",0,NULL,1,1,1,0,0},
+ {"mset",msetCommand,-3,"wm",0,NULL,1,-1,2,0,0},
+ {"msetnx",msetnxCommand,-3,"wm",0,NULL,1,-1,2,0,0},
+ {"randomkey",randomkeyCommand,1,"rR",0,NULL,0,0,0,0,0},
+ {"select",selectCommand,2,"r",0,NULL,0,0,0,0,0},
+ {"move",moveCommand,3,"w",0,NULL,1,1,1,0,0},
+ {"rename",renameCommand,3,"w",0,renameGetKeys,1,2,1,0,0},
+ {"renamenx",renamenxCommand,3,"w",0,renameGetKeys,1,2,1,0,0},
+ {"expire",expireCommand,3,"w",0,NULL,1,1,1,0,0},
+ {"expireat",expireatCommand,3,"w",0,NULL,1,1,1,0,0},
+ {"keys",keysCommand,2,"r",0,NULL,0,0,0,0,0},
+ {"dbsize",dbsizeCommand,1,"r",0,NULL,0,0,0,0,0},
+ {"auth",authCommand,2,"r",0,NULL,0,0,0,0,0},
+ {"ping",pingCommand,1,"r",0,NULL,0,0,0,0,0},
+ {"echo",echoCommand,2,"r",0,NULL,0,0,0,0,0},
+ {"save",saveCommand,1,"ar",0,NULL,0,0,0,0,0},
+ {"bgsave",bgsaveCommand,1,"ar",0,NULL,0,0,0,0,0},
+ {"bgrewriteaof",bgrewriteaofCommand,1,"ar",0,NULL,0,0,0,0,0},
+ {"shutdown",shutdownCommand,1,"ar",0,NULL,0,0,0,0,0},
+ {"lastsave",lastsaveCommand,1,"r",0,NULL,0,0,0,0,0},
+ {"type",typeCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"multi",multiCommand,1,"rs",0,NULL,0,0,0,0,0},
+ {"exec",execCommand,1,"wms",0,NULL,0,0,0,0,0},
+ {"discard",discardCommand,1,"rs",0,NULL,0,0,0,0,0},
+ {"sync",syncCommand,1,"ars",0,NULL,0,0,0,0,0},
+ {"flushdb",flushdbCommand,1,"w",0,NULL,0,0,0,0,0},
+ {"flushall",flushallCommand,1,"w",0,NULL,0,0,0,0,0},
+ {"sort",sortCommand,-2,"wm",0,NULL,1,1,1,0,0},
+ {"info",infoCommand,-1,"r",0,NULL,0,0,0,0,0},
+ {"monitor",monitorCommand,1,"ars",0,NULL,0,0,0,0,0},
+ {"ttl",ttlCommand,2,"r",0,NULL,1,1,1,0,0},
+ {"persist",persistCommand,2,"w",0,NULL,1,1,1,0,0},
+ {"slaveof",slaveofCommand,3,"aws",0,NULL,0,0,0,0,0},
+ {"debug",debugCommand,-2,"aw",0,NULL,0,0,0,0,0},
+ {"config",configCommand,-2,"ar",0,NULL,0,0,0,0,0},
+ {"subscribe",subscribeCommand,-2,"rps",0,NULL,0,0,0,0,0},
+ {"unsubscribe",unsubscribeCommand,-1,"rps",0,NULL,0,0,0,0,0},
+ {"psubscribe",psubscribeCommand,-2,"rps",0,NULL,0,0,0,0,0},
+ {"punsubscribe",punsubscribeCommand,-1,"rps",0,NULL,0,0,0,0,0},
+ {"publish",publishCommand,3,"rpf",0,NULL,0,0,0,0,0},
+ {"watch",watchCommand,-2,"rs",0,noPreloadGetKeys,1,-1,1,0,0},
+ {"unwatch",unwatchCommand,1,"rs",0,NULL,0,0,0,0,0},
+ {"cluster",clusterCommand,-2,"ar",0,NULL,0,0,0,0,0},
+ {"restore",restoreCommand,4,"awm",0,NULL,1,1,1,0,0},
+ {"migrate",migrateCommand,6,"aw",0,NULL,0,0,0,0,0},
+ {"dump",dumpCommand,2,"ar",0,NULL,0,0,0,0,0},
+ {"object",objectCommand,-2,"r",0,NULL,0,0,0,0,0},
+ {"client",clientCommand,-2,"ar",0,NULL,0,0,0,0,0},
+ {"eval",evalCommand,-3,"wms",0,zunionInterGetKeys,0,0,0,0,0},
+ {"evalsha",evalShaCommand,-3,"wms",0,zunionInterGetKeys,0,0,0,0,0},
+ {"slowlog",slowlogCommand,-2,"r",0,NULL,0,0,0,0,0}