redis-clustr
Advanced tools
Comparing version 1.5.2 to 1.6.0
@@ -1,422 +0,558 @@ | ||
// Generated using tools/commands.js and config/commandsConfig.js on Sun, 22 Nov 2015 23:03:06 GMT | ||
// Generated using tools/commands.js and config/commandsConfig.js on Wed, 21 Mar 2018 11:49:17 GMT | ||
module.exports = { | ||
lindex: { | ||
append: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
asking: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
zrank: { | ||
auth: { | ||
multiKey: false, | ||
interval: 1, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
zinterstore: { | ||
bgrewriteaof: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: false | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
persist: { | ||
bgsave: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
bitcount: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
bitop: { | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
getrange: { | ||
bitpos: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
brpoplpush: { | ||
blpop: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
zscore: { | ||
brpop: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
zrevrangebylex: { | ||
brpoplpush: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
client: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
replconf: { | ||
cluster: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
sadd: { | ||
command: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
pfadd: { | ||
config: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
getbit: { | ||
dbsize: { | ||
multiKey: false, | ||
interval: 1, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
zincrby: { | ||
debug: { | ||
multiKey: false, | ||
interval: 1, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: false | ||
}, | ||
hgetall: { | ||
decr: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
zremrangebyscore: { | ||
decrby: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
type: { | ||
multiKey: false, | ||
del: { | ||
group: function(resp) { | ||
var total = 0; | ||
for (var i = 0; i < resp.length; i++) { | ||
total += (resp[i] || 0); | ||
} | ||
return total; | ||
}, | ||
multiKey: true, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
cluster: { | ||
discard: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
zrange: { | ||
dump: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
debug: { | ||
echo: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
eval: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
bitcount: { | ||
evalsha: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
interval: 0, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
flushdb: { | ||
exec: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: false | ||
}, | ||
sunionstore: { | ||
exists: { | ||
multiKey: true, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
smove: { | ||
expire: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
rpushx: { | ||
expireat: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
zrangebylex: { | ||
flushall: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
interval: 0, | ||
keyless: true, | ||
readOnly: false | ||
}, | ||
multi: { | ||
flushdb: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: true | ||
keyless: true, | ||
readOnly: false | ||
}, | ||
sdiff: { | ||
multiKey: true, | ||
get: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
hscan: { | ||
getbit: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
zrevrank: { | ||
getrange: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
punsubscribe: { | ||
getset: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: true | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
lset: { | ||
hdel: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
psetex: { | ||
hexists: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
hvals: { | ||
hget: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
zrem: { | ||
hgetall: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
hincrby: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
smembers: { | ||
hincrbyfloat: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
zscan: { | ||
hkeys: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
dbsize: { | ||
hlen: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
sinterstore: { | ||
multiKey: true, | ||
hmget: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
}, | ||
lastsave: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
evalsha: { | ||
hmset: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
scan: { | ||
hscan: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
unsubscribe: { | ||
hset: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: true | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
setex: { | ||
hsetnx: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
scard: { | ||
hvals: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
ping: { | ||
incr: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: true | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
bitpos: { | ||
incrby: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
role: { | ||
incrbyfloat: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
psubscribe: { | ||
info: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
wait: { | ||
keys: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
config: { | ||
lastsave: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
publish: { | ||
latency: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
sdiffstore: { | ||
multiKey: true, | ||
interval: 1, | ||
readOnly: false | ||
}, | ||
lrange: { | ||
lindex: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
hsetnx: { | ||
linsert: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
asking: { | ||
llen: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
decr: { | ||
lpop: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
client: { | ||
lpush: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: true | ||
}, | ||
linsert: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
spop: { | ||
lpushx: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
subscribe: { | ||
lrange: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
lpushx: { | ||
lrem: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
ltrim: { | ||
lset: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
migrate: { | ||
ltrim: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
llen: { | ||
multiKey: false, | ||
mget: { | ||
group: function(resp) { | ||
return resp.map(function(r) { | ||
if (!r) return r; | ||
return r[0]; | ||
}); | ||
}, | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
zlexcount: { | ||
migrate: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
interval: 0, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
psync: { | ||
monitor: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
'restore-asking': { | ||
move: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
save: { | ||
mset: { | ||
group: function() { | ||
return 'OK'; | ||
}, | ||
multiKey: true, | ||
interval: 2, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
msetnx: { | ||
multiKey: true, | ||
interval: 2, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
multi: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
latency: { | ||
object: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 2, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
setnx: { | ||
persist: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
auth: { | ||
pexpire: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: true | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
hmget: { | ||
pexpireat: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
sinter: { | ||
multiKey: true, | ||
pfadd: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
watch: { | ||
pfcount: { | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
strlen: { | ||
pfdebug: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: false | ||
}, | ||
pfmerge: { | ||
multiKey: true, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
sync: { | ||
pfselftest: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
zrangebyscore: { | ||
ping: { | ||
multiKey: false, | ||
interval: 1, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
bitop: { | ||
multiKey: true, | ||
psetex: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
msetnx: { | ||
multiKey: true, | ||
interval: 2, | ||
readOnly: false | ||
psubscribe: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
hmset: { | ||
psync: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
pfmerge: { | ||
multiKey: true, | ||
pttl: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
readwrite: { | ||
publish: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
sort: { | ||
pubsub: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
monitor: { | ||
punsubscribe: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
@@ -427,410 +563,437 @@ }, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
incr: { | ||
readonly: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
mget: { | ||
group: function(resp) { | ||
return resp.map(function(r) { | ||
if (!r) return r; | ||
return r[0]; | ||
}); | ||
}, | ||
multiKey: true, | ||
interval: 1, | ||
readwrite: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
hincrby: { | ||
rename: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
srandmember: { | ||
renamenx: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
}, | ||
zremrangebyrank: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
script: { | ||
replconf: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
srem: { | ||
restore: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
setrange: { | ||
'restore-asking': { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
mset: { | ||
group: function() { | ||
return 'OK'; | ||
}, | ||
multiKey: true, | ||
interval: 2, | ||
readOnly: false | ||
}, | ||
flushall: { | ||
role: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: false | ||
}, | ||
blpop: { | ||
rpop: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
renamenx: { | ||
rpoplpush: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
select: { | ||
rpush: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: true | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
bgrewriteaof: { | ||
rpushx: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: true | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
zcount: { | ||
sadd: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
substr: { | ||
save: { | ||
multiKey: false, | ||
interval: 1, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
sismember: { | ||
scan: { | ||
multiKey: false, | ||
interval: 1, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
incrby: { | ||
scard: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
hget: { | ||
script: { | ||
multiKey: false, | ||
interval: 1, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
zrevrangebyscore: { | ||
multiKey: false, | ||
sdiff: { | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
setbit: { | ||
multiKey: false, | ||
sdiffstore: { | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
time: { | ||
select: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
slaveof: { | ||
set: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
hset: { | ||
setbit: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
dump: { | ||
setex: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
move: { | ||
setnx: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
sscan: { | ||
setrange: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
}, | ||
append: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
discard: { | ||
shutdown: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
lpop: { | ||
multiKey: false, | ||
sinter: { | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
sinterstore: { | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
pexpire: { | ||
sismember: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
pfdebug: { | ||
slaveof: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: false | ||
}, | ||
readonly: { | ||
slowlog: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
get: { | ||
smembers: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
zadd: { | ||
smove: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
hkeys: { | ||
sort: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: true | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
restore: { | ||
spop: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
exec: { | ||
srandmember: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: false | ||
}, | ||
eval: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: false | ||
}, | ||
set: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
expire: { | ||
srem: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
zremrangebylex: { | ||
sscan: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
}, | ||
pubsub: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
zcard: { | ||
strlen: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
object: { | ||
subscribe: { | ||
multiKey: false, | ||
interval: 2, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
unwatch: { | ||
substr: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
keys: { | ||
multiKey: false, | ||
interval: 0, | ||
sunion: { | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
hdel: { | ||
multiKey: false, | ||
sunionstore: { | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
echo: { | ||
sync: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
pfselftest: { | ||
time: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
brpop: { | ||
ttl: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
pttl: { | ||
type: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
hincrbyfloat: { | ||
unsubscribe: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
hlen: { | ||
unwatch: { | ||
multiKey: false, | ||
interval: 1, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
slowlog: { | ||
wait: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: true, | ||
readOnly: true | ||
}, | ||
hexists: { | ||
multiKey: false, | ||
watch: { | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
getset: { | ||
zadd: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
lpush: { | ||
zcard: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
info: { | ||
zcount: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
rpoplpush: { | ||
zincrby: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
zunionstore: { | ||
zinterstore: { | ||
multiKey: false, | ||
interval: 0, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
lrem: { | ||
zlexcount: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
rpush: { | ||
zrange: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
pexpireat: { | ||
zrangebylex: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
zrevrange: { | ||
zrangebyscore: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
ttl: { | ||
zrank: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
del: { | ||
group: function(resp) { | ||
var total = 0; | ||
for (var i = 0; i < resp.length; i++) { | ||
total += (resp[i] || 0); | ||
} | ||
return total; | ||
}, | ||
multiKey: true, | ||
zrem: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
rename: { | ||
zremrangebylex: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
bgsave: { | ||
zremrangebyrank: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: true | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
decrby: { | ||
zremrangebyscore: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: false | ||
}, | ||
sunion: { | ||
multiKey: true, | ||
zrevrange: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
shutdown: { | ||
zrevrangebylex: { | ||
multiKey: false, | ||
interval: 0, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
incrbyfloat: { | ||
zrevrangebyscore: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
pfcount: { | ||
multiKey: true, | ||
zrevrank: { | ||
multiKey: false, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
command: { | ||
zscan: { | ||
multiKey: false, | ||
interval: 0, | ||
readOnly: true | ||
}, | ||
exists: { | ||
multiKey: true, | ||
interval: 1, | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
rpop: { | ||
zscore: { | ||
multiKey: false, | ||
interval: 1, | ||
readOnly: false | ||
keyless: false, | ||
readOnly: true | ||
}, | ||
expireat: { | ||
zunionstore: { | ||
multiKey: false, | ||
interval: 1, | ||
interval: 0, | ||
keyless: false, | ||
readOnly: false | ||
} | ||
}; |
{ | ||
"name": "redis-clustr", | ||
"version": "1.5.2", | ||
"version": "1.6.0", | ||
"description": "Redis cluster client", | ||
@@ -5,0 +5,0 @@ "main": "src/RedisClustr.js", |
@@ -273,3 +273,3 @@ 'use strict'; | ||
// NOTE: this means slaves may be used for no key commands regardless of slave config | ||
if (conf.interval === 0) return self.getRandomConnection(); | ||
if (conf.keyless) return self.getRandomConnection(); | ||
@@ -363,3 +363,3 @@ if (Array.isArray(key)) key = key[0]; | ||
if (!key) return cb(new Error('no key for command: ' + cmd)); | ||
if (!key && !conf.keyless) return cb(new Error('no key for command: ' + cmd)); | ||
@@ -366,0 +366,0 @@ var r = self.selectClient(key, conf); |
@@ -12,2 +12,7 @@ var redis = require('redis').createClient(); | ||
// Ensure stable sorting of commands to avoid git diff churn every time we regenerate | ||
res.sort(function(a, b) { | ||
return a[0] < b[0] ? -1 : a[0] > b[0] ? 1 : 0; | ||
}); | ||
for (var i = 0; i < res.length; i++) { | ||
@@ -18,2 +23,3 @@ var c = res[i]; | ||
cnf.interval = c[5]; | ||
cnf.keyless = c[5] === 0 && c[2].indexOf('movablekeys') === -1; | ||
cnf.readOnly = c[2].indexOf('readonly') !== -1; | ||
@@ -20,0 +26,0 @@ commands[c[0]] = cnf; |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
61468
2168
17