Removing a cluster queue from a queue manager
Disable the INVENTQ queue at Toronto. Send all the inventory messages to New York, and delete the INVENTQ queue at Toronto when it is empty.
Before you begin
- The
INVENTORYcluster has been set up as described in Adding a queue manager that hosts a queue. It contains four queue managers.LONDONandNEWYORKboth hold full repositories.PARISandTORONTOhold partial repositories. The inventory application runs on the systems in New York and Toronto and is driven by the arrival of messages on theINVENTQqueue. - Because of reduced workload, you no longer want to run the inventory
application in Toronto. You want to disable the
INVENTQqueue hosted by the queue managerTORONTO, and haveTORONTOfeed messages to theINVENTQqueue inNEWYORK. - Network connectivity exists between all four systems.
- The network protocol is TCP.
About this task
Procedure
Results
The cluster set up by this task is like that set up by the previous task. The difference is the INVENTQ queue is no longer available at queue manager TORONTO.
When you took the queue out of service in step 1, the TORONTO queue manager sent a message to the two full repository queue managers. It notified them of the change in status. The full repository queue managers pass on this information to other queue managers in the cluster that have requested updates to information concerning the INVENTQ.
When a queue manager puts a message on the INVENTQ queue the updated partial repository indicates that the INVENTQ queue is available only at the NEWYORK queue manager. The message is sent to the NEWYORK queue manager.
What to do next
In this task, there was only one queue to remove and only one cluster to remove it from.
TORONTO queue manager might host not only the
INVENTQ, but also the PAYROLLQ, SALESQ, and
PURCHASESQ. TORONTO makes these queues available in all the
appropriate clusters, INVENTORY, PAYROLL, SALES,
and PURCHASES. Define a namelist of the cluster names on the
TORONTO queue manager:
DEFINE NAMELIST(TOROLIST)
DESCR('List of clusters TORONTO is in')
NAMES(INVENTORY, PAYROLL, SALES, PURCHASES)
Add the namelist to each queue definition:
DEFINE QLOCAL(INVENTQ) CLUSNL(TOROLIST)
DEFINE QLOCAL(PAYROLLQ) CLUSNL(TOROLIST)
DEFINE QLOCAL(SALESQ) CLUSNL(TOROLIST)
DEFINE QLOCAL(PURCHASESQ) CLUSNL(TOROLIST)
Now suppose that you want to remove all those queues from the SALES cluster, because the SALES operation is to be taken over by the PURCHASES operation. All you need to do is alter the TOROLIST namelist to remove the name of the SALES cluster from it.
PAYROLLQ from the INVENTORY cluster:- Create a namelist:
DEFINE NAMELIST(TOROSHORTLIST) DESCR('List of clusters TORONTO is in other than INVENTORY') NAMES(PAYROLL, SALES, PURCHASES) - Alter the
PAYROLLQqueue definition:ALTER QLOCAL(PAYROLLQ) CLUSNL(TOROSHORTLIST)