Error Log:
MQJE001: An MQException occurred: Completion Code 2, Reason 2009
MQJE016: MQ queue manager closed channel immediately during connect
Closure reason = 2009
MQJE001: An MQException occurred: Completion Code 2, Reason 2009
MQJE016: MQ queue manager closed channel immediately during connect
Closure reason = 2009
com.ibm.mq.MQException: MQJE001: An MQException occurred: Completion Code 2, Reason 2009
MQJE016: MQ queue manager closed channel immediately during connect
Closure reason = 2009
at com.ibm.mq.MQManagedConnectionJ11.
at com.ibm.mq.MQClientManagedConnectionFactoryJ11._createManagedConnection(MQClientManagedConnectionFactoryJ11.java:276)
at com.ibm.mq.MQClientManagedConnectionFactoryJ11.createManagedConnection(MQClientManagedConnectionFactoryJ11.java:296)
at com.ibm.mq.StoredManagedConnection.
.......................
at com.ibm.rfidic.test.utils.mq.RFIDICMQDataSource.clearQueue(RFIDICMQDataSource.java:209)
at com.ibm.rfidic.test.mdm.fvt.testcases.FVT_PEDIGREE_EVENTS_SRV_0055.testFVT_PEDIGREE_EVENTS_SRV_0055(FVT_PEDIGREE_EVENTS_SRV_0055.java:81)
........................
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: com.ibm.mqservices.MQInternalException: MQJE001: An MQException occurred: Completion Code 2, Reason 2009
MQJE016: MQ queue manager closed channel immediately during connect
Closure reason = 2009
at com.ibm.mq.MQInternalCommunications.establishChannel(MQInternalCommunications.java:1544)
at com.ibm.mq.MQInternalCommunications.
at com.ibm.mq.MQSESSIONClient.MQCONN(MQSESSIONClient.java:1316)
at com.ibm.mq.MQManagedConnectionJ11.
... 36 more
MQJE001: An MQException occurred: Completion Code 2, Reason 2009
MQJE016: MQ queue manager closed channel immediately during connect
Closure reason = 2009
MQJE001: An MQException occurred: Completion Code 2, Reason 2009
MQJE016: MQ queue manager closed channel immediately during connect
Closure reason = 2009
com.ibm.mq.MQException: MQJE001: An MQException occurred: Completion Code 2, Reason 2009
MQJE016: MQ queue manager closed channel immediately during connect
Closure reason = 2009
at com.ibm.mq.MQManagedConnectionJ11.
..............
at com.ibm.rfidic.test.utils.mq.RFIDICMQDataSource.connect(RFIDICMQDataSource.java:173)
at com.ibm.rfidic.test.utils.mq.RFIDICMQDataSource.write(RFIDICMQDataSource.java:103)
at com.ibm.rfidic.test.utils.mq.RFIDICMQDataSource.write(RFIDICMQDataSource.java:149)
at com.ibm.rfidic.test.mdm.fvt.testcases.FVT_PEDIGREE_EVENTS_SRV_0055.testFVT_PEDIGREE_EVENTS_SRV_0055(FVT_PEDIGREE_EVENTS_SRV_0055.java:82)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:64)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at junit.framework.TestCase.runTest(TestCase.java:154)
.......................
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: com.ibm.mqservices.MQInternalException: MQJE001: An MQException occurred: Completion Code 2, Reason 2009
MQJE016: MQ queue manager closed channel immediately during connect
Closure reason = 2009
at com.ibm.mq.MQInternalCommunications.establishChannel(MQInternalCommunications.java:1544)
at com.ibm.mq.MQInternalCommunications.
at com.ibm.mq.MQSESSIONClient.MQCONN(MQSESSIONClient.java:1316)
at com.ibm.mq.MQManagedConnectionJ11.
... 36 more
restoreMasterDatafor_partnerPrivate:
[echo] basedir = /home/tsadmin/hxlin/vobs/RFIDICTest/fvt/cdlsrc/com.ibm.rfidic.test.config9.1
[echo] HOME=/home/tsadmin
[echo] Using Oracle
It seems that the problem can be solved by practice 2. What a good news!
Official Detail Document:
http://www-01.ibm.com/support/docview.wss?uid=swg21226703
http://eai.ittoolbox.com/groups/technical-functional/mqseries-l/mqje001-an-mqexception-occurred-completion-code-2-reason-2009-689165
Practices:
2. http://hi.baidu.com/faq0/blog/item/c707cc23006e5c569922ed26.html
linked exception: com.ibm.mq.MQException: MQJE001: An MQException occurred: Completion Code 2, Reason 2009
MQJE016: MQ queue manager closed channel immediately during connect
Closure reason = 2009
/var/mqm/qmgrs/TS!QUEUE!MANAGER/qm.ini
qm.ini
Log:
LogPrimaryFiles=3
LogSecondaryFiles=2
LogFilePages=1024
LogType=CIRCULAR
LogBufferPages=17
LogPath=/var/mqm/log/WNMS3_QM/
LogWriteIntegrity=TripleWrite
Service:
Name=AuthorizationService
EntryPoints=9
ServiceComponent:
Service=AuthorizationService
Name=MQSeries.UNIX.auth.service
Module=/opt/mqm/lib/amqzfu
ComponentDataSize=0
#add below parameters
CHANNELS:
MaxChannels = 600
MaxActiveChannels = 600
TuningParameters:
IPCCECSetSize=4000000
IPCCExtensionSize=128000
TCP:
KeepAlive=Yes
ListenerBacklog=200
It's better to restart MQ before you expect.
1. http://www.itpub.net/695157.html
MQ
unix qm.ini
http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp
System Admin/Configuring WebSphere MQ/Configuring WebSphere MQ /Changing queue manager configuration information /Channels
CHANNELS qm.ini
MaxChannels=100|number
100
MaxActiveChannels=MaxChannels_value
MaxChannels
1. stop QueueManager
2. tune or add the channel paramaters within channel section of qm.ini
( MaxChannels MaxActiveChannels 500)
3. start QueueManager,
4. ok,
qm.ini :
http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/index.jsp
System Admin/Configuring WebSphere MQ/Configuring WebSphere MQ /Changing configuration information on UNIX systems/ Queue manager configuration files, qm.ini )
Channels:
MaxChannels=500
MaxActiveChannels=500
MQIBindType=STANDARD
3.
Mismatching CSD on various platforms should not cause any problems.
Since you got a 2009 error, that means you've gotten farther than
if you got 2058 and 2059, or 2035 authorization problems. You have
successfully connected and then lost the connection. It is false
to say that you did not connect even if the error code occurred
during the MQConn.
You should be looking in the logs on both sides. Host and server.
This may not or may not yield any insite.
2009 is not uncommon for client connections. Innevitably a network
goes down, a line, modem, router etc is flaky or broken, if a
connection to a queue manager has been made then the line drops
"for a client you would see 2009". If the line is totally gone, you
would not see 2009 on a subsequent attempt. Your program should
be changed to try again when a 2009 occurs, in a loop perhaps 5
times.
If some host process resets or closes and opens the client
connection all connected clients would get a 2009. There are many
cases of this issue going back over 5 years. One Guy was getting it after 98 connections.
Change your code and be happy.