Author |
Message
|
gaorenwei |
Posted: Tue Jan 08, 2019 5:47 am Post subject: MQRC_UNKNOWN_CHANNEL_NAME [2540] |
|
|
Apprentice
Joined: 16 May 2018 Posts: 29
|
Hi guys
I have a question about this issue.I try to connect to the QMGR use java.But the err message is "MQRC_UNKNOWN_CHANNEL_NAME [2540]".I have understand the err messsage mean. But when I check the client channel name is DST1.SVRCONN. It's same as the QMGR channel name.Can you help me? |
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Jan 08, 2019 5:54 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
Please use MQSC command to display the channel DST1.SVRCONN, post the results here.
Please post the code snippet where you name the channel. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
exerk |
Posted: Tue Jan 08, 2019 5:58 am Post subject: |
|
|
 Jedi Council
Joined: 02 Nov 2006 Posts: 6339
|
Channel (and other object) names are case sensitive, so if you're passing dst1.svrconn as the name it will fail...
Thank you Bruce! _________________ It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
Last edited by exerk on Tue Jan 08, 2019 6:14 am; edited 1 time in total |
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Jan 08, 2019 6:13 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
exerk wrote: |
Channel names are case sensitive, so if you're passing dst1.svrconn as the name it will fail... |
More generally, names in MQ are case-sensitive - not just channel names. If you want to maintain lower- or mixed-case, enclose the name in 'apostrophes.'
If you fail to enclose lower- or Mixed-Case names in 'apostrophes' MQ internals will fold the name into UPPER-CASE. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
hughson |
Posted: Tue Jan 08, 2019 3:00 pm Post subject: Re: MQRC_UNKNOWN_CHANNEL_NAME [2540] |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
gaorenwei wrote: |
Hi guys
I have a question about this issue.I try to connect to the QMGR use java.But the err message is "MQRC_UNKNOWN_CHANNEL_NAME [2540]".I have understand the err messsage mean. But when I check the client channel name is DST1.SVRCONN. It's same as the QMGR channel name.Can you help me? |
Sometimes this can mean that the CONNAME in your client channel is incorrect and you are not pointing at the queue manager you think you are pointing at. And therefore the channel does not exist on THAT queue manager.
Double check your hostname and port number in use for the client.
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
gaorenwei |
Posted: Tue Jan 08, 2019 5:26 pm Post subject: |
|
|
Apprentice
Joined: 16 May 2018 Posts: 29
|
Thanks guys for replying me.Wrong message.
dis chl(NSU2.SVRCONN)
AMQ8414: Display Channel details.
CHANNEL(NSU2.SVRCONN) CHLTYPE(SVRCONN)
ALTDATE(2018-08-2 ALTTIME(03.47.23)
CERTLABL( ) COMPHDR(NONE)
COMPMSG(NONE) DESCR( )
DISCINT(0) HBINT(300)
KAINT(AUTO) MAXINST(999999999)
MAXINSTC(999999999) MAXMSGL(4194304)
MCAUSER(mqm) MONCHL(QMGR)
RCVDATA( ) RCVEXIT( )
SCYDATA( ) SCYEXIT( )
SENDDATA( ) SENDEXIT( )
SHARECNV(10) SSLCAUTH(OPTIONAL)
SSLCIPH( ) SSLPEER( )
TRPTYPE(TCP)
When I check the QMGR error log.I find this.
AMQ9218: The TCP/IP listener program could not bind to port number 1414.
EXPLANATION:
An attempt to bind the TCP/IP socket to the listener port was unsuccessful.
ACTION:
The failure could be due to another program, including other MQ listeners,
using the same port number. The return code from the 'bind' call for port :1414
was 98. Record these values and tell the systems administrator.
----- amqclita.c : 771 --------------------------------------------------------
12/26/2018 03:19:28 AM - Process(5996.1) User(mqm) Program(amqzmgr0)
Host(tpyfraisciw01.sl.bluecloud.ibm.com) Installation(Installation1)
VRMF(8.0.0.4) QMgr(NSU2)
AMQ5027: The listener 'SYSTEM.LISTENER.TCP.1' has ended. ProcessId(19638).
EXPLANATION:
The listener process has ended.
ACTION:
None. |
|
Back to top |
|
 |
gaorenwei |
Posted: Tue Jan 08, 2019 5:28 pm Post subject: |
|
|
Apprentice
Joined: 16 May 2018 Posts: 29
|
'use strict';
var mq = require('ibmmq');
var MQC = mq.MQC;
// Import any other packages needed
var StringDecoder = require('string_decoder').StringDecoder;
var decoder = new StringDecoder('utf8');
// The queue manager to be used.
var qMgr = "NSU2";
var hConn;
// The program starts here.
// Connect to the queue manager.
console.log("Sample AMQSCONN.JS start");
// Create default MQCNO structure
var cno = new mq.MQCNO();
cno.Options |= MQC.MQCNO_CLIENT_BINDING;
// And then fill in relevant fields for the MQCD
var cd = new mq.MQCD();
cd.ConnectionName = "**************";//
cd.ChannelName = "NSU2.SVRCONN";
// Make the MQCNO refer to the MQCD
cno.ClientConn = cd;
var qName = "COV.MQ.L.WWD";
var ok = true;
// Now we can try to connect
mq.Connx(qMgr, cno, function(err,hConn) {
if (err) {
console.log(formatErr(err));
} else {
console.log('conn',hConn);
var od = new mq.MQOD();
od.ObjectName = qName;
od.ObjectType = MQC.MQOT_Q;
console.log('MQC.MQOT_Q',MQC.MQOT_Q);
var openOptions = MQC.MQOO_INPUT_AS_Q_DEF;
mq.Open(hConn,od,openOptions,function(err,hObj) {
if (err) {
console.log('conn-err',err);
console.log(formatErr(err));
} else {
console.log("MQOPEN of %s successful",hObj);
// And loop getting messages until done.
// getMessages(hObj);
}
//cleanup(hConn,hObj);
})
}
});
I try to connect to the mq use node.js |
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Jan 08, 2019 6:15 pm Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
gaorenwei wrote: |
Thanks guys for replying me.Wrong message.
dis chl(NSU2.SVRCONN)
AMQ8414: Display Channel details.
CHANNEL(NSU2.SVRCONN) CHLTYPE(SVRCONN)
ALTDATE(2018-08-2 ALTTIME(03.47.23)
CERTLABL( ) COMPHDR(NONE)
COMPMSG(NONE) DESCR( )
DISCINT(0) HBINT(300)
KAINT(AUTO) MAXINST(999999999)
MAXINSTC(999999999) MAXMSGL(4194304)
MCAUSER(mqm) MONCHL(QMGR)
RCVDATA( ) RCVEXIT( )
SCYDATA( ) SCYEXIT( )
SENDDATA( ) SENDEXIT( )
SHARECNV(10) SSLCAUTH(OPTIONAL)
SSLCIPH( ) SSLPEER( )
TRPTYPE(TCP)
When I check the QMGR error log.I find this.
AMQ9218: The TCP/IP listener program could not bind to port number 1414.
EXPLANATION:
An attempt to bind the TCP/IP socket to the listener port was unsuccessful.
ACTION:
The failure could be due to another program, including other MQ listeners,
using the same port number. The return code from the 'bind' call for port :1414
was 98. Record these values and tell the systems administrator.
----- amqclita.c : 771 --------------------------------------------------------
12/26/2018 03:19:28 AM - Process(5996.1) User(mqm) Program(amqzmgr0)
Host(tpyfraisciw01.sl.bluecloud.ibm.com) Installation(Installation1)
VRMF(8.0.0.4) QMgr(NSU2)
AMQ5027: The listener 'SYSTEM.LISTENER.TCP.1' has ended. ProcessId(19638).
EXPLANATION:
The listener process has ended.
ACTION:
None. |
If your client connection info doesn't specify the port number of the qmgr, 1414 will be used. What port number is the qmgr listener listening on?
If your sysadmin created a LISTENER OBJECT, you can use MQSC to display listeners.
If Linux/UNIX, issue this command: ps -ef | grep runmqlsr | grep yourqmgrname
Or use NETSTAT. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
gaorenwei |
Posted: Tue Jan 08, 2019 6:34 pm Post subject: |
|
|
Apprentice
Joined: 16 May 2018 Posts: 29
|
The QMGR listener is listen 1414.
dis lstr(NSU2.LSTR)
AMQ8630: Display listener information details.
LISTENER(NSU2.LSTR) CONTROL(QMGR)
TRPTYPE(TCP) PORT(1414)
IPADDR( ) BACKLOG(0)
DESCR( ) ALTDATE(2018-09-05)
ALTTIME(02.57.17)
Currently,I have a QMGR bind the port 1414.So the different QMRG can not bind same port? |
|
Back to top |
|
 |
bruce2359 |
Posted: Tue Jan 08, 2019 6:42 pm Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
gaorenwei wrote: |
The QMGR listener is listen 1414.
dis lstr(NSU2.LSTR)
AMQ8630: Display listener information details.
LISTENER(NSU2.LSTR) CONTROL(QMGR)
TRPTYPE(TCP) PORT(1414)
IPADDR( ) BACKLOG(0)
DESCR( ) ALTDATE(2018-09-05)
ALTTIME(02.57.17)
Currently,I have a QMGR bind the port 1414.So the different QMRG can not bind same port? |
No, you cannot have multiple qmgrs in the same o/s instance listening on the same port number.
DISPLAY LSSTATUS(*) will show you which listener is running on this qmgr. _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
gaorenwei |
Posted: Tue Jan 08, 2019 6:49 pm Post subject: |
|
|
Apprentice
Joined: 16 May 2018 Posts: 29
|
|
Back to top |
|
 |
hughson |
Posted: Tue Jan 08, 2019 9:25 pm Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
gaorenwei wrote: |
When I check the QMGR error log.I find this.
Code: |
AMQ9218: The TCP/IP listener program could not bind to port number 1414.
EXPLANATION:
An attempt to bind the TCP/IP socket to the listener port was unsuccessful.
ACTION:
The failure could be due to another program, including other MQ listeners,
using the same port number. The return code from the 'bind' call for port :1414
was 98. Record these values and tell the systems administrator.
----- amqclita.c : 771 --------------------------------------------------------
12/26/2018 03:19:28 AM - Process(5996.1) User(mqm) Program(amqzmgr0)
Host(tpyfraisciw01.sl.bluecloud.ibm.com) Installation(Installation1)
VRMF(8.0.0.4) QMgr(NSU2)
AMQ5027: The listener 'SYSTEM.LISTENER.TCP.1' has ended. ProcessId(19638).
EXPLANATION:
The listener process has ended.
ACTION:
None. |
|
gaorenwei wrote: |
The QMGR listener is listen 1414.
dis lstr(NSU2.LSTR)
AMQ8630: Display listener information details.
LISTENER(NSU2.LSTR) CONTROL(QMGR)
TRPTYPE(TCP) PORT(1414)
IPADDR( ) BACKLOG(0)
DESCR( ) ALTDATE(2018-09-05)
ALTTIME(02.57.17) |
You have shown us an error message on queue manager NSU2 for a listener called 'SYSTEM.LISTENER.TCP.1'. This is how the runmqlsr control command listener is named. It is failing to bind to port 1414. You have also shown us a defined listener object called NSU2.LSTR which also uses port 1414. Assuming NSU2.LSTR is also on queue manager NSU2 (as it's name suggests) this will be the reason the runmqlsr listener failed to bind. Two listeners cannot bind to the same port number.
gaorenwei wrote: |
Currently,I have a QMGR bind the port 1414.So the different QMRG can not bind same port? |
Can you elaborate what this "different" queue manager is? So far you've shown us NSU2. Is the queue manager you were trying to reach when you got your original error MQRC_UNKNOWN_CHANNEL_NAME [2540] also trying to use port 1414 on the same hostname? If so, this would account for the error the client received, because you reached the wrong queue manager where the channel is not defined.
Ensure each queue manager has one listener running and has a unique port number, change the client CONNAME to reflect the correct port number of the queue manager and see how you get on.
Cheers,
Morag _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
PeterPotkay |
Posted: Wed Jan 09, 2019 5:28 am Post subject: |
|
|
 Poobah
Joined: 15 May 2001 Posts: 7722
|
bruce2359 wrote: |
No, you cannot have multiple qmgrs in the same o/s instance listening on the same port number.
|
Although if that single o/s instance has multiple IP addresses, you can have multiple listeners on the same QM or on multiple QMs all on the same port, as long as you tell each listener to bind to a different IP address. On that one o/s instance.
Code: |
DISPLAY LSSTATUS (*) all
AMQ8631: Display listener status details.
LISTENER(MY.LISTENER.1) STATUS(RUNNING)
PID(131077) STARTDA(2018-11-30)
STARTTI(16.25.45) DESCR( )
TRPTYPE(TCP) CONTROL(QMGR)
IPADDR(::ffff:**.***.**.216) PORT(1414)
BACKLOG(100)
AMQ8631: Display listener status details.
LISTENER(MY.LISTENER.2) STATUS(RUNNING)
PID(77163) STARTDA(2019-01-09)
STARTTI(08.23.40) DESCR( )
TRPTYPE(TCP) CONTROL(QMGR)
IPADDR(::ffff:**.***.**.217) PORT(1414) |
_________________ Peter Potkay
Keep Calm and MQ On |
|
Back to top |
|
 |
bruce2359 |
Posted: Wed Jan 09, 2019 5:38 am Post subject: |
|
|
 Poobah
Joined: 05 Jan 2008 Posts: 9469 Location: US: west coast, almost. Otherwise, enroute.
|
PeterPotkay wrote: |
bruce2359 wrote: |
No, you cannot have multiple qmgrs in the same o/s instance listening on the same port number.
|
Although if that single o/s instance has multiple IP addresses, you can have multiple listeners on the same QM or on multiple QMs all on the same port, as long as you tell each listener to bind to a different IP address. On that one o/s instance.
Code: |
DISPLAY LSSTATUS (*) all
AMQ8631: Display listener status details.
LISTENER(MY.LISTENER.1) STATUS(RUNNING)
PID(131077) STARTDA(2018-11-30)
STARTTI(16.25.45) DESCR( )
TRPTYPE(TCP) CONTROL(QMGR)
IPADDR(::ffff:**.***.**.216) PORT(1414)
BACKLOG(100)
AMQ8631: Display listener status details.
LISTENER(MY.LISTENER.2) STATUS(RUNNING)
PID(77163) STARTDA(2019-01-09)
STARTTI(08.23.40) DESCR( )
TRPTYPE(TCP) CONTROL(QMGR)
IPADDR(::ffff:**.***.**.217) PORT(1414) |
|
 _________________ I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live. |
|
Back to top |
|
 |
satendranegi |
Posted: Sun Aug 06, 2023 12:18 am Post subject: |
|
|
Newbie
Joined: 30 Sep 2015 Posts: 6
|
If anyone faces this issue again, in case my case the issue with the channel name configured at client side .... it had one next line in it !!! |
|
Back to top |
|
 |
|