XGROUP SETID

Syntax
XGROUP SETID key group <id | $> [ENTRIESREAD entries-read]
Available since:
5.0.0
Time complexity:
O(1)
ACL categories:
@write, @stream, @slow,

Set the last delivered ID for a consumer group.

Normally, a consumer group's last delivered ID is set when the group is created with XGROUP CREATE. The XGROUP SETID command allows modifying the group's last delivered ID, without having to delete and recreate the group. For instance if you want the consumers in a consumer group to re-process all the messages in a stream, you may want to set its next ID to 0:

XGROUP SETID mystream mygroup 0

The optional entries_read argument can be specified to enable consumer group lag tracking for an arbitrary ID. An arbitrary ID is any ID that isn't the ID of the stream's first entry, its last entry or the zero ("0-0") ID. This can be useful you know exactly how many entries are between the arbitrary ID (excluding it) and the stream's last entry. In such cases, the entries_read can be set to the stream's entries_added subtracted with the number of entries.

RESP2/RESP3 Reply

Simple string reply: OK.

History

  • Starting with Redis version 7.0.0: Added the optional entries_read argument.
Rate this page