Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

MQseries 6.0

Status
Not open for further replies.

Bahan

Programmer
Jun 20, 2007
4
FR
Hi.

Here is my problem with MQseries.

Environement :
- a computer named A, with AIX 5.3, MQseries server 6.0 (and clients I think, but how I can be sure ?)
- a computer named B, with Windows 2000 with MQseries Client 5.2
- a computer named C, with AIX 4.2, with MQseries Client 5.2
- a lot of computers named Ni, with Windows XP, with MQseries Client 5.2

Situation :
- B arrived to connect to the QM "MyQM" of A
- C arrived to connect to the QM "MyQM" of A
- Ni arrievd to connect to the QM "MyQM" of A
- On A, I can't connect to the QM "MyQM" on A

Details :
I developped a C program which connects to the local QM "MyQM".

The code is the following :
Code:
char szMqQManager[20] = "MyQM";
MQHCONN   lConnexion = 0L;
MQLONG   lCodeRetourMQ = 0L;
MQLONG   lCodeDiagMQconn = 0L;

/*
* -- ----------------------------------------------
* CONNECTION TO QUEUE MANAGER
* -- ----------------------------------------------
*/
MQCONN(szMqQManager, &lConnexion, &lCodeRetourMQ, &lCodeDiagMQconn);

if(lCodeDiagMQconn != 0L)
{
  /* Pb during connection to the queue manager */
  logFunction(error_message);
}
else
{
  /* Connection ok */
  logFunction(ok_message);
}

And I always have this error :
Code:
Completion Code : 2, Reason Code : 2058

Here are the authorizations of my user on the queue manager :
Code:
        inq
        set
        connect
        altusr
        dlt
        chg
        dsp
        setid
        setall

It seems that the problem is coming from A, maybe in MQseries configuration ?

Here is the server-connection channel that I create :
Code:
define channel(MyChannel) chltype(SVRCONN) trptype(TCP) replace

Finally, I looked in the log file of MQseries in [COLOR=red yellow]/var/mqm/errors/AMQERR01.LOG[/color] and I found the following trace :

Code:
06/20/07 11:39:57 - Process(901154.1) User(MyUser) Program(MyBinProgram)
AMQ9518: File '/var/mqm/AMQCLCHL.TAB' not found.

EXPLANATION:
The program requires that the file '/var/mqm/AMQCLCHL.TAB' is present and available.
ACTION:
This may be caused by invalid values for the optional environment variables MQCHLLIB, MQCHLTAB or MQDATA. If these variables are valid or not set then record the name of the  file and tell the systems administrator who must ensure that file '/var/mqm/AMQCLCHL.TAB' is available to the program.
----- amqrcdfa.c : 485 --------------------------------------------------------

Apparently it's trying to look up client channel definition.

So I created a client-connection channel :
Code:
DEFINE CHANNEL(MyChannel) CHLTYPE(CLNTCONN) TRPTYPE(TCP) CONNAME(MyIP) QMNAME(MyQM)

But I have always the same error.

I was hoping it will use the [COLOR=red yellow]/var/mqm/qmgrs/MyQM/@ipcc/AMQCLCHL.TAB[/color] but i was wrong.

So I have to create another [COLOR=red yellow]AMQCLCHL.TAB[/color] in [COLOR=red yellow]/var/mqm/[/color], but how generate it properly ?

Thanks for your answer.

Bahan

NB : I'm a real beginner in MQseries ^_^
 
Hum, I think I created the channel table [COLOR=red yellow]/var/mqm/qmgrs/MyQM/@ipcc/AMQCLCHL.TAB[/color] when I created my channel by the commande :
Code:
define channel(MyChannel) chltype(SVRCONN) trptype(TCP) replace

Bahan
 
Hum, let's speak about this problem in another way.

I'm not the one who installed MQseries, I only want to create properly a Queue Manager QM and 4 queues Q1, Q2, Q3, and Q4.

Q1 and Q2 are the ones I'm interested for the moment.
- A remote user U1 must be able to put messages on Q1
- A remote user U2 must be able to put messages on Q2
- A local user UL must be able to get the messages from Q1 and Q2.

Here is my question :
What I have to do to have a proper MQseries environnement ? (which channels of whith type do I have to create ? Is there specific attributes for the Queue Manager or for the queue ? etc...)

I'm on AIX 5.3, I have MQseries 6.0.

Thank you in advance for your help.

Bahan
 
On platforms other than z/OS, the client-connection channel definition described previously is stored in the client channel definition table associated with the queue manager running on the server. The file containing the table is called AMQCLCHL.TAB and is a binary file that cannot be edited directly. You can use the DEFINE CHANNEL command to add a client connection channel to the table, and the ALTER CHANNEL command to alter the attributes of a channel that already has an entry in the table.

Do not delete AMQCLCHL.TAB. It contains default channel definitions that are required when you define a channel. If you suspect that this has been deleted, for example you get error messages when you try to define a new channel, check to see that the file exists.

If you install WebSphere MQ in the default location, AMQCLCHL.TAB is located in the following directory on a server machine:

* On i5/OS, in the Integrated File System (IFS):

/QIBM/UserData/mqm/qmgrs/QUEUEMANAGERNAME/&ipcc

* On UNIX(R) systems:

/mqmtop/qmgrs/QUEUEMANAGERNAME/@ipcc

Note that the name of the directory referred to by QUEUEMANAGERNAME is case sensitive on UNIX systems.
* On Windows(R), the location of this file defaults to:

C:\Program Files\IBM\WebSphere MQ\qmgrs\QUEUEMANAGERNAME\@ipcc

I try to use the variables MQCHLLIB and MQCHLTAB and I have the following error :

Code:
06/21/07 15:34:20 - Process(2576594.1) User(MyUser) Program(MyBin)
AMQ9516: File error occurred.

EXPLANATION:
The filesystem returned error code 13 for file
'/var/mqm/qmgrs/QMNAME/@ipcc/AMQCLCHL.TAB'.
ACTION:
Record the name of the file '/var/mqm/qmgrs/QMNAME/@ipcc/AMQCLCHL.TAB'
and tell the systems administrator, who should ensure that file
'/var/mqm/qmgrs/QMNAME/@ipcc/AMQCLCHL.TAB' is correct and available.
----- amqrcdfa.c : 495 --------------------------------------------------------

I don't really know what to do...

Bahan
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top