Change message deletion behavior of SQS queue to use discard (#4287)
This commit is contained in:
parent
69c2a11f5c
commit
79f70aa0c8
@ -886,12 +886,11 @@ class SQSBackend(BaseBackend):
|
|||||||
):
|
):
|
||||||
raise ReceiptHandleIsInvalid()
|
raise ReceiptHandleIsInvalid()
|
||||||
|
|
||||||
|
# Delete message from queue regardless of pending state
|
||||||
new_messages = []
|
new_messages = []
|
||||||
for message in queue._messages:
|
for message in queue._messages:
|
||||||
# Only delete message if it is not visible and the receipt_handle
|
|
||||||
# matches.
|
|
||||||
if message.receipt_handle == receipt_handle:
|
if message.receipt_handle == receipt_handle:
|
||||||
queue.pending_messages.remove(message)
|
queue.pending_messages.discard(message)
|
||||||
continue
|
continue
|
||||||
new_messages.append(message)
|
new_messages.append(message)
|
||||||
queue._messages = new_messages
|
queue._messages = new_messages
|
||||||
|
Loading…
x
Reference in New Issue
Block a user