rabbitmq / rabbitmq-federation

RabbitMQ Federation plugin
https://www.rabbitmq.com/
Other
40 stars 21 forks source link

Avoid multiple creation of upstream queue names on upstream exchange name (internal) compositions #80

Closed Ayanda-D closed 6 years ago

Ayanda-D commented 6 years ago

Proposed Changes

For federation exchange links, the upstream exchange name (internal) is a composition of the upstream queue name and suffix tag. The upstream queue name is initialized and created on upstream consumer initialization and held in process state. Meanwhile on initializing upstream bindings, the upstream queue name procedure is being repeatedly called/executed, when already held state, which is/can be inefficient, bearing in mind the repeated rabbit_nodes:cluster_name() calls as well. This change ensures the upstream exchange name (internal) compositions reuse composed upstream queues held in the link's state.

Types of Changes

Checklist