Thanks - patch applied and pushed. On Fri, Sep 19, 2014 at 7:41 AM, Sanket Mehta <[email protected]> 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 ([email protected]) > 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 -- Sent via pgadmin-hackers mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers
