Adam Chase wrote:
Premature sending (sorry) (the tab key killed me)So I have a system where I have groups of messages that need to be accumulated and then processed exclusively. I might get a message for any group at any time. The space of possible groups is quite large, but at any time I expect there will be a reasonable number of groups active. My plan was: produce(group, job) { query_queue(group) //to see if it exists if (exists) send_message(group) else declare_queue(group, exclusive) send_message(group) send_message(queues_to_process, group) } consume() { queueName = queue.receive(queues_to_process) queue.subscribe(queueName) queue.receive(queueName) //to get a bunch of messages //later when the queue has been idle (for a while) queue_delete(queueName) } Not sure if I've explained myself well here or not, but my question is 1) Is there a better way to accomplish this sort of thing and 2) can you think of a way around the race condition between queue_query and queue_delete? Does the alternate_exchange setting help any? Thanks, Adam
Are you trying/wanting to make sure messages are not sent a queue that is going to be deleted?
Carl.
