Re: jdbc xa patches

From: Michael Allman <msa(at)allman(dot)ms>
To: Oliver Jowett <oliver(at)opencloud(dot)com>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: jdbc xa patches
Date: 2005-07-27 03:40:33
Message-ID: 20050726232828.S74424@yvyyl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

On Wed, 27 Jul 2005, Oliver Jowett wrote:

> Oliver Jowett wrote:
>
>> Shouldn't the XAResource check the server version on construction or on
>> start()/recover() to make sure that it's actually going to be able to
>> use PREPARE TRANSACTION later? Or is erroring out with a syntax error at
>> the point of prepare() sufficient? (I'd like to see a better error
>> message there at least)
>
> More generally: can we get XAExceptions thrown with useful messages? It
> seems like there's no direct constructor that gives you both message and
> error code, but the error code is a public field so you can set it after
> construction before throwing.

Short answer: yes.

Long answer:

Since the client of a PGXAResource instance is a transaction manager I see
no benefit. The transaction manager will make a decision on what to do
based on the code carried by XAException and carry on. Maybe it will log
a message.

> Also, in the case where the failure is caused by another exception, we
> should generally chain that exception rather than writing it to the log
> writer. See how PSQLException does this for details..
>
> There's enough meddling there that it might be worth subclassing
> XAException to automate it all.. or have a helper method somewhere.

I'm just not sure it's worth the effort. I did put in log messages that I
think will help debug problems and whatnot. But exceptions are going to
be handled by the TM and will not be rethrown to any user/app code.

Maybe we should do more logging? I'm not quite sure that would be much
benefit either. I've found the current level of logging to be adequate.

On a related note, I think we should do some kind of app server testing
before this code is released. I think this calls for Cactus. What do you
think? I know how to use JBoss. Maybe someone else could write build
files to deploy to other app servers.

Michael

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Oliver Jowett 2005-07-27 04:33:18 Re: jdbc xa patches
Previous Message Michael Allman 2005-07-27 03:28:13 Re: jdbc xa patches