Author |
Message
|
cghcgh |
Posted: Thu Aug 28, 2008 6:53 pm Post subject: AS400 send message using ibm q program |
|
|
Novice
Joined: 28 Aug 2008 Posts: 16
|
Hi,
I'm a newbie in this forum. Just started using mq in my company. I am facing a problem while using mq with the q program. I will really appreicate if any1 can guide me through this problem. Thanks in advance
1 of my colleague was sending messages from AS400 to 1 of my client application through the mqserver.
We realized that when the client application was triggered a few times although the AS400 was sending the messages once.
On the client script, we have 5 sec waiting time.
/opt/mqm/bin/qc -c X'850' -m $2 -I $3 -w 5 >> $4/$$
Is it because the mqserver is slow in receiving the messages from AS400? Or the client is slow in receving from the mqclient?
It seems like it’s the former as the it was triggered a few times.
Is there any parameters that can be tuned on the server side? |
|
Back to top |
|
 |
cghcgh |
Posted: Sun Aug 31, 2008 8:26 pm Post subject: |
|
|
Novice
Joined: 28 Aug 2008 Posts: 16
|
hi..anyone have any idea on this? pls kindly assist |
|
Back to top |
|
 |
ulli |
Posted: Tue Sep 02, 2008 7:26 am Post subject: |
|
|
Novice
Joined: 16 Aug 2004 Posts: 20
|
Hi,
I'm not sure if I understand your problem. Where is your MQ Server with the message you are trying to get, at AS/400? What happens if you put a message without the queue triggered and you start the q prog just with options -c X'850' -m $2 -I $3? Is the message read from the queue fast or does it take a long time to get the message from your queue?
Best regards, Ulli |
|
Back to top |
|
 |
cghcgh |
Posted: Tue Sep 02, 2008 6:52 pm Post subject: |
|
|
Novice
Joined: 28 Aug 2008 Posts: 16
|
hi uli, thanks for the reply.
AS400 is a mq server. It sends the messages to another mq server which is a linux server. There is another linux machine that has the mq client installed which monitor the init q. i actually tested without the -w parameter.. and it will get triggerred more times. |
|
Back to top |
|
 |
ulli |
Posted: Tue Sep 02, 2008 11:12 pm Post subject: |
|
|
Novice
Joined: 16 Aug 2004 Posts: 20
|
Please run the test without triggering as first. If your message arrived the queue at your linux qmgr, start the q program to check if the message is read. If this is working without a problem, check your process definition again or post it here.
Best regards, Ulli |
|
Back to top |
|
 |
cghcgh |
Posted: Wed Sep 03, 2008 12:06 am Post subject: |
|
|
Novice
Joined: 28 Aug 2008 Posts: 16
|
hi ulli,
we have tested before with and without the -w parameter using manual download and it's okay.
Just a little more information
when the transfer gets triggerred, it calls an unload.sh that downloads the messages into a file which is named as the process id.
afterwhich, it will rename this file to the correct filename.
I captured the information into a log file and hence i realised that the unload script ran twice and output to 2 files, which means it was triggerred twice.
Are there any parameters on the mq server to set that it is only triggerred when all the messages finished and it has waited maybe after 10 sec etc? |
|
Back to top |
|
 |
zpat |
Posted: Wed Sep 03, 2008 1:31 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
Write your own program to use MQGET with WAIT (and CONVERT). Store the data in a database, use syncpoints to protect against MQ message loss.
Usings scripts and files to handle transactional messaging is rather like buying a Porsche and then using the cheapest possible tyres on it.
I get really worried when I see MQ being used this way. You might as well use the basic FTP command.
MQ apps need to be transactionally safe & cross-platform compatible.
Unfortunately to do this requires some thought and use of non-default MQI options.
It's really IBM's fault for not making this stuff default out of the box.
Last edited by zpat on Wed Sep 03, 2008 4:06 am; edited 2 times in total |
|
Back to top |
|
 |
cghcgh |
Posted: Wed Sep 03, 2008 1:34 am Post subject: |
|
|
Novice
Joined: 28 Aug 2008 Posts: 16
|
hi,
i'm actually using ibm q program. Is it considered an authorized program?
Beside using this, is there any way that i can send messages or even files out of AS400?
Pls kindly advise. Thanks. |
|
Back to top |
|
 |
mqjeff |
Posted: Wed Sep 03, 2008 1:43 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
cghcgh wrote: |
hi,
i'm actually using ibm q program. Is it considered an authorized program |
Under what terms did you acquire the program? Where did you download it from? What does that page say? What does the license it comes with say? |
|
Back to top |
|
 |
cghcgh |
Posted: Wed Sep 03, 2008 1:48 am Post subject: |
|
|
Novice
Joined: 28 Aug 2008 Posts: 16
|
|
Back to top |
|
 |
mqjeff |
Posted: Wed Sep 03, 2008 1:55 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
mqjeff wrote: |
What does that page say? What does the license it comes with say? |
|
|
Back to top |
|
 |
cghcgh |
Posted: Wed Sep 03, 2008 2:04 am Post subject: |
|
|
Novice
Joined: 28 Aug 2008 Posts: 16
|
well.
There is no warranty or further service implied or committed and any supplied sample code is not supported via IBM product service channels.
as indicated i the website |
|
Back to top |
|
 |
ranganathan |
Posted: Thu Sep 04, 2008 2:24 am Post subject: |
|
|
 Centurion
Joined: 03 Jul 2008 Posts: 104
|
I suppose the following is your configuration.
AS400 QM --> Linux QM --> Client
did you make sure that the Triggering parameters are correct ?! ... Could you please let us know the Triggering attributes of the queue which is listening in the linux machine.
Note: Please let us know why exactly you needed this support pac for your environment ?! |
|
Back to top |
|
 |
ulli |
Posted: Thu Sep 11, 2008 5:56 am Post subject: |
|
|
Novice
Joined: 16 Aug 2004 Posts: 20
|
Hi,
Quote: |
I captured the information into a log file and hence i realised that the unload script ran twice and output to 2 files, which means it was triggerred twice.
Are there any parameters on the mq server to set that it is only triggerred when all the messages finished and it has waited maybe after 10 sec etc? |
How should the server know that all messages arrived the queue?
If you know how many messages have to be at the queue you could use trigger type depth to start the application.
As ranganathan said before, let us know the trigger attributes of your queue. |
|
Back to top |
|
 |
|