-
Notifications
You must be signed in to change notification settings - Fork 67
Open
Description
Say I have two existing queues: a queue process-queue and an error queue error-queue.
My error queue is never flagged as existing because the ListQueues operation is prefixed to the main queue name:
python-sqs-listener/sqs_listener/__init__.py
Lines 85 to 94 in 03400ca
| queues = sqs.list_queues(QueueNamePrefix=self._queue_name) | |
| main_queue_exists = False | |
| error_queue_exists = False | |
| if 'QueueUrls' in queues: | |
| for q in queues['QueueUrls']: | |
| qname = q.split('/')[-1] | |
| if qname == self._queue_name: | |
| main_queue_exists = True | |
| if self._error_queue_name and qname == self._error_queue_name: | |
| error_queue_exists = True |
The listener attempts to create the error queue since it wasn't found, and gets a QueueAlreadyExists error immediately.
If I specify the error queue as process-queue-error and it already exists, I don't get any errors, because it comes back in the ListQueues call that uses the prefix.
A couple solutions to this but it's a pretty big issue for anyone using pre-created queues.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels