redis/src/commands
debing.sun fa040a72c0
Add XDELEX and XACKDEL commands for stream (#14130)
## Summary and detailed design for new stream command

## XDELEX

### Syntax
```
XDELEX key [KEEPREF | DELREF | ACKED] IDS numids id [id ...]
```

### Description
The `XDELEX` command extends the Redis Streams `XDEL` command, offering
enhanced control over message entry deletion with respect to consumer
groups. It accepts optional `DELREF` or `ACKED` parameters to modify its
behavior:

- **KEEPREF:** Deletes the specified entries from the stream, but
preserves existing references to these entries in all consumer groups'
PEL. This behavior is similar to XDEL.
- **DELREF:** Deletes the specified entries from the stream and also
removes all references to these entries from all consumer groups'
pending entry lists, effectively cleaning up all traces of the messages.
- **ACKED:** Only trims entries that were read and acknowledged by all
consumer groups.

**Note:** The `IDS` block can appear at any position in the command,
consistent with other commands.

### Reply
Array reply, for each `id`:
- `-1`: No such `id` exists in the provided stream `key`.
- `1`: Entry was deleted from the stream.
- `2`: Entry was not deleted, but there are still dangling references.
(ACKED option)

## XACKDEL

### Syntax
```
XACKDEL key group [KEEPREF | DELREF | ACKED] IDS numids id [id ...]
```

### Description
The `XACKDEL` command combines `XACK` and `XDEL` functionalities in
Redis Streams. It acknowledges specified message IDs in the given
consumer group and attempts to delete corresponding stream entries. It
accepts optional `DELREF` or `ACKED` parameters:

- **KEEPREF:** Acknowledges the messages in the specified consumer group
and deletes the entries from the stream, but preserves existing
references to these entries in all consumer groups' PEL.
- **DELREF:** Acknowledges the messages in the specified consumer group,
deletes the entries from the stream, and also removes all references to
these entries from all consumer groups' pending entry lists, effectively
cleaning up all traces of the messages.
- **ACKED:** Acknowledges the messages in the specified consumer group
and only trims entries that were read and acknowledged by all consumer
groups.


### Reply
Array reply, for each `id`:
- `-1`: No such `id` exists in the provided stream `key`.
- `1`: Entry was acknowledged and deleted from the stream.
- `2`: Entry was acknowledged but not deleted, but there are still
dangling references. (ACKED option)

# Redis Streams Commands Extension

## XTRIM

### Syntax
```
XTRIM key <MAXLEN | MINID> [= | ~] threshold [LIMIT count] [KEEPREF | DELREF | ACKED]
```

### Description
The `XTRIM` command trims a stream by removing entries based on
specified criteria, extended to include optional `DELREF` or `ACKED`
parameters for consumer group handling:

- **KEEPREF:** Trims the stream according to the specified strategy
(MAXLEN or MINID) regardless of whether entries are referenced by any
consumer groups, but preserves existing references to these entries in
all consumer groups' PEL.
- **DELREF:** Trims the stream according to the specified strategy and
also removes all references to the trimmed entries from all consumer
groups' PEL.
- **ACKED:** Only trims entries that were read and acknowledged by all
consumer groups.

### Reply
No change.

## XADD

### Syntax
```
XADD key [NOMKSTREAM] [<MAXLEN | MINID> [= | ~] threshold [LIMIT count]] [KEEPREF | DELREF | ACKED] <* | id> field value [field value ...]
```

### Description
The `XADD` command appends a new entry to a stream and optionally trims
it in the same operation, extended to include optional `DELREF` or
`ACKED` parameters for trimming behavior:

- **KEEPREF:** When trimming, removes entries from the stream according
to the specified strategy (MAXLEN or MINID), regardless of whether they
are referenced by any consumer groups, but preserves existing references
to these entries in all consumer groups' PEL.
- **DELREF:** When trimming, removes entries from the stream according
to the specified strategy and also removes all references to these
entries from all consumer groups' PEL.
- **ACKED:** When trimming, only removes entries that were read and
acknowledged by all consumer groups. Note that if the number of
referenced entries is bigger than MAXLEN, we will still stop.

### Reply
No change.

## Key implementation

Since we currently have no simple way to track the association between
an entry and consumer groups without iterating over all groups, we
introduce two mechanisms to establish this link. This allows us to
determine whether an entry has been seen by all consumer groups, and to
identify which groups are referencing it. With this links, we can break
the association when the entry is either acknowledged or deleted.

1) Added reference tracking between stream messages and consumer groups
using `cgroups_ref`
The cgroups_ref is implemented as a rax that maps stream message IDs to
lists of consumer groups that reference those messages, and streamNACK
stores the corresponding nodes of this list, so that the corresponding
groups can be deleted during `ACK`.
In this way, we can determine whether an entry has been seen but not
ack.
2) Store a cache minimum last_id in the stream structure.
The reason for doing this is that there is a situation where an entry
has never been seen by the consume group. In this case, we think this
entry has not been consumed either. If there is an "ACKED" option, we
cannot directly delete this entry either.
When a consumer group updates its last_id, we don’t immediately update
the cached minimum last_id. Instead, we check whether the group’s
previous last_id was equal to the current minimum, or whether the new
last_id is smaller than the current minimum (when using `XGROUP SETID`).
If either is true, we mark the cached minimum last_id as invalid, and
defer the actual update until the next time it’s needed.

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: moticless <moticless@github.com>
Co-authored-by: Ozan Tezcan <ozantezcan@gmail.com>
Co-authored-by: Slavomir Kaslev <slavomir.kaslev@gmail.com>
Co-authored-by: Yuan Wang <yuan.wang@redis.com>
2025-07-01 21:00:42 +08:00
..
acl-cat.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
acl-deluser.json Update command tips on more admin / configuration commands (#12545) 2023-09-04 21:30:42 +03:00
acl-dryrun.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
acl-genpass.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
acl-getuser.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
acl-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
acl-list.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
acl-load.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
acl-log.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
acl-save.json Update command tips on more admin / configuration commands (#12545) 2023-09-04 21:30:42 +03:00
acl-setuser.json Update command tips on more admin / configuration commands (#12545) 2023-09-04 21:30:42 +03:00
acl-users.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
acl-whoami.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
acl.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
append.json Remove several instances of duplicate "the" in comments (#12144) 2023-05-08 16:12:44 -07:00
asking.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
auth.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
bgrewriteaof.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
bgsave.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
bitcount.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
bitfield.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
bitfield_ro.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
bitop.json Implement DIFF, DIFF1, ANDOR and ONE for BITOP (#13898) 2025-05-20 10:45:50 +03:00
bitpos.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
blmove.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
blmpop.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
blpop.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
brpop.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
brpoplpush.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
bzmpop.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
bzpopmax.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
bzpopmin.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-caching.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-getname.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-getredir.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-id.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-info.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-kill.json Update version references from 8.0 to 7.4 for upcoming release (#13294) 2024-05-27 16:47:23 +08:00
client-list.json Async IO Threads (#13695) 2024-12-23 14:16:40 +08:00
client-no-evict.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-no-touch.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-pause.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-reply.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-setinfo.json Update command tips on more admin / configuration commands (#12545) 2023-09-04 21:30:42 +03:00
client-setname.json Update command tips on more admin / configuration commands (#12545) 2023-09-04 21:30:42 +03:00
client-tracking.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-trackinginfo.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-unblock.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client-unpause.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
client.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-addslots.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-addslotsrange.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-bumpepoch.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-count-failure-reports.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-countkeysinslot.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-delslots.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-delslotsrange.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-failover.json Add reply_schema to command json files (internal for now) (#10273) 2023-03-11 10:14:16 +02:00
cluster-flushslots.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-forget.json Revert "Update history for ban-list propagation (#13749)" (#13827) 2025-02-24 17:40:25 +08:00
cluster-getkeysinslot.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-info.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-keyslot.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-links.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-meet.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-myid.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-myshardid.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-nodes.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-replicas.json Fix CLUSTER REPLICAS time complexity, should be O(N) (#12477) 2023-08-14 20:57:55 -07:00
cluster-replicate.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-reset.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-saveconfig.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-set-config-epoch.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-setslot.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
cluster-shards.json Fix that slot return in CLUSTER SHARDS should be integer (#12561) 2023-09-09 23:33:00 -07:00
cluster-slaves.json Fix CLUSTER REPLICAS time complexity, should be O(N) (#12477) 2023-08-14 20:57:55 -07:00
cluster-slots.json Allow cluster slots/shards api to respond during loading (#12269) 2023-06-13 18:16:32 +03:00
cluster.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
command-count.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
command-docs.json Correct COMMAND DOCS summary, like COMMAND INFO (#12152) 2023-05-10 08:26:46 +03:00
command-getkeys.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
command-getkeysandflags.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
command-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
command-info.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
command-list.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
command.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
config-get.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
config-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
config-resetstat.json Align CONFIG RESETSTAT/REWRITE tips with SET. (#12530) 2023-08-30 21:49:02 +03:00
config-rewrite.json Align CONFIG RESETSTAT/REWRITE tips with SET. (#12530) 2023-08-30 21:49:02 +03:00
config-set.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
config.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
copy.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
dbsize.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
debug.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
decr.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
decrby.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
del.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
discard.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
dump.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
echo.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
eval.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
eval_ro.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
evalsha.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
evalsha_ro.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
exec.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
exists.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
expire.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
expireat.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
expiretime.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
failover.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
fcall.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
fcall_ro.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
flushall.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
flushdb.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
function-delete.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
function-dump.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
function-flush.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
function-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
function-kill.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
function-list.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
function-load.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
function-restore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
function-stats.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
function.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
geoadd.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
geodist.json Fix GEOHASH / GEODIST / GEOPOS time complexity, should be O(1) (#12445) 2023-08-05 07:29:24 +03:00
geohash.json Fix GEOHASH / GEODIST / GEOPOS time complexity, should be O(1) (#12445) 2023-08-05 07:29:24 +03:00
geopos.json Fix GEOHASH / GEODIST / GEOPOS time complexity, should be O(1) (#12445) 2023-08-05 07:29:24 +03:00
georadius.json fix GEORADIUS[BYMEMBER] STORE & STOREDIST args spec (#12151) 2023-05-09 14:24:37 +03:00
georadius_ro.json Add missing structural API changes to JSON file (#12434) 2024-02-04 08:42:15 +02:00
georadiusbymember.json Add missing structural API changes to JSON file (#12434) 2024-02-04 08:42:15 +02:00
georadiusbymember_ro.json Add missing structural API changes to JSON file (#12434) 2024-02-04 08:42:15 +02:00
geosearch.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
geosearchstore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
get.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
getbit.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
getdel.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
getex.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
getrange.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
getset.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hdel.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hello.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hexists.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hexpire.json Remove DENYOOM flag from hexpire command (#13800) 2025-02-16 20:07:29 +03:00
hexpireat.json Remove DENYOOM flag from hexpire command (#13800) 2025-02-16 20:07:29 +03:00
hexpiretime.json Update FIELDS argument to block type for HFE commands schema (#13339) 2024-06-14 13:51:49 +08:00
hget.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hgetall.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hgetdel.json Add HGETDEL, HGETEX and HSETEX hash commands (#13798) 2025-02-14 17:13:35 +03:00
hgetex.json Add HGETDEL, HGETEX and HSETEX hash commands (#13798) 2025-02-14 17:13:35 +03:00
hincrby.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hincrbyfloat.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hkeys.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hlen.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hmget.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hmset.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hpersist.json Update FIELDS argument to block type for HFE commands schema (#13339) 2024-06-14 13:51:49 +08:00
hpexpire.json Remove DENYOOM flag from hexpire command (#13800) 2025-02-16 20:07:29 +03:00
hpexpireat.json Remove DENYOOM flag from hexpire command (#13800) 2025-02-16 20:07:29 +03:00
hpexpiretime.json Update FIELDS argument to block type for HFE commands schema (#13339) 2024-06-14 13:51:49 +08:00
hpttl.json Fix HTTL/HPTTL to be NONDETERMINISTIC_OUTPUT (#13461) 2024-08-04 17:42:50 +03:00
hrandfield.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hscan.json Add novalues option to command HSCAN. (#12765) 2024-01-30 20:32:58 +02:00
hset.json Update reply_schema details for info and hset commands json files accordingly. (#12017) 2023-04-13 12:17:28 +03:00
hsetex.json Add HGETDEL, HGETEX and HSETEX hash commands (#13798) 2025-02-14 17:13:35 +03:00
hsetnx.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
hstrlen.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
httl.json Fix HTTL/HPTTL to be NONDETERMINISTIC_OUTPUT (#13461) 2024-08-04 17:42:50 +03:00
hvals.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
incr.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
incrby.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
incrbyfloat.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
info.json Update reply_schema details for info and hset commands json files accordingly. (#12017) 2023-04-13 12:17:28 +03:00
keys.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lastsave.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
latency-doctor.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
latency-graph.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
latency-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
latency-histogram.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
latency-history.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
latency-latest.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
latency-reset.json Update command tips on more admin / configuration commands (#12545) 2023-09-04 21:30:42 +03:00
latency.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lcs.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lindex.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
linsert.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
llen.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lmove.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lmpop.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lolwut.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lpop.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lpos.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lpush.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lpushx.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lrange.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lrem.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
lset.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
ltrim.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
memory-doctor.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
memory-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
memory-malloc-stats.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
memory-purge.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
memory-stats.json Start AOFRW before streaming repl buffer during fullsync (#13758) 2025-02-04 21:40:18 +03:00
memory-usage.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
memory.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
mget.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
migrate.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
module-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
module-list.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
module-load.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
module-loadex.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
module-unload.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
module.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
monitor.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
move.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
mset.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
msetnx.json Update request/response policies. (#12417) 2023-07-25 10:21:23 +03:00
multi.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
object-encoding.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
object-freq.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
object-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
object-idletime.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
object-refcount.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
object.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
persist.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pexpire.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pexpireat.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pexpiretime.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pfadd.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pfcount.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pfdebug.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pfmerge.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pfselftest.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
ping.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
psetex.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
psubscribe.json Optimize PSUBSCRIBE and PUNSUBSCRIBE from O(N*M) to O(N) (#12298) 2023-06-19 16:31:18 +03:00
psync.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pttl.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
publish.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pubsub-channels.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pubsub-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pubsub-numpat.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pubsub-numsub.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pubsub-shardchannels.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pubsub-shardnumsub.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
pubsub.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
punsubscribe.json Optimize PSUBSCRIBE and PUNSUBSCRIBE from O(N*M) to O(N) (#12298) 2023-06-19 16:31:18 +03:00
quit.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
randomkey.json Update request/response policies. (#12417) 2023-07-25 10:21:23 +03:00
README.md Adds a README to the command JSON files (#13066) 2024-02-19 18:49:31 +02:00
readonly.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
readwrite.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
rename.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
renamenx.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
replconf.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
replicaof.json Support NO ONE block in REPLICAOF command json (#12633) 2023-10-10 11:10:40 +03:00
reset.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
restore-asking.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
restore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
role.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
rpop.json Fix typos (#12076) 2023-04-20 11:50:28 +03:00
rpoplpush.json Fix typos (#12076) 2023-04-20 11:50:28 +03:00
rpush.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
rpushx.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sadd.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
save.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
scan.json Update request/response policies. (#12417) 2023-07-25 10:21:23 +03:00
scard.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
script-debug.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
script-exists.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
script-flush.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
script-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
script-kill.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
script-load.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
script.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sdiff.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sdiffstore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
select.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-ckquorum.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-config.json Add new loglevel nothing to sentinel-config.json (#12235) 2023-05-26 09:12:23 +03:00
sentinel-debug.json Add missing reply schema and coverage tests (#12079) 2023-04-27 09:32:14 +03:00
sentinel-failover.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-flushconfig.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-get-master-addr-by-name.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-info-cache.json Add missing reply schema and coverage tests (#12079) 2023-04-27 09:32:14 +03:00
sentinel-is-master-down-by-addr.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-master.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-masters.json Updating reply_schema for sentinal commands (#12018) 2023-04-19 09:08:11 +03:00
sentinel-monitor.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-myid.json Updating reply_schema for sentinal commands (#12018) 2023-04-19 09:08:11 +03:00
sentinel-pending-scripts.json Add missing reply schema and coverage tests (#12079) 2023-04-27 09:32:14 +03:00
sentinel-remove.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-replicas.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-reset.json Add missing reply schema and coverage tests (#12079) 2023-04-27 09:32:14 +03:00
sentinel-sentinels.json Updating reply_schema for sentinal commands (#12018) 2023-04-19 09:08:11 +03:00
sentinel-set.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sentinel-simulate-failure.json Add missing reply schema and coverage tests (#12079) 2023-04-27 09:32:14 +03:00
sentinel-slaves.json Updating reply_schema for sentinal commands (#12018) 2023-04-19 09:08:11 +03:00
sentinel.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
set.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
setbit.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
setex.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
setnx.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
setrange.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sflush.json Temporarily hide the new SFLUSH command by marking it as experimental (#13600) 2024-10-15 11:02:51 +03:00
shutdown.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sinter.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sintercard.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sinterstore.json Change destination key's key-spec flag from RW to OW for SINTERSTORE command (#12917) 2024-01-08 10:17:13 +02:00
sismember.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
slaveof.json Support NO ONE block in REPLICAOF command json (#12633) 2023-10-10 11:10:40 +03:00
slowlog-get.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
slowlog-help.json Add reply_schema to command json files (internal for now) (#10273) 2023-03-11 10:14:16 +02:00
slowlog-len.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
slowlog-reset.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
slowlog.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
smembers.json Created specific SMEMBERS command logic which avoids sinterGenericCommand, and minimizes processing and memory overhead (#13499) 2024-09-03 18:32:43 +08:00
smismember.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
smove.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sort.json Update sort_ro reply_schema to mention the null reply (#12534) 2023-08-31 06:36:35 +03:00
sort_ro.json Update sort_ro reply_schema to mention the null reply (#12534) 2023-08-31 06:36:35 +03:00
spop.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
spublish.json Add reply_schema to command json files (internal for now) (#10273) 2023-03-11 10:14:16 +02:00
srandmember.json Add reply_schema to command json files (internal for now) (#10273) 2023-03-11 10:14:16 +02:00
srem.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sscan.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
ssubscribe.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
strlen.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
subscribe.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
substr.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sunion.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sunionstore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sunsubscribe.json Optimize PSUBSCRIBE and PUNSUBSCRIBE from O(N*M) to O(N) (#12298) 2023-06-19 16:31:18 +03:00
swapdb.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
sync.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
time.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
touch.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
ttl.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
type.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
unlink.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
unsubscribe.json Optimize PSUBSCRIBE and PUNSUBSCRIBE from O(N*M) to O(N) (#12298) 2023-06-19 16:31:18 +03:00
unwatch.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
wait.json Allow running WAITAOF in scripts, remove NOSCRIPT flag (#12977) 2024-01-23 15:19:41 +02:00
waitaof.json Allow running WAITAOF in scripts, remove NOSCRIPT flag (#12977) 2024-01-23 15:19:41 +02:00
watch.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xack.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xackdel.json Add XDELEX and XACKDEL commands for stream (#14130) 2025-07-01 21:00:42 +08:00
xadd.json Add XDELEX and XACKDEL commands for stream (#14130) 2025-07-01 21:00:42 +08:00
xautoclaim.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xclaim.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xdel.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xdelex.json Add XDELEX and XACKDEL commands for stream (#14130) 2025-07-01 21:00:42 +08:00
xgroup-create.json Fix propagation of entries_read by calling streamPropagateGroupID unconditionally (#12898) 2024-02-29 09:48:20 +02:00
xgroup-createconsumer.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xgroup-delconsumer.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xgroup-destroy.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xgroup-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xgroup-setid.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xgroup.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xinfo-consumers.json Edit the history field of xinfo-consumers (#13078) 2024-02-22 09:44:29 +02:00
xinfo-groups.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xinfo-help.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xinfo-stream.json xinfo-stream add minimum to seen-time, skip logreqres in fuzzer (#13056) 2024-02-20 12:21:10 +02:00
xinfo.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xlen.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xpending.json Fix XPENDING reply schema for empty reply (#14129) 2025-07-01 17:35:09 +08:00
xrange.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xread.json support XREAD[GROUP] with BLOCK option in scripts (#12596) 2023-10-12 10:54:50 +03:00
xreadgroup.json Correct COMMAND DOCS summary, like COMMAND INFO (#12152) 2023-05-10 08:26:46 +03:00
xrevrange.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xsetid.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
xtrim.json Add XDELEX and XACKDEL commands for stream (#14130) 2025-07-01 21:00:42 +08:00
zadd.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zcard.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zcount.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zdiff.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zdiffstore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zincrby.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zinter.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zintercard.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zinterstore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zlexcount.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zmpop.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zmscore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zpopmax.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zpopmin.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zrandmember.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zrange.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zrangebylex.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zrangebyscore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zrangestore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zrank.json Fix ZRANK/ZREVRANK reply_schema description (#12331) 2023-06-20 11:15:40 +03:00
zrem.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zremrangebylex.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zremrangebyrank.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zremrangebyscore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zrevrange.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zrevrangebylex.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zrevrangebyscore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zrevrank.json Fix ZRANK/ZREVRANK reply_schema description (#12331) 2023-06-20 11:15:40 +03:00
zscan.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zscore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zunion.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00
zunionstore.json Overhauls command summaries and man pages. (#11942) 2023-03-29 20:48:59 +03:00

This directory contains JSON files, one for each of Redis commands.

Each JSON contains all the information about the command itself, but these JSON files are not to be used directly! Any third party who needs access to command information must get it from COMMAND INFO and COMMAND DOCS. The output can be extracted in a JSON format by using redis-cli --json, in the same manner as in utils/generate-commands-json.py.

The JSON files are used to generate commands.def (and https://github.com/redis/redis-doc/blob/master/commands.json) in Redis, and despite looking similar to the output of COMMAND there are some fields and flags that are implicitly populated, and that's the reason one shouldn't rely on the raw files.

The structure of each JSON is somewhat documented in https://redis.io/commands/command-docs/ and https://redis.io/commands/command/

The reply_schema section is a standard JSON Schema (see https://json-schema.org/) that describes the reply of each command. It is designed to someday be used to auto-generate code in client libraries, but is not yet mature and is not exposed externally.