Postgres kör PL/pgSQL
inuti transaktionen. Du kan alltså inte kontrollera transaktionen inifrån PL/pgSQL
. Koden kommer att se ut så här:
begin;
select plpgsql_fn();
do '/*same any plpgsql*/';
end;
Så svarar på din fråga:
Om du har PL/pgSQL
kör ATM, har du din transaktion aktiv ATM...
Naturligtvis kan du göra några knep, som att starta/sluta arbete över dblink
eller så. men då kan du kontrollera select txid_current();
över dblink
framgångsrikt...