Hello,
i started writing a console interface for the pldebugger and come across some
issues with the pldebugger extension and postgresql 12.1;
with postgresql 9.6.16 and this basic example, i get what i would expect:
Setup:
CREATE EXTENSION pldbgapi;
CREATE TABLE b( a int );
CREATE OR REPLACE FUNCTION test() RETURNS trigger AS $$
BEGIN
RAISE NOTICE '%', new.a;
END $$ LANGUAGE PLPGSQL;
CREATE TRIGGER test AFTER INSERT ON b FOR EACH ROW EXECUTE PROCEDURE test();
if i set a global trigger for that function and insert into the table, i get
most
of the variables:
name value dtype
class line U C N
tg_name test name
A 0 t f f
tg_when AFTER text
A 0 t f f
tg_level ROW text
A 0 t f f
tg_op INSERT text
A 0 t f f
tg_relid 24613 oid
A 0 t f f
tg_relname b name
A 0 t f f
tg_table_name b name
A 0 t f f
tg_table_schema public name
A 0 t f f
tg_nargs 0 integer
A 0 t f f
tg_argv NULL text[]
A 0 t f f
bug if i run the same example on pg12.1 the variables appear to be empty:
name value dtype
class line U C N
tg_name NULL name
A 0 f f f
tg_when NULL text
A 0 f f f
tg_level NULL text
A 0 f f f
tg_op NULL text
A 0 f f f
tg_relid NULL oid
A 0 f f f
tg_relname NULL name
A 0 f f f
tg_table_name NULL name
A 0 f f f
tg_table_schema NULL name
A 0 f f f
tg_nargs NULL integer
A 0 f f f
tg_argv NULL text[]
A 0 f f f
if checked this directly from within psql.
exactly same setup, 12.1 instance from debian sid and 9.6 instance is debian
buster with
the postgresql repository at http://apt.postgresql.org/pub/repos/apt/
another thing i noticed, the debugger can not display the data within records /
rows which is quite
a huge limitation. the corresponding lines within the sourcecode of the
extension are empty :|
and i am not capable of extenting it myself, is there any chance to get this
working?
thank you!
