Home

 

Delete a broker from the network

Brokers must always be deleted from the bottom of the broker hierarchy. We cannot delete a broker if it has one or more child brokers. (See Sequence of commands for adding and deleting brokers for more information.)

The broker needs to delete any queues that were created by the broker, so these queues need to be closed and empty.

  1. Stop the broker using endmqbrk (ENDMQMBRK on iSeries).

  2. Quiesce all applications that use the broker.

  3. Applications and brokers can use channels to talk to the broker, so receiving channels might have queues open. If a channel has a queue open, stop and restart the channel.

  4. Use the dltmqbrk command (DLTMQMBRK on iSeries) to delete the broker. This command is described in dltmqbrk (Delete broker).

The broker performs the actions listed in dltmqbrk (Delete broker) and sends a message to tell its parent broker that it is no longer active. This message needs to be processed by its parent broker before the parent can be deleted. The parent broker can process this message only while running.

If you do not quiesce all your applications before deleting the broker, messages might be sent from other brokers before they receive notification that the broker has been deleted. Because there is no broker to handle these messages, the queue manager deals with them according to the report options set for these messages. This means that publication and registration messages are put to the dead-letter queue. Therefore, ensure that a dead-letter queue has been set up for this queue manager before attempting to delete a broker.



 

Home