Resolution: Messages on a queue (i.e Q1) on EMS A can be moved to EMS B in the following ways:
1). If messages are PERSISTENT, you can set up a route between A and B.
As messages are first routed from the routed server to the home server, Q1 on EMS A can be configured as a routed queue
and Q1 on EMS B the home queue.
This is the only way that the message ID is not changed.
a). Enable "routing" in tibemsd.conf in both P and S. Create a route between them.
b). Change the queue configuration in queues.conf on A.
Q1@B global,trace
The change can not be done in tibemsadmin as the EMS server considers the queue name the same for both routed and home queue.
c). Change the queue configuration in queues.conf on B:
addprop queue Q1 global,trace
d). Shut down and restart A or fail over A to its standby server (two FT servers share the same queues.conf).
Messages on Q1 on A are routed to B.
2). If you do not set up the route, you can run an application to receive the messages from A and then send them to B. But the message ID will be changed. This approach can be used when messages are either PERSISTENT or NON_PERSISTENT.
The Datastore on A should be backed up before any change on A is made.