Author |
Message
|
Vimal_bansal |
Posted: Wed Jun 29, 2016 10:41 pm Post subject: "MQJE001: Completion Code '2', Reason '2538' in Client |
|
|
Newbie
Joined: 29 Jun 2016 Posts: 8
|
I have an application which connect to MQ via Java MQ PCF API a them. Both the queue and the application reside on the same server. The application currently uses a Listener Port & PCF API. When I use binding mode things are working fine but in client mode connection fails with following message com.ibm.mq.MQException: MQJE001: Completion Code '2', Reason '2538'. Its seems like some network related issue but not able to identify the exact route cause of this.
Any help on this will greatly appreciated.
Thanks
Last edited by Vimal_bansal on Thu Jun 30, 2016 2:58 am; edited 1 time in total |
|
Back to top |
|
 |
smdavies99 |
Posted: Wed Jun 29, 2016 11:46 pm Post subject: |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
Is the client connection authorisation setup properly?
Is the User allowed?
Is the user allowed to connect to the channel?
etc
etc
etc
What version of MQ are you using? This makes a difference
What are the Queue Manager Auths set as?
There are other posts here AND some articles written by Morag that explain all of the issues are more than likely having.
Take a look and see what you can find. _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
Vimal_bansal |
Posted: Thu Jun 30, 2016 1:42 am Post subject: |
|
|
Newbie
Joined: 29 Jun 2016 Posts: 8
|
Hello smdavies99,
Thanks for your reply. We are following the below steps to create the Queue. We are not using any user to connect with the Queue. This works in Binding mode. In client mode we are connecting through the PCF agent.
PCFMessageAgent pcfMessageAgent= new PCFMessageAgent();
pcfMessageAgent.connect(qmHost, qmPort, qmChannelName, "", queueManagerName);
a) login with mqm group
su - mqm
b) create a queuemanager
./crtmqm QUEUEMGRTEST
c) start queuemanager
./strmqm QUEUEMGRTEST
d) ./runmqsc QUEUEMGRTEST
e) define listener (rl) trptype (tcp) control (qmgr) port (1416)
f) DEFINE CHANNEL( QUEUEMGRTEST_CHNL ) CHLTYPE( SVRCONN ) REPLACE
g) SET CHLAUTH('QUEUEMGRTEST_CHNL') TYPE(ADDRESSMAP) ADDRESS('127.0.0.1') USERSRC(CHANNEL) ACTION(ADD) |
|
Back to top |
|
 |
Vimal_bansal |
Posted: Thu Jun 30, 2016 1:48 am Post subject: |
|
|
Newbie
Joined: 29 Jun 2016 Posts: 8
|
The MQ version is 8.0.0.4. |
|
Back to top |
|
 |
Vimal_bansal |
Posted: Thu Jun 30, 2016 2:15 am Post subject: |
|
|
Newbie
Joined: 29 Jun 2016 Posts: 8
|
|
Back to top |
|
 |
hughson |
Posted: Thu Jun 30, 2016 2:22 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
Vimal_bansal wrote: |
... in clinet mode connection fails with following message com.ibm.mq.MQException: MQJE001: Completion Code '2', Reason '2538'. Its seems like some network related issue but not able to identify the exact route cause of this. |
You are correct in thinking this seems like some network related issue. If you look up the reason code you will see it is MQRC_HOST_NOT_AVAILABLE (2538) and that there are common causes of this failure listed.
You've listed your steps as:-
Vimal_bansal wrote: |
a) login with mqm group
su - mqm
b) create a queuemanager
./crtmqm QUEUEMGRTEST
c) start queuemanager
./strmqm QUEUEMGRTEST
d) ./runmqsc QUEUEMGRTEST
e) define listener (rl) trptype (tcp) control (qmgr) port (1416)
f) DEFINE CHANNEL( QUEUEMGRTEST_CHNL ) CHLTYPE( SVRCONN ) REPLACE
g) SET CHLAUTH('QUEUEMGRTEST_CHNL') TYPE(ADDRESSMAP) ADDRESS('127.0.0.1') USERSRC(CHANNEL) ACTION(ADD) |
I see one step missing, which also coincides with the first common cause of the failure listed in Knowledge Center:
IBM Knowledge Center wrote: |
Common causes of this reason code are:
- The listener has not been started on the remote system.
- The connection name in the client channel definition is incorrect.
- The network is currently unavailable.
- A firewall blocking the port, or protocol-specific traffic.
- The security call initializing the IBM® MQ client is blocked by a security exit on the SVRCONN channel at the server.
|
You have created a listener, and made it CONTROL(QMGR) which means next time the queue manager starts up, it will start the listener. But right now, the first time in, you have to start it up yourself.
Try that and see if it can now connect - you may move onto another different reason code, if you have other configuration settings still to be corrected. Remember to look in the error log to see what they mean.
Cheers
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
hughson |
Posted: Thu Jun 30, 2016 2:27 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
|
Back to top |
|
 |
Vimal_bansal |
Posted: Thu Jun 30, 2016 3:14 am Post subject: |
|
|
Newbie
Joined: 29 Jun 2016 Posts: 8
|
Thanks Hughson for your reply. I already started Listener by using below command.
Code: |
[START LISTENER(RL)] |
One more Things I would like to share We have two different set up of MQ.
On one setup things are working fine in Client mode. Where as on other setup we are facing this issue. if you can point out some steps[MQ Commands] to compare both setup that would be great.
The error comes in log file under /var/mqm/errors directory.
Code: |
Incorrect data format received from host over tcp/ip, It may be that an unknown host is attempting to send the data. The channel name is '????'. In some cases it cannot be determined and so is shown as '????'
Then we added ip/hostname in /etc/hosts file and restarted our application. After this we got below mentioned error :
The channel name is '????'. In some cases it cannot be determined and so is shown as '????'
|
|
|
Back to top |
|
 |
mqjeff |
Posted: Thu Jun 30, 2016 3:54 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
dmpmqcfg with the option to write things out to one line gives you an excellent way to compare things.
run it against each queue manager, do a diff on the two files. _________________ chmod -R ugo-wx / |
|
Back to top |
|
 |
hughson |
Posted: Thu Jun 30, 2016 12:06 pm Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
Vimal_bansal wrote: |
The error comes in log file under /var/mqm/errors directory.
Code: |
Incorrect data format received from host over tcp/ip, It may be that an unknown host is attempting to send the data. The channel name is '????'. In some cases it cannot be determined and so is shown as '????' |
|
What command did you run on the client that caused this error on the server? Please provide the whole error message and not just a snippet. There is important information missing.
Vimal_bansal wrote: |
Then we added ip/hostname in /etc/hosts file and restarted our application. After this we got below mentioned error :
Code: |
The channel name is '????'. In some cases it cannot be determined and so is shown as '????'
|
|
This snippet of text is found in hundreds of error messages. I cannot tell which error you have had unless you provide the whole error message.
Cheers
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
Vimal_bansal |
Posted: Fri Jul 01, 2016 1:16 am Post subject: |
|
|
Newbie
Joined: 29 Jun 2016 Posts: 8
|
Here is the whole error message
Code: |
----- cmqxrfpt.c : 573 --------------------------------------------------------
05/11/2016 09:46:08 AM - Process(18850.19619) User(mqm) Program(amqrmppa)
Host(evlla025.delta.com) Installation(Installation1)
VRMF(8.0.0.4)
AMQ9207: The data received from host '10.220.201.85' on channel '????' is not
valid.
EXPLANATION:
Incorrect data format received from host '10.220.201.85' over TCP/IP. It may be
that an unknown host is attempting to send data.
An FFST file might be generated containing the invalid data received. It will
not be generated if this is the beginning of a conversation with the remote
side, and the format is a simple known format (example: a GET request from an
HTTP web browser). If you want to override this, to cause FFST files to be
written for any bad data, including simple known formats, then set the
environment variable AMQ_BAD_COMMS_DATA_FDCS=TRUE and restart the queue
manager.
The channel name is '????'; in some cases it cannot be determined and so is
shown as '????'.
ACTION:
|
|
|
Back to top |
|
 |
hughson |
Posted: Fri Jul 01, 2016 2:00 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
This tells me that you are not pointing an MQ client at your MQ listener port, but something else. What is the command you are running that causes this error?
Also, the FDC file, or at least the part showing what the unexpected data was would help to identify what it is you are pointing at your MQ listener that it doesn't expect. Did you take a look at that?
Cheers
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
Vimal_bansal |
Posted: Fri Jul 01, 2016 2:47 am Post subject: |
|
|
Newbie
Joined: 29 Jun 2016 Posts: 8
|
Thanks hughson for your reply.
We a have a java program where we are Using PCF and MQ java library :
Code: |
PCFMessageAgent pcfMessageAgent= new PCFMessageAgent();
pcfMessageAgent.connect(qmHost, qmPort, qmChannelName, "", queueManagerName);
|
On execution of this statement we are getting com.ibm.mq.MQException: MQJE001: Completion Code '2', Reason '2538'. in application log. And MQ log show the mentioned in previous post. |
|
Back to top |
|
 |
hughson |
Posted: Fri Jul 01, 2016 2:54 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
If you're using a valid MQ client and you're getting that FDC, you should raise a PMR with IBM because something is broken. _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
Vimal_bansal |
Posted: Thu Aug 11, 2016 4:30 am Post subject: |
|
|
Newbie
Joined: 29 Jun 2016 Posts: 8
|
I got this working. Host file was having the entry to denied every request.Removing the entry works here |
|
Back to top |
|
 |
|