concurrent transactions inside the same connection

From: "Adrian Maier" <adrian(dot)maier(at)gmail(dot)com>
To: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: concurrent transactions inside the same connection
Date: 2006-04-19 09:31:23
Message-ID: cd30ef8c0604190231q7e6b21fdha23c33eda3be2889@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello hackers,

I have included below a fragment of a discussion from the freepascal mailing
list. Apparently, some folks expect to be able to start multiple transactions
inside the *same* database connection. Since this is not possible in postgres,
they would be forced to start more connections from the same application.

Is such a feature possible to be implemented someday ?

My feeling is that this is a false problem, caused by some interbase/firebird
or delphi habits . But ... the poster claims that Oracle and SqlServer
have such a feature ( Oracle has 'named' transactions - but these
names seem to be just labels ) - is this true ?

Best wishes,
Adrian Maier

---------- Forwarded message ----------
From: Michael Van Canneyt <michael(at)freepascal(dot)org>
Subject: Re: [lazarus] FPC question
To: lazarus(at)miraclec(dot)com

On Wed, 19 Apr 2006, Adrian Maier wrote:
> On 4/19/06, Joost van der Sluis <joost(at)cnoc(dot)nl> wrote:
>>> Is this a problem with PostgreSQL itself or the component in lazarus
>>> wrapping it?
>>
>> It's a problem of postgres. A transaction 'block' is started with the
>> sql-command 'begin', from that comand on, all queries are executed
>> within that transaction. Using another connection is not possible.
>> Unless, offcourse, you start a new connection. Or closes the transaction
>> (commit, rollback etc)
>
> Please pardon me for jumping in the middle of the thread, but your
> phrase made me really curious. The behaviour you described seems
> to be the normal one, once you execute "begin" (transaction) . What
> other behaviour would someone expect postgres to have ?

To allow several concurrent transactions.

Interbase/Firebird allows to start several concurrent transactions in
1 connection. AFAIK Oracle and MS-SQL too (named transactions).

This is extremely handy.

Michael.

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Albe Laurenz 2006-04-19 09:43:58 Re: concurrent transactions inside the same connection
Previous Message Magnus Hagander 2006-04-19 09:02:42 Re: Question on win32 semaphore simulation