• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Distributed & Global Transaction

 
Greenhorn
Posts: 24
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Can anyone throw light on the difference between these two.
TIA
Veer
 
Ranch Hand
Posts: 313
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Sure...
You can't compare them, because they aren't competing.
A distributed transaction is one that takes place over multiple containers. These containers may reside on the same or different hosts (...some people maintain that it's not distributed unless it crosses hosts). For example, if you application server is running on one box, your dbms is on a second box and your "MOM" is running on a third box and they need to participate in a single transaction, then it is distributed.
A global transactions are the solution. They are based off a standard developed by OpenGroup (www.opengroup.org) that created interface contracts. The contract between global trasactions and the transaction manager is called the TX interface, while the contract between transaction managers and the resource managers is called the XA interface.
These contracts (formal communication) are what allow these different containers/hosts to participate in a single transaction so they can all commit or rollback as a single entity even though they run in differenct VM's, on different hosts and under different resource managers.
Hope that helps,
Byron Estes
 
great veera
Greenhorn
Posts: 24
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks a lot byron.
I have a follow up question in that regard.
Can i control programmatically the commit or rollback of a global transaction if the scenario is like below,
-For example Iplanet Application Server on one box where one application is deployed and up and running.Another box having weblogic application server where i've another application deployed & running.DB in another box.
TIA
Veer
 
Byron Estes
Ranch Hand
Posts: 313
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by great veera:
Thanks a lot byron.
I have a follow up question in that regard.
Can i control programmatically the commit or rollback of a global transaction if the scenario is like below,
-For example Iplanet Application Server on one box where one application is deployed and up and running.Another box having weblogic application server where i've another application deployed & running.DB in another box.
TIA
Veer


You bet, as long as they implement the XA interface. Each product may support global transactions to varying degrees (...some may not support them at all). You really need to look at the specification of the software that you want to participate in the global transaction to be sure. This is an enterprise level functionality and is usually only implemented in enterprise level software/middleware, so don't be suprised if some newer or less expensive products don't support it or don't support it to the same degree.
Regards,
Byron Estes
reply
    Bookmark Topic Watch Topic
  • New Topic