Re: [GENERAL] v6.5 foreign key trigger reposted with details - Mailing list pgsql-general

From Vadim Mikheev
Subject Re: [GENERAL] v6.5 foreign key trigger reposted with details
Date
Msg-id 37B8BC02.750A28A4@krs.ru
Whole thread Raw
In response to Re: [GENERAL] v6.5 foreign key trigger reposted with details  ("amy cheng" <amycq@hotmail.com>)
List pgsql-general
amy cheng wrote:
>
> >1. all applications should use BEGIN/END;
> B) what does that mean for perl? or just limited to PL/pgSQL--
>     then, isn't BEGIN/END the common syntax in PL/pgSQL?
>
> C) can you give me an outline of PL/pgSQL for 2. and 3. ?
> >2. in first transaction (deleting/updating something in primary table)
> >    you have to execute LOCK _primary_table_ IN SHARE ROW EXCLUSIVE MODE
> >    _before_ execution of any update/delete statement for the
> >    primary table;
> >3. in second transaction (inserting/updating something in foreign
> >    table) you have to execute LOCK _primary_table_ IN SHARE MODE
> >    _before_ execution of any insert/update statement for the
> >    foreign table.
> >
>
> D) I'm not sure yet ALL those can be handled by PS/pgSQL within the
>    postgresql? I do not need to handle all of them in perl through
>    dbi? If I do, how? and, can I just disable the concurrent

LOCKs can't be handled by PL/pgSQL - you have to execute
LOCKs from your application _before_ update statements.
Turn autocommit off to execute LOCKs and update statements
in one transaction (dbi will use BEGIN/END arround
your statements).

>    multiversion in V6.5?

No way.

Vadim

pgsql-general by date:

Previous
From: Jeff MacDonald
Date:
Subject: XA 2 phase
Next
From: Vadim Mikheev
Date:
Subject: Re: [GENERAL] moving from 6.3.2 to 6.5