ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » IBM MQ API Support » client connection via Perl

Post new topic  Reply to topic
 client connection via Perl « View previous topic :: View next topic » 
Author Message
ShanMan
PostPosted: Mon Jan 29, 2007 12:34 pm    Post subject: client connection via Perl Reply with quote

Newbie

Joined: 29 Jan 2007
Posts: 4
Location: Texas

I am more a Broker guy, and all my MQ Admin teammates left so I am alone in trying to figure out the admin side of things. Not easy.

Working with MQ 5.2 on Windows 2003. I have a Perl script that will connect to two clustered queue managers (usually on separate servers, when not failed over). I will run the script from one of the servers, so one QM is local, the other not. I tried connecting using MQCONN but it can only find the local QM. MQCONNX works for both QMs but it's restricting the MaxMsgLen somewhere (value returned is not that of the queue). I specify a SrvrConn channel when using MQCONNX.

The odd thing is that from my workstation (XP; MQ is installed), I can use MQCONN alone to connect to both remote QMs just fine, with no problems retrieving accurate MaxMsgLen of the queue. I wish I knew why it works when I run the script on my laptop but not when I run it on the server! Someone else set up much of the stuff on my laptop and everything on the servers. I would just like some help with troubleshooting or directions for where to look for resolutions.

Thanks
Shannon
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Mon Jan 29, 2007 12:56 pm    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

MaxMsgLn is negotiated to the lowest value of the Server Connection Channel and the Client Connection Channel.

Also there were some changes in v5.3 to the maxmsgln the client could handle. If I recall correctly.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
ShanMan
PostPosted: Mon Jan 29, 2007 1:03 pm    Post subject: Reply with quote

Newbie

Joined: 29 Jan 2007
Posts: 4
Location: Texas

Argh, I am running v5.3 (CSD11). Sorry for misleading.

Sorry if this question has an obvious answer, but I am so confused by this problem it has me questioning a lot of things. Both the server conn channel and the client conn channel will be on the target QM, correct? By that I mean, the settings for MaxMsgLn that I need to look at are on those channels on the target QM?

Thanks
S
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Mon Jan 29, 2007 1:31 pm    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

The server conn will be defined on the target QM, yes.

The client conn is basically defined by MQCONNX, if you are using MQCONNX. If you're using MQCONN, then it's defined either by MQSERVER or by the client tables (which are built, usually, on the target qm).

So look at the options to MQCONNX and make sure you're setting the MaxMsgLn there to a number like 104857600, and then make sure the SVRCONN has it's MaxMsgLn set to something like that too.
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
ShanMan
PostPosted: Mon Jan 29, 2007 2:20 pm    Post subject: Reply with quote

Newbie

Joined: 29 Jan 2007
Posts: 4
Location: Texas

Hmm, I had not seen MaxMsgLn as a settable param to the MQCONNX call in documentation I've seen. I'll try looking that up. Currently my call is this:

Code:
  my $coption = {  'ChannelName'    => $ConnChnl,
                   'ConnectionName' => $ConnName,
                };

  $conn = MQCONNX($QMgrName, { 'ClientConn' => $coption, }, $CompCode, $Reason);
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Mon Jan 29, 2007 2:49 pm    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

http://search.cpan.org/~hbiersma/MQSeries-1.23/MQSeries.pm#MQCONNX wrote:
See the application programming reference for details on the additional fields available in the ClientConn data structure.


The MaxMsgLn is in the Client Connection Ptr.
http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/topic/com.ibm.mq.csqzak.doc/js00619.htm
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
ShanMan
PostPosted: Mon Jan 29, 2007 2:54 pm    Post subject: Reply with quote

Newbie

Joined: 29 Jan 2007
Posts: 4
Location: Texas

Sure enough, setting MaxMsgLength to a large number on the MQCONNX call (as well as setting the same value in the Server Conn Channel) fixed the problem. I wish I had known about that parameter sooner. Thanks!!
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ API Support » client connection via Perl
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.