Re: Fixed PPAS trigger when condition

From: Dave Page <dpage(at)pgadmin(dot)org>
To: Sanket Mehta <sanket(dot)mehta(at)enterprisedb(dot)com>
Cc: pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org>
Subject: Re: Fixed PPAS trigger when condition
Date: 2014-09-19 16:04:52
Message-ID: CA+OCxowdonQZ37-mqb0VuAi7HmQt=ujBFkq_QGxZNBsBKSs=WQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgadmin-hackers

Thanks - patch applied and pushed.

On Fri, Sep 19, 2014 at 7:41 AM, Sanket Mehta
<sanket(dot)mehta(at)enterprisedb(dot)com> wrote:
> Hi Dave
>
> There is one issue with PPAS while trigger creation as mentioned below:
>
> create table a (a int not null primary key, b int);
> create table b (a int not null primary key, b int);
> --make trigger with when condition
> create trigger tr_a after insert on a for each row
> when (:new.a > 0)
> begin
> insert into b values (:new.*);
> end;
>
> After creating the trigger using above query, When condition is not visible
> in property window of that trigger. As per current implementation, it
> fetches the when part of trigger using below logic:
>
> substring(pg_get_triggerdef(t.oid), 'WHEN (.*) EXECUTE PROCEDURE')
>
> this will not work with PPAS as we have not provided any procedure to be
> executed so it will return null. To fix this issue I have changed the above
> logic as below:
>
> COALESCE(substring(pg_get_triggerdef(t.oid), 'WHEN (.*) EXECUTE PROCEDURE'),
> substring(pg_get_triggerdef(t.oid), 'WHEN (.*) \\$trigger'))
>
> Above logic has worked with PPAS and PG both. Attached is the patch file.
>
> Please review it and if it looks good to you then please do commit the code
>
>
> Regards,
> Sanket Mehta
> Sr Software engineer
> Enterprisedb
>
>
> --
> Sent via pgadmin-hackers mailing list (pgadmin-hackers(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgadmin-hackers
>

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Browse pgadmin-hackers by date

  From Date Subject
Next Message Dmitriy Olshevskiy 2014-09-20 17:42:04 PATCH: proper saving of columns width in the server status window
Previous Message Dave Page 2014-09-19 16:04:42 pgAdmin III commit: Fix support for triggers with inline code on PPAS