Coombs, Lawrence | 20 Jun 2012 18:15

Re: Automatic Client Reconnection

I have been experimenting with my multi-instance queue manager to see if I can get any WMQ client apllication to reconenct when I do a failover.

The IBM sample amqsphac works fine. I am trying to get IBM’s Queue Replicator product to (Q-Capture) to reconnect but it keeps dying on the ‘2009’.

 

Both  the Mqserver  and client are running on WMQ 7.0.1.8.

I have tried setting the mqclient.ini (DefRecon=YES).

The CCDT has both the active and standy IP address of the servers and this part works fine. It can conenct to either IP address.

 

I have tried using the amqsputc but this dies with the ‘2009’ too.

 

What am I missing something here?

 

 

This message, including any attachments, is the property of Sears Holdings Corporation and/or one of its subsidiaries. It is confidential and may contain proprietary or legally privileged information. If you are not the intended recipient, please delete it without reading the contents. Thank you.

List Archive - Manage Your List Settings - Unsubscribe

Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com

Sonderegger, Markus | 25 Jun 2012 22:54
Favicon

Re: Automatic Client Reconnection

Could it be that the Q-Capture program is either a native MQ Java or managed .NET/XMS application?

These 2 API do not support reconnect feature as described in http://publib.boulder.ibm.com/infocenter/wmqv7/v7r1/topic/com.ibm.mq.doc/cs70190_.htm

for reasons I do not understand.

 

I experimented with a single qmgr using endmqm –ri (specifically the –r option is important) or interrupting the communication simulating it with iptables on Linux.

The client was as JMS application where I did set the reconnect options in the jndi bindings file.

Bringing down the qmgr, interrupting the traffic or even killing -9 the qmgr did not bring down the client (even when the traffic was SSL encrypted).

 

Regards

Markus

 

______________________________________________________________

 

Dr. Markus Sonderegger, PTND
Bank Julius Baer & Co. Ltd.
P. O. Box, CH-8010 Zürich, Switzerland
Telephone +41 (0)58 88 77281, Fax +41 (0)58 88 77610

Mobile +41 (0)79 698 09 79
www.juliusbaer.com

 

______________________________________________________________

From: MQSeries List [mailto:MQSERIES-0lvw86wZMd9k/bWDasg6fz0nGCXTTDWa@public.gmane.orgAC.AT] On Behalf Of Coombs, Lawrence
Sent: Mittwoch, 20. Juni 2012 18:15
To: MQSERIES-0lvw86wZMd9k/bWDasg6f+2wyY2g16FtwPuJ0ROkVbw@public.gmane.org
Subject: Re: Automatic Client Reconnection

 

I have been experimenting with my multi-instance queue manager to see if I can get any WMQ client apllication to reconenct when I do a failover.

The IBM sample amqsphac works fine. I am trying to get IBM’s Queue Replicator product to (Q-Capture) to reconnect but it keeps dying on the ‘2009’.

 

Both  the Mqserver  and client are running on WMQ 7.0.1.8.

I have tried setting the mqclient.ini (DefRecon=YES).

The CCDT has both the active and standy IP address of the servers and this part works fine. It can conenct to either IP address.

 

I have tried using the amqsputc but this dies with the ‘2009’ too.

 

What am I missing something here?

 

 

This message, including any attachments, is the property of Sears Holdings Corporation and/or one of its subsidiaries. It is confidential and may contain proprietary or legally privileged information. If you are not the intended recipient, please delete it without reading the contents. Thank you.

 

List Archive - Manage Your List Settings - Unsubscribe

Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com



*****JuliusBaer Disclaimer***** This e-mail is for the intended recipient only and may contain confidential or privileged information. If you have received this e-mail by mistake, please contact us immediately and completely delete it (and any attachments) and do not forward it or inform any other person of its contents. If you send us messages by e-mail, we take this as your authorisation to correspond with you by e-mail, however, we reserve the right not to execute orders and instructions transmitted by e-mail at any time and without further explanation. If you do not wish to receive any further e-mail correspondence please let us know. E-mail transmission cannot be guaranteed to be secure or error-free as information could be intercepted, amended, corrupted, lost, destroyed, arrive late or incomplete, or contain viruses. Neither the Julius Baer Group nor the sender accept liability for any errors or omissions in the content of this message which arise as a result of its e-mail transmission. Please note that all e-mail communications to and from the Julius Baer Group may be monitored. This communication is for informational purposes only. It is not intended as an offer or solicitation for the purchase or sale of any financial instrument or as an official confirmation of any transaction.

List Archive - Manage Your List Settings - Unsubscribe

Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com

Barry Goldstein | 26 Jun 2012 17:07

Re: Automatic Client Reconnection

I also have been playing with automatic client reconnection using version 7.1.0.0. I got it to work pretty well with the MQSERVER environment variable and the amqsputc/amqsgetc sample programs. But, when I tried using it from JMS, I ran into a show stopper. Apparently, automatic client reconnection will ONLY work for persistent connections in JMS. It must be able to connect to the first queue manager in the list. I thought it would work the same as non- JMS connections where it would try the first host(port) and if that didn't work, try the next host(port) in the connectionnamelist. It doesn't work that way at all, you get an error "can not create connection factory", when the call fails on the first server. Here is some information from the ticket that I opened with IBM: (Sorry the extract from the manual did not format very well) From: Goldstein, Barry A Sent: Sunday, June 24, 2012 7:25 AM To: 'websphere_support-5Nx6oC45glHMbYB6QlFGEg@public.gmane.org' Cc: DL EA TEAM Subject: RE: 76233 122 000: Automatic JMS client reconnection fails This is only usable for persistent connections then. I am disappointed. My first test was using the MQSERVER variable with the sample programs (amqsputc, amqsgetc). That worked exactly like I wanted it to, when the first connection could not be established, it made connection with the second one. Would a JNDI connection or a CCDT connection work more like my first test using the MQSERVER environment variable? Thank you, Barry From: websphere_support-5Nx6oC45glHMbYB6QlFGEg@public.gmane.org [mailto:websphere_support-5Nx6oC45glHMbYB6QlFGEg@public.gmane.org] Sent: Friday, June 22, 2012 3:43 PM To: Goldstein, Barry A Subject: Re: 76233 122 000: Automatic JMS client reconnection fails Hello, In your error it seems that the client does not initially connect to the QM: /* SHUTDOWN SQLX1ESB1 */ javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager for 'goblxdvesb1:*'. This is the first QM in the cf.setConnectionNameList("goblxdvesb1 (1464),goblxdvesb2(1464)"); Per the documentation for reconnectable JMS clients: "Automatically reconnectable client connections only become reconnectable once the connection has been established." Automatic client reconnection Configure your JMS client to reconnect automatically following a network, queue manager, or server failure. Use the CONNECTIONNAMELIST and CLIENTRECONNECTOPTIONS properties of the MQClientConnectionFactory class to configure a client connection to automatically reconnect following a connection failure or an administrative request to reconnect client applications after stopping a queue manager. The full list of connection names in a ConnectionNameList is only accessible to the set/getConnectionNameList methods that can handle a list of connection names. Methods such as get/setHostname that do not handle lists of names, access the first name in the list. Automatically reconnectable client connections only become reconnectable once the connection has been established. Whether an application continues to work correctly after being reconnected automatically depends on its design. Read the related topics to understand how to design reconnectable clients. Some existing clients might work correctly without modification following automatic reconnection. Let me know if you have additional questions. Jim Simmons WMQ support. Thank you for using IBM products and support. http://www.ibm.com/support

List Archive - Manage Your List Settings - Unsubscribe

Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com

Barry Goldstein | 26 Jun 2012 17:21

Re: Automatic Client Reconnection

(Sorry about the first message, it looked fine in the browser, but came out 
looking funky...)

I also have been playing with automatic client reconnection using version 
7.1.0.0. I got it to work pretty well with the MQSERVER environment variable 
and the amqsputc/amqsgetc sample programs. But, when I tried using it from 
JMS, I ran into a show stopper. Apparently, automatic client reconnection will 
ONLY work for persistent connections in JMS. It must be able to connect to 
the first queue manager in the list. I thought it would work the same as non- 
JMS connections where it would try the first host(port) and if that didn't work, 
try the next host(port) in the connectionnamelist. It doesn't work that way at 
all, you get an error "can not create connection factory", when the call fails 
on the first server. 

Here is some information from the ticket that I opened with IBM: 
(The extract from the manual that support sent me did not format well)

-------

This is only usable for persistent connections then.

I am disappointed. My first test was using the MQSERVER variable with the 
sample programs (amqsputc, amqsgetc). That worked exactly like I wanted it 
to, when the first connection could not be established, it made connection 
with the second one.

Would a JNDI connection or a CCDT connection work more like my first test 
using the MQSERVER environment variable?

Thank you,
Barry

From: websphere_support@... 
[mailto:websphere_support@...] 
Sent: Friday, June 22, 2012 3:43 PM
To: Goldstein, Barry A
Subject: Re: 76233 122 000: Automatic JMS client reconnection fails

Hello,

In your error it seems that the client does not initially connect to the QM:
/* SHUTDOWN SQLX1ESB1 */
javax.jms.JMSException: MQJMS2005: failed to create MQQueueManager 
for 'goblxdvesb1:*'.
This is the first QM in the cf.setConnectionNameList("goblxdvesb1
(1464),goblxdvesb2(1464)");

Per the documentation for reconnectable JMS clients:
"Automatically reconnectable client connections only become reconnectable 
once the connection has been established."

Automatic client reconnection
Configure your JMS client to reconnect automatically following a network, 
queue manager, or server failure.
Use the CONNECTIONNAMELIST and CLIENTRECONNECTOPTIONS properties of 
the MQClientConnectionFactory class to configure a client connection to 
automatically reconnect following a connection failure or an administrative 
request to reconnect client applications after stopping a queue manager.
The full list of connection names in a ConnectionNameList is only accessible to 
the set/getConnectionNameList methods that can handle a list of connection 
names. Methods such as get/setHostname that do not handle lists of names, 
access the first name in the list.

Automatically reconnectable client connections only become reconnectable 
once the connection has been established.

Whether an application continues to work correctly after being reconnected 
automatically depends on its design. Read the related topics to understand 
how to design reconnectable clients. Some existing clients might work 
correctly without modification following automatic reconnection.

Let me know if you have additional questions.
Jim Simmons WMQ support.

Thank you for using IBM products and support.
http://www.ibm.com/support

To unsubscribe, write to LISTSERV@... and,
in the message body (not the subject), write: SIGNOFF MQSERIES

Gmane