OfBiz and distributed tx

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

OfBiz and distributed tx

gnomie
While trying to understand OfBiz better, I found that OfBiz relies on
Geronimo's JTA implementation. I have a few questions on that (sorry if
I missed that in the documentation).

Is OfBiz actually using XAResources and therefore 2-phase-commits?

And if, is that because of the JMS usage?

Doesn't that imply a performance penalty that should be avoided if
possible and is there a way to configure OfBiz to handle everything
always in a non-distributed tx?

Thanks,
  Henning




Reply | Threaded
Open this post in threaded view
|

Re: OfBiz and distributed tx

David E. Jones-2

On Jul 17, 2009, at 3:59 AM, Henning wrote:

> While trying to understand OfBiz better, I found that OfBiz relies on
> Geronimo's JTA implementation. I have a few questions on that (sorry  
> if
> I missed that in the documentation).

By default OFBiz does use the Geronimo JTA implementation. Which  
transaction manager used does depend on the configuration in the  
entityengine.xml file. If you are deploying OFBiz in an external  
application server the typical configuration is to get the JTA objects  
from JNDI.

> Is OfBiz actually using XAResources and therefore 2-phase-commits?
>
> And if, is that because of the JMS usage?

Yes, we are enlisting XA resources as part of transaction management.  
The original reason was to support transactions across multiple  
databases, and JMS transactions are also supported this way. With the  
recent discussions about the potential use of the Java content  
repository, specifically the Apache Jackrabbit implementation, that  
would also be enlisted in the same transactions.

> Doesn't that imply a performance penalty that should be avoided if
> possible and is there a way to configure OfBiz to handle everything
> always in a non-distributed tx?

  I don't know what sort of performance penalty might be involved in  
this. It would be interesting to test both ways and see, as some  
deployments don't need multiple databases or other enlisted resources.

Is this something that you have played with before, and are you saying  
that you would like to experiment with it? I'm not sure how many code  
changes would be required as I haven't really dug into this stuff for  
a while, but it should be possible to have things work one way or the  
other based on configuration.

-David

Reply | Threaded
Open this post in threaded view
|

Re: OfBiz and distributed tx

gnomie
The background of my question was that I would prefer to have just one
database and no need for any distributed transactions. Specifically for the
JMS usage is that really using a different data source / connection and
hence another transaction? There is probably some config for that.

As I indicated in a previous message I am trying to integrate OfBiz with
another server environment and as you say, I configured it to get the data
source and the user transaction from JNDI. It's working so far, I just
noticed that I had not looked into XA config so far.

Thanks,
  Henning



Technically of cou

On Fri, Jul 17, 2009 at 10:06 PM, David E Jones <[hidden email]> wrote:

>
> On Jul 17, 2009, at 3:59 AM, Henning wrote:
>
>  While trying to understand OfBiz better, I found that OfBiz relies on
>> Geronimo's JTA implementation. I have a few questions on that (sorry if
>> I missed that in the documentation).
>>
>
> By default OFBiz does use the Geronimo JTA implementation. Which
> transaction manager used does depend on the configuration in the
> entityengine.xml file. If you are deploying OFBiz in an external application
> server the typical configuration is to get the JTA objects from JNDI.
>
>  Is OfBiz actually using XAResources and therefore 2-phase-commits?
>>
>> And if, is that because of the JMS usage?
>>
>
> Yes, we are enlisting XA resources as part of transaction management. The
> original reason was to support transactions across multiple databases, and
> JMS transactions are also supported this way. With the recent discussions
> about the potential use of the Java content repository, specifically the
> Apache Jackrabbit implementation, that would also be enlisted in the same
> transactions.
>
>  Doesn't that imply a performance penalty that should be avoided if
>> possible and is there a way to configure OfBiz to handle everything
>> always in a non-distributed tx?
>>
>
>  I don't know what sort of performance penalty might be involved in this.
> It would be interesting to test both ways and see, as some deployments don't
> need multiple databases or other enlisted resources.
>
> Is this something that you have played with before, and are you saying that
> you would like to experiment with it? I'm not sure how many code changes
> would be required as I haven't really dug into this stuff for a while, but
> it should be possible to have things work one way or the other based on
> configuration.
>
> -David
>
>
Reply | Threaded
Open this post in threaded view
|

Re: OfBiz and distributed tx

Harmeet Bedi
In reply to this post by gnomie
We had done some profiling and did not find profiling bottlenecks due to commit logic. Single database and default configuration was our setup.
I suspect you question is more theoretical so not sure if this is a useful answer.. but just sharing our experience.

Harmeet

----- Original Message -----
From: "Henning" <[hidden email]>
To: "user" <[hidden email]>
Sent: Friday, July 17, 2009 5:59:45 AM GMT -05:00 US/Canada Eastern
Subject: OfBiz and distributed tx

While trying to understand OfBiz better, I found that OfBiz relies on
Geronimo's JTA implementation. I have a few questions on that (sorry if
I missed that in the documentation).

Is OfBiz actually using XAResources and therefore 2-phase-commits?

And if, is that because of the JMS usage?

Doesn't that imply a performance penalty that should be avoided if
possible and is there a way to configure OfBiz to handle everything
always in a non-distributed tx?

Thanks,
  Henning




Reply | Threaded
Open this post in threaded view
|

Re: OfBiz and distributed tx

gnomie
I suppose that there is no overhead when there is no more than one
resource manager in the picture - in which case it should behave
completely as if there is no XA at all. I have a configuration now that
does not allow registration of XA resources and when turning off the
registration of the debug XA Resource it seems there simply is no other
XA resource in the picture (but I haven't done much with that setup and
simply missed it).

Thanks,
  Henning

Am Freitag, den 24.07.2009, 16:07 -0400 schrieb Harmeet Bedi:

> We had done some profiling and did not find profiling bottlenecks due to commit logic. Single database and default configuration was our setup.
> I suspect you question is more theoretical so not sure if this is a useful answer.. but just sharing our experience.
>
> Harmeet
>
> ----- Original Message -----
> From: "Henning" <[hidden email]>
> To: "user" <[hidden email]>
> Sent: Friday, July 17, 2009 5:59:45 AM GMT -05:00 US/Canada Eastern
> Subject: OfBiz and distributed tx
>
> While trying to understand OfBiz better, I found that OfBiz relies on
> Geronimo's JTA implementation. I have a few questions on that (sorry if
> I missed that in the documentation).
>
> Is OfBiz actually using XAResources and therefore 2-phase-commits?
>
> And if, is that because of the JMS usage?
>
> Doesn't that imply a performance penalty that should be avoided if
> possible and is there a way to configure OfBiz to handle everything
> always in a non-distributed tx?
>
> Thanks,
>   Henning
>
>
>
>