10 Replies Latest reply on Jun 26, 2013 3:28 AM by abyv

    Distributed Transaction using OTS

      I came to know that JBoss Ts support OTS specification for distributed transaction management other than the traditional XA.  The  resources like Hadoop, Cassendra( no SQL db's) which are not XA compliant( doesn't have an out of the box XA Resource Manager)  does not have the capability to involve in a  distributed transaction via XA. I am a newbie to the OTS spec and it would be of great value if any of you could answer few queries raised below

      Can distributed transaction management can be realized using OTS spec for non XA compliant resources?

      I have used the jboss Transaction Manager for XA compliance to interact with RDBMS and infinispan,whether migrating the same to OTS interface need a code change ?

        • 1. Re: Distributed Transaction using OTS
          tomjenkinson

          Hi Aby,

           

          I do not think that Hadoop/Cassendra support enlisting as CORBA (OTS - Object Transaction Service - http://www.omg.org/spec/OTS/) resources into a transaction, though would be interested to hear otherwise.

           

          Tom

          1 of 1 people found this helpful
          • 2. Re: Distributed Transaction using OTS

            Thank You Tom..

            Though it didnt sound good, was indeed a critical and important information.Looking forward for  a provision to manage transactions of  these sql 'less' big data systems released soon from Jboss team

            • 3. Re: Distributed Transaction using OTS
              tomjenkinson

               

              • 4. Re: Distributed Transaction using OTS
                mmusgrov

                For what it's worth neo4j provides an extension point to facilitate using third party transaction managers - ie it should be easy include neo4j resources in JBoss TS initiated transactions (but I have no experience with any other nosql databases).

                1 of 1 people found this helpful
                • 5. Re: Distributed Transaction using OTS

                  Hi,

                  I have a few more queries related to OTS implementation provided by JBoss Ts :

                  •      Does OTS implementation can be operated via JTA API.i.e whether we can manage transaction life cycle through javax.jta.TransactionManager
                  •      If yes, how can we configure to work JBoss Jts in OTS mode.
                  •      If no, how are resources enlisted  in case of OTS implementation and how transactions are managed programmatically.

                       It would be of great help if you can guide me through some sample code stubs to demonstrate a entire cycle of an OTS transaction

                  • 6. Re: Distributed Transaction using OTS
                    marklittle

                    Take a look at the release and the source repository. You'll find copious amounts of documentation and example code that will illustrate everything you need to know.

                    • 7. Re: Distributed Transaction using OTS

                      Thank You Mark,

                      The reference provided was realy helpful and we are looking forward to plugin the OTS implementation for our application( stand alone), in place of Jboss Jta for managing transaction ( jboss implementation of javax.jta.TransactionManager  embedded within the com.arjuna.ats.jta.TransactionManager) for the following reasons :

                      • The transaction context can spread across different nodes( different jvms,across machines)
                      • The transacion context can span across multi threads

                       

                      I would like to know whether we can use the same API's and change the underlying implementation to OTS mode.What i could infer from the JBoss Jts product architecture that OTS implementation is also JTA compliant, but the the guide says usage of different interface

                      • 8. Re: Distributed Transaction using OTS
                        mmusgrov

                        There are some examples in the quickstarts that you can use to get you started, for example:

                         

                        https://github.com/jbosstm/quickstart/tree/master/ArjunaJTS/trailmap

                        https://github.com/jbosstm/quickstart/tree/master/ArjunaJTS/recovery

                        • 9. Re: Distributed Transaction using OTS
                          marklittle

                          Check out JTA and JTS documentation as well as JTAX module and examples.

                          • 10. Re: Distributed Transaction using OTS

                            Thank You Micheal, the examples were realy helpful in getting an overal picture of how things work.

                            Mark, I hav looked at the JTS documentation, even though I got answers by looking at the code and document, I need few more clarification on

                            • How transactions are managed in multi thread( we have tried out with suspend and resume, but need a comprehensive solution where we could manage transaction from  a single point across threads)?
                            • Does the OTS_thread also uses CORBA internally for transaction?