Author |
Message
|
gpklos |
Posted: Fri Oct 12, 2012 3:58 am Post subject: Windows MQ Client Question about versioning |
|
|
Centurion
Joined: 24 May 2002 Posts: 108
|
Ok this is more of a curiousity question. We have a Windows Client application that has been running using V6.* of the client. It was compiled years ago with v6 client and the server it runs on is running V6.0.2.5 of the MQ client. (Yes I know it is out of support). This application connects to our mainframe queue manager which is running 7.0.1 of MQ. This application has been running for years without problems. Now this week the MQ client windows application was moved to a new Windows Server that is running Version 7.0.1.8 of MQ client. The application was not recompiled. The executables were just moved. Almost within an hour of the move, our Mainframe queue manager where the client connected started having some problems. (I won't go into details about that except that IBM created an APAR to address the issue with the zos queue manager abending). This is the first time this ever happend in 10+ years. So my questions is just some clarification. So even though the application wasn't changed, it now was using the MQIC32.DLL from version 7 on the new server, which could have caused some conflicts with the code that was written in V6 years ago? I didn't think that should happen, but I guess is possible?
Thanks,
Gary |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Oct 12, 2012 4:02 am Post subject: Re: Windows MQ Client Question about versioning |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
gpklos wrote: |
Now this week the MQ client windows application was moved to a new Windows Server that is running Version 7.0.1.8 of MQ client. The application was not recompiled. The executables were just moved. |
Bad move. You should always recompile against the new version.
If only to see if you need to refactor any code...  _________________ MQ & Broker admin |
|
Back to top |
|
 |
mqjeff |
Posted: Fri Oct 12, 2012 4:06 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
The queue manager is not related to this question - except that the only reason you were able to open a PMR was because your queue manager was running at a supported level.
An MQ C application does not package the entire MQ client installation inside the application binary. It instead links against it, so that the MQ API calls are findable at runtime in the shared libraries that are installed on the platform in question.
So, yes, the client application is *dependent* on the installed MQ client to determine what version of the client is in use. If you upgrade the installed MQ client, without making any changes to the application, the application is *automatically* using the upgraded client.
Unless you've done the wrong thing and made a private copy of the client dlls and forced the application to use those through configuration. This is a bad idea because it means you don't know what version of the client is in use!
And hopefully it was not using the MQIC32.DLL from the v7 client install on the new server, since at V7 the MQIC32.dll is renamed to MQIC.DLL...  |
|
Back to top |
|
 |
mqjeff |
Posted: Fri Oct 12, 2012 4:08 am Post subject: Re: Windows MQ Client Question about versioning |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
fjb_saper wrote: |
gpklos wrote: |
Now this week the MQ client windows application was moved to a new Windows Server that is running Version 7.0.1.8 of MQ client. The application was not recompiled. The executables were just moved. |
Bad move. You should always recompile against the new version.
If only to see if you need to refactor any code...  |
MQ is backwards compatible, so it fully supports running an application compiled against a previous version against a newer version.
It is always a good idea to recompile applications and ensure that they remain compatible with newer OS levels and etc, and to make sure that you have at least *one* person in the company who understands how to compile them and understands enough of the source code to make necessary changes. |
|
Back to top |
|
 |
gpklos |
Posted: Fri Oct 12, 2012 4:20 am Post subject: |
|
|
Centurion
Joined: 24 May 2002 Posts: 108
|
Wow those were quick responses. Thanks for that. Well for the most part you guys confirmed my suspicions that the client will use what is on the machine where it is running to determine the level of the client code. Even though things should be backward compatible, something isn't in this case, so we are going to have them recompile the entire application using the 7.0.1.8 client and put it on the server with the 7.0.1.8 code. I'm figuring that should take care of the problems. As you guys said it is always a good a idea to recompile anyways.
Gary |
|
Back to top |
|
 |
sandip_gaikwad |
Posted: Tue Nov 27, 2012 12:41 am Post subject: |
|
|
Voyager
Joined: 25 Jul 2011 Posts: 95
|
Kindly provide the IBM link regarding compatibility of MQ client and MQ application. |
|
Back to top |
|
 |
exerk |
Posted: Tue Nov 27, 2012 1:51 am Post subject: |
|
|
 Jedi Council
Joined: 02 Nov 2006 Posts: 6339
|
sandip_gaikwad wrote: |
Kindly provide the IBM link regarding compatibility of MQ client and MQ application. |
Use the latest WMQ Client and as regards the application, you should know whether your applications are only compatible with a given version of WMQ, and if they are, shame on your organisation for coding them in such a way that they are version-locked.
If on the other hand you mean which versions of WMQ Client are compatible with which versions of WMQ Server, and you need a definitive answer to show management, open a PMR or point them to the Clients section of the Info Centre. _________________ 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. |
|
Back to top |
|
 |
|