Author |
Message
|
i_am_a_noob |
Posted: Fri Mar 10, 2006 3:36 am Post subject: Cannot set parameter Discint for server connection channel ? |
|
|
Newbie
Joined: 10 Mar 2006 Posts: 8
|
hello, i have just read quickly the intercommunication documentation and a few of the threads here.
my problem is the following :
i'm using
MQ-Series 5.3.0.6 (CSD06) On AIX servers
a Client Application (Netonomy) is accessing the Queue manager through a server connection channel.
Once Netonomy has started a connection it is permanent,
unfortunately after a period of inactivity (60 minutes is my guess ) , the socket connection remains active, the server connection can still be seen under runmqsc via a display chstatus(*) but it is not usable from netonomy.
==> Netonomy then opens a new server connection channel instance.
after a time this results in the queue manager being overloaded and unable to fire a new server connection channel.
i thought i would change the Discint parameter to 0, but though it says otherwise in the manual, that parameter doesn't seem to be available for my server connection channel
any idea why ?
if you need more information : please let me know, thanks by advance for your help  |
|
Back to top |
|
 |
wschutz |
Posted: Fri Mar 10, 2006 3:39 am Post subject: |
|
|
 Jedi Knight
Joined: 02 Jun 2005 Posts: 3316 Location: IBM (retired)
|
Quote: |
This parameter is valid only for channels with a channel type (CHLTYPE) of SVRCONN (on z/OS only), SDR, SVR, CLUSSDR, CLUSRCVR. |
Yup, DISCINT on SVRCONN channels only applies to z/OS .... _________________ -wayne |
|
Back to top |
|
 |
i_am_a_noob |
Posted: Fri Mar 10, 2006 4:53 am Post subject: |
|
|
Newbie
Joined: 10 Mar 2006 Posts: 8
|
then what should i do instead ?  |
|
Back to top |
|
 |
mvic |
Posted: Fri Mar 10, 2006 5:54 am Post subject: Re: Cannot set parameter Discint for server connection chann |
|
|
 Jedi
Joined: 09 Mar 2004 Posts: 2080
|
i_am_a_noob wrote: |
the server connection can still be seen under runmqsc via a display chstatus(*) but it is not usable from netonomy. |
Please describe more about what is seen at this time - are there any errors in the queue manager or MQ-wide error logs? What EXACTLY is meant by "usable from netonomy"? Could it be that a firewall is interfering with the network connections? The server side might only learn of this when TCP/IP chooses to let it know. |
|
Back to top |
|
 |
i_am_a_noob |
Posted: Fri Mar 10, 2006 6:18 am Post subject: |
|
|
Newbie
Joined: 10 Mar 2006 Posts: 8
|
the connection is direct (no firewall),
this is the java errors we get in the Netonomy logs (yes i know it s a bit long : sorry about that :| ):
it fails to open the queue, then fails to disconnect.
+2006-03-10 11:00:10.046;109DFB5635CPool-9,Thread-0263F2;DEBUG;NIL;Pool-9,Thread-0;EXCEPTION;0003300;An exception [description="com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2019"] was raised.;
<DEBUG_INFO>
<EXCEPTION class="com.ibm.mq.MQException" message="MQJE001: Completion Code 2, Reason 2019">
<STACKTRACE>
com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2019
at com.ibm.mq.MQQueueManager.accessQueue(MQQueueManager.java:1544)
at com.ibm.mq.jms.MQQueueServices.getOutputQueue(MQQueueServices.java:322)
at com.ibm.mq.jms.JMSServicesMgr.getOutputQueue(JMSServicesMgr.java:137)
at com.ibm.mq.jms.MQSession.createQSender(MQSession.java:6090)
at com.ibm.mq.jms.MQQueueSession.createSender(MQQueueSession.java:259)
at com.netonomy.eai.drivers.jms.JmsQueue$QueueData.open(JmsQueue.java:100)
at com.netonomy.eai.drivers.jms.JmsQueue$QueueData.<init>(JmsQueue.java:81)
at com.netonomy.eai.drivers.jms.JmsQueue.getData(JmsQueue.java(Compiled Code))
at com.netonomy.eai.drivers.jms.JmsQueue.dosend_(JmsQueue.java:377)
at com.netonomy.eai.drivers.jms.JmsQueue.send_(JmsQueue.java:409)
at com.netonomy.eai.drivers.jms.JmsQueue.send(JmsQueue.java:444)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.Loop.send(Loop.java:25)
at com.netonomy.eai.dataflow.ExceptionConverter.send(ExceptionConverter.java:64)
at com.netonomy.eai.dataflow.Retry.send(Retry.java:36)
at com.netonomy.eai.dataflow.Translator.send(Translator.java:184)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:196)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:214)
at com.netonomy.eai.api.workflow.Workflow.start(Workflow.java:293)
at com.netonomy.eai.workflow.WFInit.send(WFInit.java:75)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.ErrorHandler.send(ErrorHandler.java:39)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:196)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:214)
at com.netonomy.eai.api.workflow.Workflow.start(Workflow.java:293)
at com.netonomy.eai.workflow.WFInit.send(WFInit.java:75)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.Translator.send(Translator.java:184)
at com.netonomy.eai.dataflow.Retry.send(Retry.java:36)
at com.netonomy.eai.dataflow.ErrorHandler.send(ErrorHandler.java:39)
at com.netonomy.eai.dataflow.ThreadManager.run(ThreadManager.java:280)
at java.lang.Thread.run(Thread.java:568)
</STACKTRACE>
</EXCEPTION>
</DEBUG_INFO>
+2006-03-10 11:00:10.047;109DFB5635CPool-9,Thread-0263F4;DEBUG;NIL;Pool-9,Thread-0;EXCEPTION;0003300;An exception [description="javax.jms.JMSException: MQJMS2008: failed to open MQ queue MyNy_UGM.WM_BSP.IN.Q"] was raised.;
<DEBUG_INFO>
<EXCEPTION class="javax.jms.JMSException" message="MQJMS2008: failed to open MQ queue MyNy_UGM.WM_BSP.IN.Q">
<STACKTRACE>
javax.jms.JMSException: MQJMS2008: failed to open MQ queue MyNy_UGM.WM_BSP.IN.Q
at com.ibm.mq.jms.MQQueueServices.getQueueOpenException(MQQueueServices.java:398)
at com.ibm.mq.jms.MQQueueServices.getOutputQueue(MQQueueServices.java:325)
at com.ibm.mq.jms.JMSServicesMgr.getOutputQueue(JMSServicesMgr.java:137)
at com.ibm.mq.jms.MQSession.createQSender(MQSession.java:6090)
at com.ibm.mq.jms.MQQueueSession.createSender(MQQueueSession.java:259)
at com.netonomy.eai.drivers.jms.JmsQueue$QueueData.open(JmsQueue.java:100)
at com.netonomy.eai.drivers.jms.JmsQueue$QueueData.<init>(JmsQueue.java:81)
at com.netonomy.eai.drivers.jms.JmsQueue.getData(JmsQueue.java(Compiled Code))
at com.netonomy.eai.drivers.jms.JmsQueue.dosend_(JmsQueue.java:377)
at com.netonomy.eai.drivers.jms.JmsQueue.send_(JmsQueue.java:409)
at com.netonomy.eai.drivers.jms.JmsQueue.send(JmsQueue.java:444)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.Loop.send(Loop.java:25)
at com.netonomy.eai.dataflow.ExceptionConverter.send(ExceptionConverter.java:64)
at com.netonomy.eai.dataflow.Retry.send(Retry.java:36)
at com.netonomy.eai.dataflow.Translator.send(Translator.java:184)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:196)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:214)
at com.netonomy.eai.api.workflow.Workflow.start(Workflow.java:293)
at com.netonomy.eai.workflow.WFInit.send(WFInit.java:75)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.ErrorHandler.send(ErrorHandler.java:39)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:196)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:214)
at com.netonomy.eai.api.workflow.Workflow.start(Workflow.java:293)
at com.netonomy.eai.workflow.WFInit.send(WFInit.java:75)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.Translator.send(Translator.java:184)
at com.netonomy.eai.dataflow.Retry.send(Retry.java:36)
at com.netonomy.eai.dataflow.ErrorHandler.send(ErrorHandler.java:39)
at com.netonomy.eai.dataflow.ThreadManager.run(ThreadManager.java:280)
at java.lang.Thread.run(Thread.java:568)
</STACKTRACE>
</EXCEPTION>
</DEBUG_INFO>
+2006-03-10 11:00:10.047;109DFB5635CPool-9,Thread-0263F6;DEBUG;ISF;Pool-9,Thread-0;MESSAGE;NONE;Closing QueueSession ;
+2006-03-10 11:00:10.051;109DFB5635CPool-9,Thread-0263F8;DEBUG;ISF;Pool-9,Thread-0;MESSAGE;NONE;--> e.getErrorCode()=MQJMS2003;
+2006-03-10 11:00:10.052;109DFB5635CPool-9,Thread-0263FA;DEBUG;NIL;Pool-9,Thread-0;EXCEPTION;0003300;An exception [description="com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2019"] was raised.;
<DEBUG_INFO>
+2006-03-10 11:00:10.047;109DFB5635CPool-9,Thread-0263F6;DEBUG;ISF;Pool-9,Thread-0;MESSAGE;NONE;Closing QueueSession ;
+2006-03-10 11:00:10.051;109DFB5635CPool-9,Thread-0263F8;DEBUG;ISF;Pool-9,Thread-0;MESSAGE;NONE;--> e.getErrorCode()=MQJMS2003;
+2006-03-10 11:00:10.052;109DFB5635CPool-9,Thread-0263FA;DEBUG;NIL;Pool-9,Thread-0;EXCEPTION;0003300;An exception [description="com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2019"] was raised.;
<DEBUG_INFO>
<EXCEPTION class="com.ibm.mq.MQException" message="MQJE001: Completion Code 2, Reason 2019">
<STACKTRACE>
com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2019
at com.ibm.mq.StoredManagedConnection.connectionClosed(StoredManagedConnection.java:258)
at com.ibm.mq.MQManagedConnectionJ11.fireConnectionClosedEvent(MQManagedConnectionJ11.java:713)
at com.ibm.mq.MQQueueManager.disconnect(MQQueueManager.java:1009)
at com.ibm.mq.jms.MQSession.close(MQSession.java:1116)
at com.netonomy.eai.drivers.jms.JmsQueue$QueueData.close(JmsQueue.java:118)
at com.netonomy.eai.drivers.jms.JmsQueue$QueueData.<init>(JmsQueue.java:83)
at com.netonomy.eai.drivers.jms.JmsQueue.getData(JmsQueue.java(Compiled Code))
at com.netonomy.eai.drivers.jms.JmsQueue.dosend_(JmsQueue.java:377)
at com.netonomy.eai.drivers.jms.JmsQueue.send_(JmsQueue.java:409)
at com.netonomy.eai.drivers.jms.JmsQueue.send(JmsQueue.java:444)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.Loop.send(Loop.java:25)
at com.netonomy.eai.dataflow.ExceptionConverter.send(ExceptionConverter.java:64)
at com.netonomy.eai.dataflow.Retry.send(Retry.java:36)
at com.netonomy.eai.dataflow.Translator.send(Translator.java:184)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:196)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:214)
at com.netonomy.eai.api.workflow.Workflow.start(Workflow.java:293)
at com.netonomy.eai.workflow.WFInit.send(WFInit.java:75)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.ErrorHandler.send(ErrorHandler.java:39)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:196)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:214)
at com.netonomy.eai.api.workflow.Workflow.start(Workflow.java:293)
at com.netonomy.eai.workflow.WFInit.send(WFInit.java:75)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.Translator.send(Translator.java:184)
at com.netonomy.eai.dataflow.Retry.send(Retry.java:36)
at com.netonomy.eai.dataflow.ErrorHandler.send(ErrorHandler.java:39)
at com.netonomy.eai.dataflow.ThreadManager.run(ThreadManager.java:280)
at java.lang.Thread.run(Thread.java:568)
</STACKTRACE>
</EXCEPTION>
</DEBUG_INFO>
+2006-03-10 11:00:10.052;109DFB5635CPool-9,Thread-0263FC;DEBUG;NIL;Pool-9,Thread-0;EXCEPTION;0003300;An exception [description="javax.jms.JMSException: MQJMS2003: failed to disconnect queue manager"] was raised.;
<DEBUG_INFO>
<EXCEPTION class="javax.jms.JMSException" message="MQJMS2003: failed to disconnect queue manager">
<STACKTRACE>
javax.jms.JMSException: MQJMS2003: failed to disconnect queue manager
at com.ibm.mq.jms.services.ConfigEnvironment.newException(ConfigEnvironment.java:553)
at com.ibm.mq.jms.MQSession.close(MQSession.java:1121)
at com.netonomy.eai.drivers.jms.JmsQueue$QueueData.close(JmsQueue.java:118)
at com.netonomy.eai.drivers.jms.JmsQueue$QueueData.<init>(JmsQueue.java:83)
at com.netonomy.eai.drivers.jms.JmsQueue.getData(JmsQueue.java(Compiled Code))
at com.netonomy.eai.drivers.jms.JmsQueue.dosend_(JmsQueue.java:377)
at com.netonomy.eai.drivers.jms.JmsQueue.send_(JmsQueue.java:409)
at com.netonomy.eai.drivers.jms.JmsQueue.send(JmsQueue.java:444)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.Loop.send(Loop.java:25)
at com.netonomy.eai.dataflow.ExceptionConverter.send(ExceptionConverter.java:64)
at com.netonomy.eai.dataflow.Retry.send(Retry.java:36)
at com.netonomy.eai.dataflow.Translator.send(Translator.java:184)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:196)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:214)
at com.netonomy.eai.api.workflow.Workflow.start(Workflow.java:293)
at com.netonomy.eai.workflow.WFInit.send(WFInit.java:75)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.ErrorHandler.send(ErrorHandler.java:39)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:196)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:214)
at com.netonomy.eai.api.workflow.Workflow.start(Workflow.java:293)
at com.netonomy.eai.workflow.WFInit.send(WFInit.java:75)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.Translator.send(Translator.java:184)
at com.netonomy.eai.dataflow.Retry.send(Retry.java:36)
at com.netonomy.eai.dataflow.ErrorHandler.send(ErrorHandler.java:39)
at com.netonomy.eai.dataflow.ThreadManager.run(ThreadManager.java:280)
at java.lang.Thread.run(Thread.java:568)
</STACKTRACE>
</EXCEPTION>
</DEBUG_INFO>
+2006-03-10 11:00:10.053;109DFB5635CPool-9,Thread-0263FE;DEBUG;ISF;Pool-9,Thread-0;MESSAGE;NONE;--> e.getErrorCode()=MQJMS2008;
+2006-03-10 11:00:10.053;109DFB5635CPool-9,Thread-026400;DEBUG;NIL;Pool-9,Thread-0;EXCEPTION;0003300;An exception [description="com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2019"] was raised.;
<DEBUG_INFO>
<EXCEPTION class="com.ibm.mq.MQException" message="MQJE001: Completion Code 2, Reason 2019">
<STACKTRACE>
com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2019
at com.ibm.mq.MQQueueManager.accessQueue(MQQueueManager.java:1544)
at com.ibm.mq.jms.MQQueueServices.getOutputQueue(MQQueueServices.java:322)
at com.ibm.mq.jms.JMSServicesMgr.getOutputQueue(JMSServicesMgr.java:137)
at com.ibm.mq.jms.MQSession.createQSender(MQSession.java:6090)
at com.ibm.mq.jms.MQQueueSession.createSender(MQQueueSession.java:259)
at com.netonomy.eai.drivers.jms.JmsQueue$QueueData.open(JmsQueue.java:100)
at com.netonomy.eai.drivers.jms.JmsQueue$QueueData.<init>(JmsQueue.java:81)
at com.netonomy.eai.drivers.jms.JmsQueue.getData(JmsQueue.java(Compiled Code))
at com.netonomy.eai.drivers.jms.JmsQueue.dosend_(JmsQueue.java:377)
at com.netonomy.eai.drivers.jms.JmsQueue.send_(JmsQueue.java:409)
at com.netonomy.eai.drivers.jms.JmsQueue.send(JmsQueue.java:444)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.Loop.send(Loop.java:25)
at com.netonomy.eai.dataflow.ExceptionConverter.send(ExceptionConverter.java:64)
at com.netonomy.eai.dataflow.Retry.send(Retry.java:36)
at com.netonomy.eai.dataflow.Translator.send(Translator.java:184)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:196)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:214)
at com.netonomy.eai.api.workflow.Workflow.start(Workflow.java:293)
at com.netonomy.eai.workflow.WFInit.send(WFInit.java:75)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.ErrorHandler.send(ErrorHandler.java:39)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:196)
at com.netonomy.eai.workflow.WFSend.next(WFSend.java:214)
at com.netonomy.eai.api.workflow.Workflow.start(Workflow.java:293)
at com.netonomy.eai.workflow.WFInit.send(WFInit.java:75)
at com.netonomy.eai.dataflow.MessageDispatcher.send(MessageDispatcher.java:45)
at com.netonomy.eai.dataflow.Translator.send(Translator.java:184)
at com.netonomy.eai.dataflow.Retry.send(Retry.java:36)
at com.netonomy.eai.dataflow.ErrorHandler.send(ErrorHandler.java:39)
at com.netonomy.eai.dataflow.ThreadManager.run(ThreadManager.java:280)
at java.lang.Thread.run(Thread.java:568)
</STACKTRACE>
</EXCEPTION>
</DEBUG_INFO>
...
NB : we had to lower the system parameter TCP_keep_alive to 250 seconds on the MQ Server.
Or else it takes forever before the application realise the connection is broken. |
|
Back to top |
|
 |
mvic |
Posted: Fri Mar 10, 2006 6:27 am Post subject: |
|
|
 Jedi
Joined: 09 Mar 2004 Posts: 2080
|
|
Back to top |
|
 |
i_am_a_noob |
Posted: Fri Mar 10, 2006 6:37 am Post subject: |
|
|
Newbie
Joined: 10 Mar 2006 Posts: 8
|
that's what i am trying to do
but the problem is netonomy is a black box product to me, and i need to find proofs that either MQ-Series or Netonomy is doing something wrong (and i need to know which one :| )
so i'm interested in any possible mean of auditing what is going on exactly.
I strongly suspect it s a timeout issue since it only happens after xx minutes of idleness.
but where is that timeout parameter ?  |
|
Back to top |
|
 |
i_am_a_noob |
Posted: Fri Mar 10, 2006 8:25 am Post subject: |
|
|
Newbie
Joined: 10 Mar 2006 Posts: 8
|
also if anybody has a work-around solution in mind (other than restarting the queue manager) ... ? |
|
Back to top |
|
 |
PeterPotkay |
Posted: Fri Mar 10, 2006 11:18 am Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
The QM is not killing the channels. It is not invalidating the connection. Restarting the QM only postpones the problem.
I suspect that since 2019 is NOT telling you the connection is broken, that means the app is still connected, but chooses to give up when it gets this error and make a new connection.
Read up on the 2019 code. _________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
i_am_a_noob |
Posted: Mon Mar 13, 2006 3:15 am Post subject: |
|
|
Newbie
Joined: 10 Mar 2006 Posts: 8
|
bah, it was a firewall issue indeed  |
|
Back to top |
|
 |
sandy_harry |
Posted: Mon Apr 03, 2006 10:05 am Post subject: Getting the same issue again |
|
|
 Newbie
Joined: 29 Jun 2005 Posts: 8 Location: Portsmouth, NH
|
Hi,
I am getting the same error as was discussed in this post. The author of this post mentioned that it was a Firewall issue. Can you please elaborate? I am using a couple of Client channels to connect to remote QMs from my WAS 5.0 app server. While this is not a very big problem right now since the third or fourth subsequent reconnect option is successful, I would still like to get rid of this problem once and for all. If somebody could give me the directives that I can pass on to my Network Support guys, it will be very helpful. _________________ Regards,
Sandy |
|
Back to top |
|
 |
mvic |
Posted: Mon Apr 03, 2006 10:18 am Post subject: Re: Getting the same issue again |
|
|
 Jedi
Joined: 09 Mar 2004 Posts: 2080
|
Can you please (a) start a new thread to discuss this, and (b) post some error messages that show details of the problem? Thanks |
|
Back to top |
|
 |
|