简体   繁体   English

wso2mb:持久订户错误

[英]wso2mb: error with durable subscriber

I am using WSO2MB version 2.1.1. 我正在使用WSO2MB版本2.1.1。

I have two ESB processes that have subscribed to a topic queue using a durable subscription. 我有两个ESB进程已使用持久订阅订阅了主题队列。

Now, the processes have been redeployed and they cannot listen to the topic anymore. 现在,流程已被重新部署,他们不再能够收听该主题。

In the ESB log I see: 在ESB日志中,我看到:

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: 在MB日志中,我看到:

  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. 在MB中,由于注册是从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 . 这似乎是因为先前的持久订阅未正确停用( 此处报告类似问题),因此在重新部署MB时,除非是共享订阅,否则不允许两个订户具有相同的持久订阅ID。

On a side note from MB 3.1.0 on wards you can close active durable subscribers from the MB console. 在病房MB 3.1.0的旁注中,您可以从MB控制台关闭活动的持久订户。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM