Hello Heikki,
As said in my last email, I'm coming back to you because I have new
informations about my problem using Atomikos JTA and the postgresql XA
driver.
At the end, I tryed an other TransactionManager
http://docs.codehaus.org/display/BTM/Home and the postgresql XA driver
was mostly working with it... So it seems it may comes from Atomikos
implementation but I was not able to find out why and where was the
problem...
I said that BTM TransactionManager was "mostly" working because when I
was using the XA implementation, SQL BEGIN and COMMIT where generated
arround each SQL query (even if several queries were located inside the
same transaction). So at the end, I used the TransactionManager with the
"Last Resource Commit Optimization" which allow the use of a pure jdbc
driver during transaction (I only have a single DB (1 Phase Commit) so
it is 100% safe to use this specificity). In this case, my BEGIN and
COMMIT statement where just perfect:
BEGIN
SELECT ..
SELECT ..
SELECT ..
COMMIT
So I was just wondering if my XA problem (BEGIN and COMMIT location when
using XA) could come from the postgresql XA driver ?
Many thanks for your help and best regards.
Joël
On Tue, 2007-10-30 at 16:28 +0000, Heikki Linnakangas wrote:
> Heikki Linnakangas wrote:
> > You said you tried setExclusiveConnectionMode(true), but I think there's
> > something wrong with that. If I'm reading the Atomikos source code
> > right, in exclusive connection mode it should use
> > ExclusiveExternalXAPooledConnectionImp, but in your case it's using
> > ExternalXAPooledConnectionImp, which according to the source code is
> > used when not in exclusive connection mode. Are you sure you set that
> > parameter in the right place?
>
> Actually ExclusiveExternalXAPooledConnectionImp is mention in the log as
> well, so it looks like the Atomikos exclusive connection mode isn't
> doing what it's supposed to / isn't doing what we need it to.
>