Re: procedures and transactions - Mailing list pgsql-general

From Rob Nikander
Subject Re: procedures and transactions
Date
Msg-id CB279644-3C25-4C8D-BBA2-0142495AD97B@gmail.com
Whole thread Raw
In response to Re: procedures and transactions  (Peter Eisentraut <peter.eisentraut@2ndquadrant.com>)
Responses Re: procedures and transactions  (Peter Eisentraut <peter.eisentraut@2ndquadrant.com>)
List pgsql-general

> On Feb 20, 2019, at 10:07 AM, Peter Eisentraut <peter.eisentraut@2ndquadrant.com> wrote:
>
> You can run SET TRANSACTION ISOLATION LEVEL in a procedure.

I tried that before but I get this error:

    create or replace procedure t_test(n integer)
    as $$
    begin
        set transaction isolation level serializable;
        raise notice 'current isolation level: %', (select current_setting('transaction_isolation'));
        raise notice 'current txid: %', (select txid_current());
    end;
    $$ language plpgsql;

mydb=# call t_test(1);
ERROR:  SET TRANSACTION ISOLATION LEVEL must be called before any query
CONTEXT:  SQL statement "SET transaction isolation level serializable"

pgsql-general by date:

Previous
From: Pavel Suderevsky
Date:
Subject: Long statement execution. Data fetch by client
Next
From: Anthony DeBarros
Date:
Subject: Re: Plpythonu extension