I am using WSO2MB version 2.1.1.
I have two ESB processes that have subscribed to a topic queue using a durable subscription.
Now, the processes have been redeployed and they cannot listen to the topic anymore.
In the ESB log I see:
TID: [0] [ESB] [2015-06-16 12:07:14,364] INFO {org.wso2.andes.client.AMQConnection} - Unable to connect to broker at tcp://localhost:5822 {org.wso2.andes.client.AMQConnection}
org.wso2.andes.AMQTimeoutException: Server did not respond in a timely fashion [error code 408: Request Timeout]
In the MB log I see:
TID: [0] [MB] [2015-06-16 12:02:39,015] INFO {org.wso2.andes.server.protocol.AMQProtocolEngine} - Cannot subscribe to queue clientID:NewCaseUpdateLocation as it already has an existing exclusive consumer whilst processing:[BasicConsumeBodyImpl: ticket=0,
queue=clientID:NewCaseUpdateLocation, consumerTag=1, noLocal=false, noAck=false, exclusive=true, nowait=false, arguments=null]
{org.wso2.andes.server.protocol.AMQProtocolEngine}
How can I re-register this subscription, or force-remove the old one?
In MB I have no way to unregister since the registration was done from ESB.
This seems to be because the previous durable subscription was not deactivated properly (similar issue is reported here )hence when redeploying MB will not allow to have the same durable subscription ID for two subscribers unless it is a shared subscription.
On a side note from MB 3.1.0 on wards you can close active durable subscribers from the MB console.