Propagating message's through multiple queues

331 views Asked by At

Is it possible to propagate messages through couple of queues? f.e. I have two databases remote and local, in remote i have one aq table AQ1, in local i have two aq tables AQ2 and AQ3. Is it possible to schedule propagation from AQ1 to AQ2 and then from AQ2 to AQ3, so the message i receive from AQ1 in AQ2 would be automatically propagated to AQ3?

I'm asking this cause i have this issue where, when message gets propagated to AQ2 from AQ1, it doesn't get automatically propagated to AQ3. When i look at user_queue_schedules, the propagation to AQ3 wasn't even triggered. But if i enqueue message to AQ2 it does get propagated to AQ3.

1

There are 1 answers

0
Simas.B On BEST ANSWER

When you think about propagation, it's kinda logical that when you propagate message to another queue, it enqueue's it to that queue and that should trigger propagation to third queue. However, when you better think about how propagation works, it's kinda logical that propagation to third queue shouldn't get triggered. If you do not specify recipients during enqueue proccess of the message, propagation takes default agents that is subscribed to that aq table and sends messages to them, so it enqueues message to second queue with recipient being that queue, and so message cannot be propagated to third queue because that queue is not a recipient. Workaround for this would be adding callback procedure for when message is enqueued to second queue to dequeue that message and enqueue it to third queue. Or simply creating a job, that would run every couple of seconds, dequeue new messages and enqueue them to third queue.

If i am wrong about this please, let me know.