【发布时间】:2014-12-22 11:08:06
【问题描述】:
使用 ActiveMQ-5.10。
重启broker后,客户端似乎无法恢复,永远吐了。客户抛出
[ 2014-12-18 18:17:58,852 [StatsCollector-3] jmx.TCAQueueSizeMonitor.getPendingQueueSize():68 错误]:获取 TCA 队列大小状态时出现异常!!! javax.jms.IllegalStateException:会话已关闭
at org.apache.activemq.ActiveMQSession.checkClosed(ActiveMQSession.java:767)
at org.apache.activemq.ActiveMQSession.createBrowser(ActiveMQSession.java:1425)
at org.apache.activemq.jms.pool.PooledSession.createBrowser(PooledSession.java:294)
at moss.jmx.TCAQueueSizeMonitor.getPendingQueueSize(TCAQueueSizeMonitor.java:63)
at moss.jmx.TCAQueueSizeMonitor.getTCAQueueSizeStatus(TCAQueueSizeMonitor.java:101)
at moss.jmx.TCAHeartBeatStatsCollector.run(TCAHeartBeatStatsCollector.java:60)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Session 被关闭一次,然后下面的异常不断出现:
[ 2014-12-19 00:00:06,176 [securityEventDataSubscriberContainer-4105] listener.DefaultMessageListenerContainer.handleListenerSetupFailure():842 WARN ]:目标“topic://check.newSecurityPublish”的 JMS 消息侦听器调用程序设置失败 -试图恢复。原因:org.apache.activemq.ConnectionFailedException:JMS 连接失败:连接被拒绝
[ 2014-12-19 00:00:06,476 [securityEventDataSubscriberContainer-4105] listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful():891 INFO ]:成功刷新 JMS 连接
请注意,我们只为一位客户看到这种情况,有时也会出现这种情况。其他客户端能够与代理正常通信。
谢谢, 阿努杰
【问题讨论】: