websphere mq 不能访问集群中其它节点对列

websphere mq 不能访问集群中其它节点对列

2008-03-23 12:49:02,310 WARN  [CMPP Protocol Thread :adaptor2 -- 58] [com.arjuna.ats.arjuna.logging.arjLoggerI18N] [com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator_2] TwoPhaseCoordinator.beforeCompletion - failed for com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple@f69bf2
org.springframework.jms.InvalidDestinationException: MQJMS2008: 未能打开 MQ 队列 CENTER; nested exception is javax.jms.InvalidDestinationException: MQJMS2008: 未能打开 MQ 队列 CENTER; nested exception is com.ibm.mq.MQException: MQJE001: 完成代码是 2,原因为 2085
Caused by:
javax.jms.InvalidDestinationException: MQJMS2008: 未能打开 MQ 队列 CENTER
        at com.ibm.mq.jms.MQQueueServices.getQueueOpenException(MQQueueServices.java:412)
        at com.ibm.mq.jms.MQQueueServices.getOutputQueue(MQQueueServices.java:354)
        at com.ibm.mq.jms.JMSServicesMgr.getOutputQueue(JMSServicesMgr.java:145)
        at com.ibm.mq.jms.MQSession.createQSender(MQSession.java:6359)
        at com.ibm.mq.jms.MQQueueSession.createSender(MQQueueSession.java:240)
        at com.ibm.mq.jms.MQQueueSession.createProducer(MQQueueSession.java:360)
        at org.springframework.jms.core.JmsTemplate.doCreateProducer(JmsTemplate.java:846)
        at org.springframework.jms.core.JmsTemplate.createProducer(JmsTemplate.java:827)
        at org.springframework.jms.core.JmsTemplate.doSend(JmsTemplate.java:505)
        at org.springframework.jms.core.JmsTemplate$2.doInJms(JmsTemplate.java:477)
        at org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:428)
        at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:475)
        at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:467)
        at com.wxxr.common.service.JMSDataTransferer.transfer(JMSDataTransferer.java:48)
        at com.wxxr.workstation.jboss.service.WSDataTransferInterceptor$1.invoke(WSDataTransferInterceptor.java:66)
        at com.wxxr.common.service.UserCacheLoaderService$updateObject_7337301020227518154.invokeNext(UserCacheLoaderService$updateObject_7337301020227518154.java)
        at com.wxxr.common.service.UserCacheLoaderService.updateObject(UserCacheLoaderService.java)
        at com.wxxr.common.service.BizObjectCacheLoader.updateNode(BizObjectCacheLoader.java:391)
        at com.wxxr.common.service.BizObjectCacheLoader.put(BizObjectCacheLoader.java:255)
        at com.wxxr.common.service.BizObjectCacheLoader.prepare(BizObjectCacheLoader.java:479)
        at org.jboss.cache.interceptors.CacheStoreInterceptor.prepareCacheLoader(CacheStoreInterceptor.java:258)
        at org.jboss.cache.interceptors.CacheStoreInterceptor.invoke(CacheStoreInterceptor.java:131)
        at org.jboss.cache.interceptors.Interceptor.invoke(Interceptor.java:68)
        at org.jboss.cache.interceptors.TxInterceptor.runPreparePhase(TxInterceptor.java:873)
        at org.jboss.cache.interceptors.TxInterceptor$LocalSynchronizationHandler.beforeCompletion(TxInterceptor.java:1156)
        at org.jboss.cache.interceptors.OrderedSynchronizationHandler.beforeCompletion(OrderedSynchronizationHandler.java:75)
        at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.beforeCompletion(SynchronizationImple.java:114)
        at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.beforeCompletion(TwoPhaseCoordinator.java:247)
        at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.end(TwoPhaseCoordinator.java:86)
        at com.arjuna.ats.arjuna.AtomicAction.commit(AtomicAction.java:177)
        at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.commitAndDisassociate(TransactionImple.java:1389)
        at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.commit(BaseTransaction.java:135)
        at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.commit(BaseTransactionManagerDelegate.java:87)
        at org.jboss.aspects.tx.TxPolicy.endTransaction(TxPolicy.java:175)
        at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:87)
        at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
        at com.wxxr.common.jboss.ExJMSGateKeeper$MyMessageListener$onMessage_N6811220613805550889.invokeNext(ExJMSGateKeeper$MyMessageListener$onMessage_N6811220613805550889.java)
        at com.wxxr.common.jboss.ExJMSGateKeeper$MyMessageListener.onMessage(ExJMSGateKeeper.java)
        at com.wxxr.network.adaptor.cmpp.CMPPProtocolService.processReceivedMessage(CMPPProtocolService.java:643)
        at com.wxxr.network.adaptor.cmpp.CMPPProtocolService.handleEvent(CMPPProtocolService.java:627)
        at com.wxxr.network.adaptor.cmpp.AbstractCMPPSession.processMessage(AbstractCMPPSession.java:481)
        at com.wxxr.network.adaptor.cmpp.AbstractCMPPClientSession.processReceivePacket(AbstractCMPPClientSession.java:73)
        at com.wxxr.network.adaptor.cmpp.AbstractCMPPSession$4.run(AbstractCMPPSession.java:1001)
        at com.hygensoft.common.util.AnotherThreadPoolExecutor$Worker.runTask(AnotherThreadPoolExecutor.java:397)
        at com.hygensoft.common.util.AnotherThreadPoolExecutor$Worker.run(AnotherThreadPoolExecutor.java:422)
        at java.lang.Thread.run(Thread.java:595)

环境:

2008年01月23日 20时05分54秒 - Process(28036.1) User(jboss) Program(dspmq)
AMQ6047: Conversion not supported.
 
EXPLANATION:
WebSphere MQ is unable to convert string data tagged in CCSID 0 to data in
CCSID 0.
ACTION:
Check the WebSphere MQ Application Programming Reference Appendix and the
appropriate National Language Support publications to see if the CCSIDs  are
supported by your system.
----- amqxfdcx.c : 768 --------------------------------------------------------



192.168.5.9

InitCtx> dis q(queue.SendQueue)
 
    FAILIFQUIESCE(YES)
    QUEUE(CENTER)
    QMANAGER()
    PERSISTENCE(APP)
    CCSID(1208)
    TARGCLIENT(JMS)
    ENCODING(NATIVE)
    PRIORITY(APP)
    EXPIRY(APP)
    VERSION(6)
 
InitCtx>




192.168.5.10
InitCtx> dis q(queue.SendQueue)
 
    FAILIFQUIESCE(YES)
    QUEUE(CENTER)
    QMANAGER()
    PERSISTENCE(APP)
    CCSID(1208)
    TARGCLIENT(JMS)
    ENCODING(NATIVE)
    PRIORITY(APP)
    EXPIRY(APP)
    VERSION(6)
 
InitCtx>

192.168.1.6
InitCtx> dis q(queue.ReceiveQueue)
 
    FAILIFQUIESCE(YES)
    QUEUE(CENTER)
    QMANAGER(QM.CENTER)
    PERSISTENCE(APP)
    CCSID(1208)
    TARGCLIENT(JMS)
    ENCODING(NATIVE)
    PRIORITY(APP)
    EXPIRY(APP)
    VERSION(6)
InitCtx> dis q(queue.SendQueue.guangzhou)
 
    FAILIFQUIESCE(YES)
    QUEUE(GUANGZHOU)
    QMANAGER()
    PERSISTENCE(APP)
    CCSID(1208)
    TARGCLIENT(JMS)
    ENCODING(NATIVE)
    PRIORITY(APP)
    EXPIRY(APP)
    VERSION(6)
InitCtx>


经查文档:
zh_CN.gb18030 简体中文 GB18030 5488

参考链接:
How to find the CCSID value associated with the coded character set for a locale in a UNIX session
MQ client does not work unless export MQCCSID is used
XC076001 with a reason code of xecX_E_CONV_NOT_SUP when LC_ALL is left blank


解决方案:
集群环境出了问题,原因不详,在CENTER 节点,找到不正常的对列将其删除.
RESET CLUSTER(WXXRCLUS) ACTION(FORCEREMOVE) QMID('QM.GUANGDONG2_2008-03-10_14.37.13') QUEUES(YES)
(注:其中的QMID 可以通过websphere MQ 资源管理器/队列管理器集群/WXXRCLUS/完整存储库/qm.center 中找到不正常队列的QMID.)


方向:分布式系统设计

你可能感兴趣的:(websphere mq 不能访问集群中其它节点对列)