I have seen this when the load on the queue manager/server is at a high level because of the instances of the applications. When running a number of instances I have seen a potential possibility of a failure. Especially in a MCONN, MQOPEN, MQPUT, MQCLOSE, MQDISC. Also, depending on whether the instances are threads or process there could be an issue when each thread is doing a connection. Although its rare I have seen more problems with processes than threads. As for it stating a 'create object error' I don't recall getting that error, but then again it has been a while since I put a system under duress. One option you mention is a positive one. The second is to stagger each instance of an app, unless there is an actual need to create 50 instances of the application. Another is to verify that you have configured your client instances allowed for the queue manager.
Unless the applications require a constant connection what you may want to do is create a pool of connections via a thread pool. It's simple, well not for everyone, and based on the number of instances required they can use the existing connections or if required additional connections within the pool can be made. One other suggestion is to put a timestamp before the MQCONN and one at MQDISC. Kick off 20-50 instances of the application at once and see where the delay is. If the applications are in a wait state to long it will actually fail. That I do know because I have reproduced that a number of times when doing high volume/client connections for WMQ. This is a bugger to track down, but you may need to try different configurations in order to determine the best route for application process, system load, thread or process, and so forth. Chris |---------+-------------------------------> | | "Faizel Sedick" | | | <[EMAIL PROTECTED]| | | RTHS.CO.ZA> | | | Sent by: "MQSeries | | | List" | | | <[EMAIL PROTECTED]| | | C.AT> | | | | | | | | | 01/23/2004 09:01 AM | | | Please respond to | | | "MQSeries List" | | | | |---------+-------------------------------> >------------------------------------------------------------------------------------------------------------------------------| | | | To: [EMAIL PROTECTED] | | cc: | | Subject: Re: MQ connect errors | | | >------------------------------------------------------------------------------------------------------------------------------| What I meant was that the actual app does not return MQ error codes. It only states that the operation as a whole failed. When I try to recreate the behaviour of the app using C code I get and error when doing similtaneous MQCONN calls. ie I run 50 instances of an app so there is potentialy 50 client connect calls which seems to generate the 2059 error. Strange. I have advised the application team not to do the continuous connect/disconnect, but to stay connected as they do constantly write to queues. That will fix their problem, but I am still can't accept this behavour. Cheers Faizel -----Original Message----- From: Wyatt, T. Rob [mailto:[EMAIL PROTECTED] Sent: Friday, 23 January 2004 15:56 To: [EMAIL PROTECTED] Subject: Re: MQ connect errors Hi there, If your application does not use native MQI calls, then what is it? All of the Java-based APIs supplied by IBM provide access to the MQ Reason and Completion codes. I would think that the VB API would as well but I don't use it and don't know. Have you turned on all your event types? Sometimes this can be quite helpful in discovering exactly what call failed and on which object. Is that log entry from the host or the client? -- T.Rob -----Original Message----- From: Faizel Sedick [mailto:[EMAIL PROTECTED] Sent: Friday, January 23, 2004 4:07 AM To: [EMAIL PROTECTED] Subject: MQ connect errors I am trying to simulate a problem we currently have in production. This is what happens in production: A client application on Windows starts 10 instances of itself, connects to the same QM and the same queue at the same time. It then puts a message and disconnects. Some of the instances fail with a create object error. Its not native MQI calls and does not return MQ error codes. I asume that the create object error is either the creation of the queue or queue manager object, so it either fails on MQOPEN or MQCONNECT call. I tried to simulate this by running 20 apps that write 1000 messages to the same queue. First I create the loop around the MQOPEN/PUT/CLOSE calls. ie the app stays connected to the queue manager and then opens, puts and closes the 1000 times. This finished with no errors. Then I put the loop around MQCONN/OPEN/PUT/CLOSE/DISC and a few of them failed with 2059 errors. The error logs just give the ususal "AMQ9202: Remote host 'w31873079 (10.36.137.79) (1414)' not available" error. There is nothing in any other error logs or FDC files created. Can anyone explain this. Does the listener just fail to start up connections? ---------------------------------------------------------------------------- Faizel Sedick Woolworths Integration IBM MQSeries Certified Specialist, Developer & Solutions Expert Email: [EMAIL PROTECTED] Phone: +27 21 407 2452 Cell: +27 83 251 9361 ----------------------------------------------------------------------------------- Please note: This e-mail and its contents are subject to a disclaimer which can be viewed at http://www.woolworths.co.za/disclaimer. Should you be unable to access the link please e-mail [EMAIL PROTECTED] and a copy of the disclaimer will be e-mailed to you. ----------------------------------------------------------------------------------- Please note: This e-mail and its contents are subject to a disclaimer which can be viewed at http://www.woolworths.co.za/disclaimer. Should you be unable to access the link please e-mail [EMAIL PROTECTED] and a copy of the disclaimer will be e-mailed to you. Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive