Postgres spouští PL/pgSQL
uvnitř transakce. Nemůžete tedy ovládat transakce z PL/pgSQL
. Kód bude vypadat takto:
begin;
select plpgsql_fn();
do '/*same any plpgsql*/';
end;
Takže odpověď na vaši otázku:
Pokud máte PL/pgSQL
běžící ATM, máte svou transakci aktivní ATM...
Samozřejmě můžete udělat nějaký trik, například začít/ukončit práci přes dblink
nebo tak. ale pak můžete zaškrtnout select txid_current();
přes dblink
úspěšně...