Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Messages that are left in a pending state will eventually be deleted. Processing these messages triggers an error, and so they are never discarded, even though they have no content anymore. We are running AWS Elasticache Redis 6.2.6
When the xclaimed messages are fetched with XGET, I can see that the error value is
redis: nil
What is happening is that the message exists in the PEL but has no content because it was deleted. Acking the message removes it from the PEL so it won't be claimed again in the same consumer group.
I have tried to create a test that gets the queue in this state, but didn't succeed. I tested this patch against our staging systems, and it did succeed at draining the queue.