Author |
Message
|
kats |
Posted: Thu Apr 26, 2007 2:38 am Post subject: MQCONN reason code 2058 |
|
|
Voyager
Joined: 20 Apr 2006 Posts: 78
|
Platform: Win XP prof(X64): MQ server and CLient installed from MQ 6.0 CD.
Question-1. How can I check version of MQ client? Is it same as MQserver?
Created Qmgr QM1. Made it default. Created SVRCONN and CLNTCONN channel from Explorer. set env variable MQCHLLIB and MQCHLTAB.
Now it fails with 2058
C:>AMQSPUTC SYSTEM.DEFAULT.LOCAL.QUEUE QM1
Sample AMQSPUT0 start
MQCONN ended with reason code 2058
But runs when no qmgr name is provided.
C:>AMQSPUTC SYSTEM.DEFAULT.LOCAL.QUEUE
Sample AMQSPUT0 start
target queue is SYSTEM.DEFAULT.LOCAL.QUEUE
^C
So I plugged in CLNTCONN definition stub the name of qmgr, Now getting 2059.
C:>AMQSPUTC SYSTEM.DEFAULT.LOCAL.QUEUE QM1
Sample AMQSPUT0 start
MQCONN ended with reason code 2059
QM1 name is right and spelled right.
MQSERVER variable works
Any clue?
Question-3. Just wondering if any body got a chance to look at this post: http://www.mqseries.net/phpBB2/viewtopic.php?t=36400. If no pls have a look _________________ If everything goes well, don't panic, it won't last for long. |
|
Back to top |
|
 |
Vitor |
Posted: Thu Apr 26, 2007 3:25 am Post subject: Re: MQCONN reason code 2058 |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
kats wrote: |
Question-1. How can I check version of MQ client? Is it same as MQserver?
|
No it isn't. IIRC there's a readme someplace with the version of client in it, but don't ask me where. If you got it off the v6 CD it's probably the v6 client. Though I'm not certain there's that much difference between the 5.3.12 & the 6.0 client code. Anyone?
To your other problem - your queue manager is not named what you think it is. My reasoning is thus:
QM1 gets a 2058 - can't be found, but the default one can.
Adding QM1 to the CLNTCONN table gets you a 2059 - queue manager unreachable.
Do a dspmq and see what that comes up with.
As to your 3rd question - no I haven't put SSL there. If I had, I would have tried to help  _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
kats |
Posted: Thu Apr 26, 2007 3:31 am Post subject: |
|
|
Voyager
Joined: 20 Apr 2006 Posts: 78
|
there's only 1 qmgr currently created and runnning.
C:>dspmq
QMNAME(P06151101) STATUS(Running)
Now, my understanding and as you pointed out: 2058 indicates connected to a qmgr but the qmgr name doesn't match with the one you specified in the MQCONN call.
So there's only ONE qmgr, IT's DEFAULT too. SPELLED right
C:>AMQSPUTC SYSTEM.DEFAULT.LOCAL.QUEUE P06151101
Sample AMQSPUT0 start
MQCONN ended with reason code 2058
This is personal Computer and I logged into this machine as ADMIN. _________________ If everything goes well, don't panic, it won't last for long. |
|
Back to top |
|
 |
Vitor |
Posted: Thu Apr 26, 2007 4:03 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
So this QM1 you posted previously was simply an example of your problem? (This would be a fair thing for you to do, just establishing that you've not deleted QM1 and created this new one).
So -
1) Define an MQSERVER variable and try the put
2) Undefine the MQSERVER and use the TAB file
If the first works and the 2nd doesn't, then the queue manager name quoted in the CLNTCONN is messed up.
If neither works your client install is messed up.
If the first fails and the second works something very, very strange is happening......
I don't think this is connected to your problem, but are you logged in as ADMIN or Administrator? I would advise against the use of the Administrator user id, it's too long for MQ.
Again, this has nothing to do with a 2058 or 2059. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
kats |
Posted: Thu Apr 26, 2007 5:45 am Post subject: |
|
|
Voyager
Joined: 20 Apr 2006 Posts: 78
|
Yes, QM1 was only an example. (A substitution of P06151101); just to make things readible for someone to look at.
No this Qmgr was never deleted.
1) Define an MQSERVER variable and try the put
It works
2) Undefine the MQSERVER and use the TAB file
Fails with 2058
3)Undefine the MQSERVER and use the TAB file and also Put QmgrName in Qmgr field in CLNTCONN channel.
Fails with 2059
If neither works your client install is messed up.
# MQSERVER works and
# TAB file works without mentioning QMgrName. _________________ If everything goes well, don't panic, it won't last for long. |
|
Back to top |
|
 |
Vitor |
Posted: Thu Apr 26, 2007 6:02 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
So there's a problem with the naming in the TAB file _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
bruce2359 |
Posted: Thu Apr 26, 2007 7:20 am Post subject: |
|
|
Guest
|
Please post here your CLNTCONN channel definition(s) here. These definitions populate the client channel table that you export to the client platform. |
|
Back to top |
|
 |
kats |
Posted: Thu Apr 26, 2007 8:10 am Post subject: |
|
|
Voyager
Joined: 20 Apr 2006 Posts: 78
|
bruce2359 wrote: |
Please post here your CLNTCONN channel definition(s) here. These definitions populate the client channel table that you export to the client platform. |
AMQ8414: Display Channel details.
CHANNEL(SSL.SVRCONN) CHLTYPE(CLNTCONN)
ALTDATE(2007-04-25) ALTTIME(22.27.25)
COMPHDR(NONE) COMPMSG(NONE)
CONNAME(127.0.0.1(1414)) DESCR( )
HBINT(300) KAINT(AUTO)
LOCLADDR( ) MAXMSGL(4194304)
MODENAME( ) PASSWORD( )
QMNAME( ) RCVDATA( )
RCVEXIT( ) SCYDATA( )
SCYEXIT( ) SENDDATA( )
SENDEXIT( ) SSLCIPH( )
SSLPEER( ) TPNAME( )
TRPTYPE(TCP) USERID( )
Definition with QmgrName inserted.
AMQ8414: Display Channel details.
CHANNEL(SSL.SVRCONN) CHLTYPE(CLNTCONN)
ALTDATE(2007-04-26) ALTTIME(12.04.31)
COMPHDR(NONE) COMPMSG(NONE)
CONNAME(127.0.0.1(1414)) DESCR( )
HBINT(300) KAINT(AUTO)
LOCLADDR( ) MAXMSGL(4194304)
MODENAME( ) PASSWORD( )
QMNAME(P06151101) RCVDATA( )
RCVEXIT( ) SCYDATA( )
SCYEXIT( ) SENDDATA( )
SENDEXIT( ) SSLCIPH( )
SSLPEER( ) TPNAME( )
TRPTYPE(TCP) USERID( ) _________________ If everything goes well, don't panic, it won't last for long. |
|
Back to top |
|
 |
bruce2359 |
Posted: Thu Apr 26, 2007 9:34 am Post subject: |
|
|
Guest
|
Please post the MQCONN api call in the client program. Does it specify the qmgr name? Or it it blank? Or contain an asterisk *?
Please post the listener definition, too. if you started it, it will look something like runmqlsr -t tcp -m queuemanagername -p 1414 |
|
Back to top |
|
 |
kats |
Posted: Thu Apr 26, 2007 9:47 am Post subject: |
|
|
Voyager
Joined: 20 Apr 2006 Posts: 78
|
Please post the MQCONN api call in the client program. Does it specify the qmgr name? Or it it blank? Or contain an asterisk *?
I don't know if I understood you properly:
So here it goes: I did not use MQCONN API.
I set env variable MQCHLLIB and MQCHLTAB and used amqsputc. (Pls see my first post)
Please post the listener definition, too. if you started it, it will look something like runmqlsr -t tcp -m queuemanagername -p 1414
C:\>runmqsc P06151101
5724-H72 (C) Copyright IBM Corp. 1994, 2004. ALL RIGHTS RESERVED.
Starting MQSC for queue manager P06151101.
dis LISTENER(LISTENER.TCP)
5 : dis LISTENER(LISTENER.TCP)
AMQ8630: Display listener information details.
LISTENER(LISTENER.TCP) CONTROL(QMGR)
TRPTYPE(TCP) PORT(1414)
IPADDR( ) BACKLOG(0)
DESCR( ) ALTDATE(2007-04-25)
ALTTIME(22.25.40)
dis lsstatus(*)
6 :dis lsstatus(*)
AMQ8631: Display listener status details.
LISTENER(LISTENER.TCP) STATUS(RUNNING)
PID(2272) _________________ If everything goes well, don't panic, it won't last for long. |
|
Back to top |
|
 |
bbburson |
Posted: Thu Apr 26, 2007 10:14 am Post subject: |
|
|
Partisan
Joined: 06 Jan 2004 Posts: 378 Location: Nowhere near a queue manager
|
kats wrote: |
AMQ8414: Display Channel details.
CHANNEL(SSL.SVRCONN) CHLTYPE(CLNTCONN)
ALTDATE(2007-04-25) ALTTIME(22.27.25)
COMPHDR(NONE) COMPMSG(NONE)
CONNAME(127.0.0.1(1414)) DESCR( )
HBINT(300) KAINT(AUTO)
LOCLADDR( ) MAXMSGL(4194304)
MODENAME( ) PASSWORD( )
QMNAME( ) RCVDATA( )
RCVEXIT( ) SCYDATA( )
SCYEXIT( ) SENDDATA( )
SENDEXIT( ) SSLCIPH( )
SSLPEER( ) TPNAME( )
TRPTYPE(TCP) USERID( )
Definition with QmgrName inserted.
AMQ8414: Display Channel details.
CHANNEL(SSL.SVRCONN) CHLTYPE(CLNTCONN)
ALTDATE(2007-04-26) ALTTIME(12.04.31)
COMPHDR(NONE) COMPMSG(NONE)
CONNAME(127.0.0.1(1414)) DESCR( )
HBINT(300) KAINT(AUTO)
LOCLADDR( ) MAXMSGL(4194304)
MODENAME( ) PASSWORD( )
QMNAME(P06151101) RCVDATA( )
RCVEXIT( ) SCYDATA( )
SCYEXIT( ) SENDDATA( )
SENDEXIT( ) SSLCIPH( )
SSLPEER( ) TPNAME( )
TRPTYPE(TCP) USERID( ) |
I'm going to make an assumption here that SSL is expected (because the channel name starts with SSL). If so, your CLNTCONN definition is missing SSLCIPH, SSLPEER attributes. Compare the CLNTCONN definition with the corresponding SVRCONN definition; these two must match for all the major attributes (including SSL). |
|
Back to top |
|
 |
kats |
Posted: Thu Apr 26, 2007 11:05 am Post subject: |
|
|
Voyager
Joined: 20 Apr 2006 Posts: 78
|
I found the clue and I'll post it in another couple of hours _________________ If everything goes well, don't panic, it won't last for long. |
|
Back to top |
|
 |
bruce2359 |
Posted: Fri Apr 27, 2007 7:32 am Post subject: |
|
|
Guest
|
"I don't know if I understood you properly:
So here it goes: I did not use MQCONN API.
I set env variable MQCHLLIB and MQCHLTAB and used amqsputc. (Pls see my first post) "
The application program you are executing must make contact with a qmgr (one way or the other). MQCONN is the MQ api inside the application program for doing this.
How the MQCONN call is coded, together with the client channel table definitions and the environment variables you set, will have an effect on the success or failure of the connect.
That's why I asked. |
|
Back to top |
|
 |
kats |
Posted: Fri May 04, 2007 7:16 am Post subject: |
|
|
Voyager
Joined: 20 Apr 2006 Posts: 78
|
Ok Bruce, sorry for responding after a light year.
You are right, SSL is expected. But this was just a test I was carrying before SSL.
I am trying to test SSL with MQ server on Solaris and MQ client on NT(My PC). The error being thrown made me to test it on my laptop. (MQ 6 client+server installed)
Anyway, as you and Vitor pointed out, it's really .tab file that is messed up. I did various changes before it got working.
C:>AMQSPUTC SYSTEM.DEFAULT.LOCAL.QUEUE QM1
Sample AMQSPUT0 start
Sample AMQSPUT0 start
target queue is SYSTEM.DEFAULT.LOCAL.QUEUE
^C
eg.
1. I deleted .tab file from @ipcc directory, made changes to channel and a new .tab file created was then used.
2. I set env variable to .tab file everytime I changed the channel configuration.
3. But it never got to work again without QmgrName in CLNTCONN channel definition. I wonder is it Mandatory?
4. Bounced Qmgr often after change.
Sadly, I did not do one thing at a time to know what made it effective. This is all done before SSL is put.
Honestly I feel it's easy to catch the problem if .tab file were transparent.
Thanks to you and Vitor. _________________ If everything goes well, don't panic, it won't last for long. |
|
Back to top |
|
 |
|