From: | Sean Chittenden <sean(at)chittenden(dot)org> |
---|---|
To: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: SET autocommit begins transaction? |
Date: | 2002-09-29 00:21:43 |
Message-ID: | 20020929002143.GC80141@perrin.int.nxad.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
> > > > But it seems so illogical that SET doesn't start a transaction, but
> > > > if it is in a transaction, it is rolled back, and this doesn't help
> > > > our statement_timeout example except to require that they do BEGIN
> > > > to start the transaction even when autocommit is off.
> > >
> > > Really? To me that makes perfect sense. Logic:
> > >
> > > *) Only BEGIN starts a transaction
> >
> > I think the above item is the issue. Everything is clear with
> > autocommit on. With autocommit off, COMMIT/ROLLBACK starts a
> > transaction, not BEGIN. BEGIN _can_ start a transaction, but it isn't
> > required:
>
> AFAICT, according to spec, commit/rollback does not start a
> transaction, the transcation is started with the first transaction
> initiating statement when there isn't a current transaction. And,
> most of the SQL92 commands that start with SET fall into the
> category of commands that do not initiate transactions.
Was there any resolution to this or are SET's still starting a new
transaction? I haven't seen any commits re: this, iirc. -sc
--
Sean Chittenden
From | Date | Subject | |
---|---|---|---|
Next Message | Bruce Momjian | 2002-09-29 01:31:09 | Re: SET autocommit begins transaction? |
Previous Message | Frank Van Damme | 2002-09-28 18:55:50 | unable to build on openbsd-sparc |