|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
Why XA only in Bindings mode? |
« View previous topic :: View next topic » |
Author |
Message
|
yashgt |
Posted: Wed May 18, 2016 11:45 am Post subject: |
|
|
Apprentice
Joined: 11 Nov 2014 Posts: 38
|
Sorry. Nowhere have I said my application is a JBOSS application. All it needs is the ability to perform XA transactions. But JBOSS is prohibited in our application for some reason . hence the need for MQ as transaction manager. |
|
Back to top |
|
 |
mqjeff |
Posted: Wed May 18, 2016 12:15 pm Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
Ah, well you mentioned JBOSS -"Why can't MQ act like JBOSS".
You also mentioned JNI. Both the Java and the JMS classes will let you do all the things you need with MQ without needing to use JNI. You can do JMS outside of a JEE server (JBOSS, WAS, etc.) .
So I'm still kind of confused as to why you're talking about JNI.
The fundamental answer to "Why can't MQ do X" is "It's not written that way". _________________ chmod -R ugo-wx / |
|
Back to top |
|
 |
Andyh |
Posted: Wed May 18, 2016 11:36 pm Post subject: |
|
|
Master
Joined: 29 Jul 2010 Posts: 239
|
"If you are using MQ as the transaction manager, then the MQ application must run on the same machine as the queue manager - because the XA functions use shared memory." NOT TRUE (why speculate in such a definitive manner?) for example when using MQCNO_ISOLATED_BINDING the XA support does not depend upon shared memory.
In order to act as a transaction manager the queue manager must be able to make XA calls to the coordinated resource managers in the correct thread and transaction context.
MQ does not currently have the client side support, or the relevant transaction context in the client to make this possible, hence it is not supported. The MQ client does provide XA support as an resource manager, and so any supported XA TM can be used in the client. |
|
Back to top |
|
 |
hughson |
Posted: Thu May 19, 2016 1:06 am Post subject: |
|
|
 Padawan
Joined: 09 May 2013 Posts: 1959 Location: Bay of Plenty, New Zealand
|
Andyh wrote: |
MQ does not currently have the client side support, or the relevant transaction context in the client to make this possible, hence it is not supported. |
Is there any technical reason why it couldn't be done, should the OP want to raise an RFE for example?
 _________________ Morag Hughson @MoragHughson
IBM MQ Technical Education Specialist
Get your IBM MQ training here!
MQGem Software |
|
Back to top |
|
 |
Andyh |
Posted: Thu May 19, 2016 5:35 am Post subject: |
|
|
Master
Joined: 29 Jul 2010 Posts: 239
|
Couldn't is a very broad description. As you know, the client is much less of a thin client than it used to be, but I suspect there would be a fair amount of additional configuration and handshaking between the client and the server that wouldn't be a very natural fit for the current implementation. For example, when the queue manager was processing an MQCMIT request (in the queue manager agent (e.g amqzlaa0) in the server), how would the xa_prepare be passed to the relevant RM's ? would it involve calling back into the client, or would we rely upon being able to call the same RM's from both the client and the server ?
I suspect there would have to be a LOT of customer pressure before this could get in plan.
Apart from a "one stop shop" I can't really see any advantage over a third party TM. |
|
Back to top |
|
 |
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|