测试 数据库函数嵌套调用xid是同一个

select * from func_aa();

NOTICE:  func_aa() : 4414931
NOTICE:  func_bb() : 4414931
NOTICE:  func_cc() : 4414931
NOTICE:  func_cc() : 4414931
NOTICE:  func_bb() : 4414931
NOTICE:  func_aa() : 4414931


 

create or replace function func_aa()
returns text language plpgsql as
$$
begin
    raise notice 'func_aa() : %',txid_current();
    perform func_bb();
    raise notice 'func_aa() : %',txid_current();
    return 'ok';
end;
$$;

create or replace function func_bb()
returns text language plpgsql as
$$
begin
    raise notice 'func_bb() : %',txid_current();
    perform func_cc();
    raise notice 'func_bb() : %',txid_current();
    return 'ok';
end;
$$;

create or replace function func_cc()
returns text language plpgsql as
$$
begin
    raise notice 'func_cc() : %',txid_current();
    raise notice 'func_cc() : %',txid_current();
    return 'ok';
end;
$$;

猜你喜欢

转载自blog.csdn.net/weixin_42767321/article/details/86140220