Author |
Message
|
Kareem_khan |
Posted: Tue Dec 07, 2004 1:46 pm Post subject: 2059 Error message |
|
|
Apprentice
Joined: 09 Jul 2004 Posts: 27 Location: Jackson,MS
|
Hi we are trying to put messges in Queue loading data from flat file
each flat file will have 1000 submission each submission is convered into
xml file format and posted. That means their will be 1000 messages
continuously putting into queue each time we are getting
Connection to Manager and connection to Queue and putting messge into queue and closing the connection. the bigest problem is after posting
300 or 400 messages we are getting
Quote: |
2059 error message which is random |
What could be possible reason for gettting this kind of 2059.
We are using Native MQseries java code to put message I am novice to s MQSeris your suggestion will be highly appriciated.
Thank you |
|
Back to top |
|
 |
csmith28 |
Posted: Tue Dec 07, 2004 2:09 pm Post subject: |
|
|
 Grand Master
Joined: 15 Jul 2003 Posts: 1196 Location: Arizona
|
2059 X’080B’ MQRC_Q_MGR_NOT_AVAILABLE
On an MQCONN or MQCONNX call, the queue manager identified by the QMgrName
parameter is not available for connection.
v On z/OS:
– For batch applications, this reason can be returned to applications running in
non-WebSphere MQ LPARs.
– For CICS applications, this reason can occur on any call if the original connect specified a
queue manager whose name was recognized, but which is not available.
v On OS/400, this reason can also be returned by the MQOPEN and MQPUT1 calls, when
MQHC_DEF_HCONN is specified for the Hconn parameter by an application running in
compatibility mode.
This reason code can also occur if a WebSphere MQ client application attempts to connect to a
queue manager within a WebSphere MQ client queue-manager group when none of the queue
managers in the group is available for connection (see the QMgrName parameter of the
MQCONN call).
This reason code can also occur if the call is issued by a WebSphere MQ client application and
there is an error with the client-connection or the corresponding server-connection channel
definitions.
On z/OS, this reason code can also occur if the optional OS/390® client attachment feature
has not been installed.
Corrective action: Ensure that the queue manager has been started. If the connection is from a
client application, check the channel definitions. _________________ Yes, I am an agent of Satan but my duties are largely ceremonial. |
|
Back to top |
|
 |
bower5932 |
Posted: Tue Dec 07, 2004 2:18 pm Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
I'm not sure that I understand 100% of your details. I'm assuming that you are client connecting. My guess would be that every now and then you actually have enough clients connected that you max out the channels. There is a MaxActiveChannels and MaxChannels parameter that you might be bumping up against. The default is 100. |
|
Back to top |
|
 |
csmith28 |
Posted: Tue Dec 07, 2004 2:37 pm Post subject: |
|
|
 Grand Master
Joined: 15 Jul 2003 Posts: 1196 Location: Arizona
|
bower5932 wrote: |
I'm not sure that I understand 100% of your details. I'm assuming that you are client connecting. My guess would be that every now and then you actually have enough clients connected that you max out the channels. There is a MaxActiveChannels and MaxChannels parameter that you might be bumping up against. The default is 100. |
If the above is the case, you should be seeing entries in the /var/mqm/qmgrs/MQMGR/errors/AMQERR01.LOG _________________ Yes, I am an agent of Satan but my duties are largely ceremonial. |
|
Back to top |
|
 |
Kareem_khan |
Posted: Tue Dec 07, 2004 2:44 pm Post subject: |
|
|
Apprentice
Joined: 09 Jul 2004 Posts: 27 Location: Jackson,MS
|
Thank you Smith,
But still I am not clear what to do. We are running MQSeries in
AIX environment and CHANNEL CONNECTION that we got is
Server connection channel. only property for CHANNEL that i can change is heartbeat intervel. We are putting message into queue using MQ java Native code and their is listener ie EJB message driven bean on Websphere environment. we stoped the listener and try to put a batch of messages into queue around 1000 our client throw 2059 error in middle of putting message following is the error message that we got from the MQ client which is putting messages. your help will be highly appriciated.
Thank you.
This is the exact error message
MQJE001: An MQException occurred: Completion Code 2, Reason 2059
MQJE011: Socket connection attempt refused
MQJE001: Completion Code 2, Reason 2059
com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2059
at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
172)
at com.ibm.mq.MQClientManagedConnectionFactoryJ11._createManagedConnecti
on(MQClientManagedConnectionFactoryJ11.java:270)
at com.ibm.mq.MQClientManagedConnectionFactoryJ11.createManagedConnectio
n(MQClientManagedConnectionFactoryJ11.java:290)
at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
a:80)
at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
ctionManager.java:150)
at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
a:682)
at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:620)
at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:393) |
|
Back to top |
|
 |
Kareem_khan |
Posted: Tue Dec 07, 2004 2:59 pm Post subject: |
|
|
Apprentice
Joined: 09 Jul 2004 Posts: 27 Location: Jackson,MS
|
hi bower5932,
For every message I am getting QueueManager, Queue Connection
and putting message and closing Queue Connection and disconnecting
QueueManager this I am doing for each message that I am posting.
Where are MaxActiveChannels and MaxChannels parameter I don't see them. We are using SERVER CONNECTION CHANNEL can you please suggest what type of connection channel is better for this simple requirement of puting batch of huge number of messages which might go upto 10000 to 30000 message created from flat files.
Thank you bower. |
|
Back to top |
|
 |
fjb_saper |
Posted: Tue Dec 07, 2004 3:04 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Create one qmgr connection and one queue connection.
create the messages and close when you are done with all of them.
Enjoy  |
|
Back to top |
|
 |
Kareem_khan |
Posted: Tue Dec 07, 2004 3:11 pm Post subject: |
|
|
Apprentice
Joined: 09 Jul 2004 Posts: 27 Location: Jackson,MS
|
[list=]
Quote: |
I'm not sure that I understand 100% of your details. I'm assuming that you are client connecting. My guess would be that every now and then you actually have enough clients connected that you max out the channels. There is a MaxActiveChannels and MaxChannels parameter that you might be bumping up against. The default is 100. |
[/list]
your guess is right I am talking all about client connection.
I am putting messages sequencially ie their is only one client which is
putting messages and that is once after closing connections opening new connections for each and every message read from flat files. How come I will maxout channels. What type of channel connection are good for this type of requirement. we have listener ie EJB Messagedriven bean but we turn off the listener. Its the client that is causing problem in putting messages it throws 2059 after posting around 400 to 500 messages.
Thank you. |
|
Back to top |
|
 |
Kareem_khan |
Posted: Tue Dec 07, 2004 3:17 pm Post subject: |
|
|
Apprentice
Joined: 09 Jul 2004 Posts: 27 Location: Jackson,MS
|
Hi fjb_saper
Quote: |
Create one qmgr connection and one queue connection.
create the messages and close when you are done with all of them. |
I am doing the same thing but getting 2059 error message
after putting 400 to 500 messages I should be able to put at least 10000
to 30000 messages reading from flat file please suggest.
The channel that I am using is Server connection channel and heart beat interavel default 300 for MQ Series installed on AIX box.
please suggest
Thank you
fjb saper. |
|
Back to top |
|
 |
slaupster |
Posted: Wed Dec 08, 2004 5:40 am Post subject: |
|
|
Apprentice
Joined: 17 Nov 2004 Posts: 41
|
it sounds to me like bower5932's suggestion was right. This sounds very much like a MaxChannels problem. You should see the following in the log at the QMGR :
AMQ9513: Maximum number of channels reached.
If you do, you can change the default of 100 by:
On UNIX, edit the qm.ini file located under /var/mqm/qmgrs/<QMGR_NAME>/. Add the following stanza to the end of qm.ini:
CHANNELS:
MaxChannels=1000
On Windows, use the MQServices console. Right click on the QMGR and select properties. On the "Channels" tab, set the MaxChannels property. |
|
Back to top |
|
 |
bower5932 |
Posted: Wed Dec 08, 2004 6:42 am Post subject: |
|
|
 Jedi Knight
Joined: 27 Aug 2001 Posts: 3023 Location: Dallas, TX, USA
|
fjb_saper wrote: |
Create one qmgr connection and one queue connection. create the messages and close when you are done with all of them. |
I wanted to make sure that this didn't get overlooked. You don't want to connect, open, put, close, disconnect for every message. The connect and open calls are very expensive on performance. You should do your message puts in a loop after you've connected/opened. You can then close/disconnect after all of the puts. It will use less resources and run a whole lot faster. |
|
Back to top |
|
 |
Kareem_khan |
Posted: Wed Dec 08, 2004 1:26 pm Post subject: |
|
|
Apprentice
Joined: 09 Jul 2004 Posts: 27 Location: Jackson,MS
|
Quote: |
I wanted to make sure that this didn't get overlooked. You don't want to connect, open, put, close, disconnect for every message. The connect and open calls are very expensive on performance. You should do your message puts in a loop after you've connected/opened. You can then close/disconnect after all of the puts. It will use less resources and run a whole lot faster |
.
Hi bower5932,
Thank you so much for your suggestion I just made a change to put 1000 messages with one queue connection manager insted of creating and closing Queue manager connection and Queue connection for each and every messages I created only one connection and posted all the messages after posting all the messages disconnected the queue manager. This right now looks like solved 2059 error. I am not sure wether it really fixed this problem but right now I am fine.
Before in the log files I was getting following error. Now I am not getting any more.
AMQ9208: Error on receive from host xx.x.xx.xx.
EXPLANATION:
An error occurred receiving data from xx.x.xx.xx over TCP/IP. This may be dueto a communications failure.
ACTION:
The return code from the TCP/IP (read) call was 73 (X'49'). Record these values and tell the systems administrato |
|
Back to top |
|
 |
Kareem_khan |
Posted: Wed Dec 08, 2004 1:34 pm Post subject: |
|
|
Apprentice
Joined: 09 Jul 2004 Posts: 27 Location: Jackson,MS
|
Quote: |
it sounds to me like bower5932's suggestion was right. This sounds very much like a MaxChannels problem. You should see the following in the log at the QMGR :
AMQ9513: Maximum number of channels reached.
If you do, you can change the default of 100 by:
On UNIX, edit the qm.ini file located under /var/mqm/qmgrs/<QMGR_NAME>/. Add the following stanza to the end of qm.ini:
CHANNELS:
MaxChannels=1000 |
hi slaupster I don't see
AMQ9513: Maximum number of channels reached. in error log at QMGR
rather I see this error in error log file
AMQ9208: Error on receive from host xx.x.xx.xx.
EXPLANATION:
An error occurred receiving data from xx.x.xx.xx over TCP/IP. This may be dueto a communications failure.
ACTION:
The return code from the TCP/IP (read) call was 73 (X'49'). Record these values and tell the systems administrato
I see this error on client side while puting messages.
QJE001: An MQException occurred: Completion Code 2, Reason 2059
MQJE011: Socket connection attempt refused
MQJE001: Completion Code 2, Reason 2059
com.ibm.mq.MQException: MQJE001: Completion Code 2, Reason 2059
at com.ibm.mq.MQManagedConnectionJ11.<init>(MQManagedConnectionJ11.java:
172)
at com.ibm.mq.MQClientManagedConnectionFactoryJ11._createManagedConnecti
on(MQClientManagedConnectionFactoryJ11.java:270)
at com.ibm.mq.MQClientManagedConnectionFactoryJ11.createManagedConnectio
n(MQClientManagedConnectionFactoryJ11.java:290)
at com.ibm.mq.StoredManagedConnection.<init>(StoredManagedConnection.jav
a:80)
at com.ibm.mq.MQSimpleConnectionManager.allocateConnection(MQSimpleConne
ctionManager.java:150)
at com.ibm.mq.MQQueueManager.obtainBaseMQQueueManager(MQQueueManager.jav
a:682)
at com.ibm.mq.MQQueueManager.construct(MQQueueManager.java:620)
at com.ibm.mq.MQQueueManager.<init>(MQQueueManager.java:393)
After putting all the messages with just one QMgr connection and disconnecting right now not causing problem I am not sure weather it fixed this problem but for now
Thank you
csmith28
bower5932
fjb_saper
slaupster
for helping. |
|
Back to top |
|
 |
|