Skip to content

Commit

Permalink
Fixed a hanging in case when removing the message in queue failed.
Browse files Browse the repository at this point in the history
  • Loading branch information
dvazar committed Jan 9, 2024
1 parent 02b977b commit c7de8be
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions dramatiq_azure/asq.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,9 +126,11 @@ def outstanding_message_count(self):
return len(self.queued_message_ids) + len(self.message_cache)

def __remove_from_queue(self, message: _ASQMessage):
self.q_client.delete_message(message._asq_message)
if message.message_id in self.queued_message_ids:
self.queued_message_ids.remove(message.message_id)
try:
self.q_client.delete_message(message._asq_message)
finally:
if message.message_id in self.queued_message_ids:
self.queued_message_ids.remove(message.message_id)

def ack(self, message: _ASQMessage) -> None:
self.__remove_from_queue(message)
Expand Down

0 comments on commit c7de8be

Please sign in to comment.