ERR redis runtime_error ai_generated true

ERR Consumer group 'mygroup' on stream 'mystream' claim timeout: no pending messages to claim

ID: redis/stream-consumer-group-claim-timeout

Also available as: JSON · Markdown · 中文
85%Fix Rate
85%Confidence
1Evidence
2023-06-15First Seen

Version Compatibility

VersionStatusIntroducedDeprecatedNotes
redis 7.0 active
redis 7.2 active
redis 6.2 active

Root Cause

XCLAIM command timed out because the consumer group has no pending messages that match the specified idle time or count.

generic

中文

XCLAIM 命令超时,因为消费者组中没有匹配指定空闲时间或数量的待处理消息。

Official Documentation

https://redis.io/commands/xclaim/

Workarounds

  1. 85% success Use XPENDING to check the pending message list before claiming, then adjust idle time or count accordingly: XPENDING mystream mygroup
    Use XPENDING to check the pending message list before claiming, then adjust idle time or count accordingly:
    XPENDING mystream mygroup
  2. 80% success Ensure consumers are actively processing messages to generate pending entries; if idle, use XREADGROUP with a valid consumer name.
    Ensure consumers are actively processing messages to generate pending entries; if idle, use XREADGROUP with a valid consumer name.

中文步骤

  1. Use XPENDING to check the pending message list before claiming, then adjust idle time or count accordingly:
    XPENDING mystream mygroup
  2. Ensure consumers are actively processing messages to generate pending entries; if idle, use XREADGROUP with a valid consumer name.

Dead Ends

Common approaches that don't work:

  1. 60% fail

    Timeout increase does not create pending messages; the root cause is lack of messages to claim.

  2. 70% fail

    Restarting resets group state but does not address the missing pending messages; messages may still be absent.

  3. 90% fail

    Deleting the stream removes all messages, making the claim even more impossible.