| From: | Oliver Jowett <oliver(at)opencloud(dot)com> |
|---|---|
| To: | Barry Lind <blind(at)xythos(dot)com> |
| Cc: | pgsql-jdbc(at)postgresql(dot)org |
| Subject: | Re: When running with autocommit false only the first BEGIN |
| Date: | 2004-11-23 10:21:32 |
| Message-ID: | 41A30F2C.40801@opencloud.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-jdbc |
Barry Lind wrote:
> While debugging my other server problem, I noticed that that only the
> first BEGIN and COMMIT are logged on the server with sql statement
> logging enabled. It seems that the subsequent transaction control
> statements are being executed correctly, it is just that they are not
> being logged by the server. Is this to be expected? If so, it makes
> debugging a bit difficult as you can't see what commits are really being
> executed when you have sql statement logging enabled.
Yeah, it's a limitation of statement logging. Statements are logged only
on Parse, not on Bind/Execute. The driver reuses the internal
BEGIN/COMMIT statements, so only one Parse is done for each. You will
see the same thing for user queries if they end up using server-side
prepare.
There should be some past discussion about this in the -hackers archives.
-O
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Oliver Jowett | 2004-11-23 10:40:48 | Re: Can't throw the dreaded 'idle in transaction' - need help! |
| Previous Message | Barry Lind | 2004-11-23 06:12:32 | When running with autocommit false only the first BEGIN and COMMIT are logged on server |