Thread: pldebugger problems with postgresql 12.1

pldebugger problems with postgresql 12.1

From
easteregg@verfriemelt.org
Date:
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!