Author |
Message
|
JYama |
Posted: Mon Jan 09, 2006 6:27 pm Post subject: Two-phase transaction with WBI adapters? |
|
|
 Master
Joined: 27 Mar 2002 Posts: 281
|
Hi all,
Now I'm checking the spec. of the interaction between WMB and WBI adapters, in particular JDBC adapter.
However I'm still not sure about it in detail.
Is there anybody who is familiar with this issue?
My questions are;
1.Does WBI JDBC adapter support two-phase transaction (two-phase commit, 2PC) between database and (JMS)RequestQueue?
2.Can JDBC adapter be coordinator for 2PC between (JMS)MQ and database? (If not, how can we cope with this problem?)
Up to know, I know these;
1.WBI adapters require JMS transport when we use it with WMB,
2.JMS over MQ doesn't support 2PC.
Many thanks in advance,
JY |
|
Back to top |
|
 |
fjb_saper |
Posted: Mon Jan 09, 2006 7:18 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
JYama wrote: |
2.JMS over MQ doesn't support 2PC. |
And if you believe that I have a nice beach front property in Arizona I'd like to sell you.
Check out the manuals. Use a Transaction Manager, (WAS is nice), that is J2EE XA compliant. Make sure that the server is on the same machine as the TM or use a transactional client.
Now it may be that the broker will not yet allow it (I don't know if the broker container is fully J2EE compliant). But JMS over MQ does support multiphase commit.
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
JYama |
Posted: Mon Jan 09, 2006 7:58 pm Post subject: |
|
|
 Master
Joined: 27 Mar 2002 Posts: 281
|
Well, you say another transaction manager (Ex. WAS) is necessary to guarantee transactions, right?
In other words, without TM such as WAS, if database is suddenly stopped during event processing (Ex. create:insert into tables) by JDBC adapter,
the adapter doesn't guarantee the synch. point between MQCMIT (on the ResponseQueue by the adapter) and database(rollback).
Therefore, we can't complete 2PC using WMB and WBI JDBC adapter, correct?
Cheers,
JY |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Jan 10, 2006 4:25 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Message Broker itself can act as a transaction manager - performing 2PC for it's own flows.
Whether it provides those services to Adapters, I don't know.
It is probably a good idea to open a PMR to get clarification on this. 2PC is not something to make guesses about. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
JYama |
Posted: Tue Jan 10, 2006 9:25 pm Post subject: |
|
|
 Master
Joined: 27 Mar 2002 Posts: 281
|
Thank you all,
So far, it should be done by WMB as TM and I understand it.
BTW, I'm now considering two problems.
1. How can we complete 2PC between WMB and SQLServer?
In my unserstanding, XA isn't supported by SQLServer, right?
2. Any ideas to invoke a message flow by database trigger?
Application?
Actually one reason I wanted to use WSA for JDBC was to invoke message flows by database trigger (event driven).
Thanks in advance,
JY |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Jan 11, 2006 4:25 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Last I knew, and this may have changed, the ODBC drivers supplied (and required) with WMB for SQLServer didn't support XA.
That means, guess what, you can't do XA with Broker against SQLServer.
You *can* do Broker coordinated transactions, though. Which are close.
But you'll need to evaluate for yourself whether "close" is "good enough". There's still some small chance of failrue with broker coordinated transactions - how small, I couldn't tell you.
This is an area that has never exactly been well documented. It's probably a good idea to open a PMR.
You should also consider strongly whether or not what you are trying to do with broker is better done in a real application server or not. Broker is not a real application server, per se. Again, it's close, but you'll have to decide for yourself whether that's good enough. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
JYama |
Posted: Wed Jan 11, 2006 11:44 pm Post subject: |
|
|
 Master
Joined: 27 Mar 2002 Posts: 281
|
Thank you very much, Jefflowrey, I appreciate it.
Now I understand there are limitations when we integrate WMB and SQLServer.
I will carefully consider it again and check recent situations on it.
Cheers, |
|
Back to top |
|
 |
Ian |
Posted: Thu Jan 12, 2006 6:52 am Post subject: |
|
|
Disciple
Joined: 22 Nov 2002 Posts: 152 Location: London, UK
|
I have just checked the System Requirements pages for WBIMB v5 and WMB v6 and this could be misleading ...
WBIMB v5 System Requirements :- Databases -> Microsoft SQL Server 2000 (SP3)
WMB v6 System Requirements :- Databases -> Microsoft SQL Server 2000 (plus Service Pack 3A) (non-XA only)
The real answer is that both WBIMB v5 and WBI v6 do not support XA with SQL Server because neither WMQ v5.3 nor WMQ v6 support XA with SQL Server (where WMQ is the Transaction Manager).
It is my understanding that this is because Microsoft have implemented something proprietry in their SQL Server XA support and this breaks the transactional model which WMQ supports. _________________ Regards, Ian |
|
Back to top |
|
 |
|