Skip site navigation (1) Skip section navigation (2)

Re: CREATE CONSTRAINT TRIGGER in SQL pane (pgAdmin 1.14.1)

From: Guillaume Lelarge <guillaume(at)lelarge(dot)info>
To: Michal Vanek <michal(dot)vanek(at)gmail(dot)com>
Cc: pgadmin-support(at)postgresql(dot)org
Subject: Re: CREATE CONSTRAINT TRIGGER in SQL pane (pgAdmin 1.14.1)
Date: 2012-01-04 21:56:21
Message-ID: 1325714181.2505.2.camel@localhost.localdomain (view raw or flat)
Thread:
Lists: pgadmin-support
On Wed, 2012-01-04 at 16:04 +0100, Michal Vanek wrote:
> 
> 
> 2012/1/4 Guillaume Lelarge <guillaume(at)lelarge(dot)info>
>         On Wed, 2012-01-04 at 15:46 +0100, Guillaume Lelarge wrote:
>         > On Wed, 2012-01-04 at 05:17 -0800, Miso Vanek wrote:
>         > > On 2. Jan, 22:57 h., guilla(dot)(dot)(dot)(at)lelarge(dot)info (Guillaume
>         Lelarge) wrote:
>         > > > On Mon, 2011-12-19 at 10:50 +0100, Guillaume Lelarge
>         wrote:
>         > > > > On Thu, 2011-12-15 at 15:39 +0200, Julius Tuskenis
>         wrote:
>         > > > > > Hello,
>         > > >
>         > > > > > After installing pgAdmin 1.14.1 I have noticed that
>         CREATE CONSTRAINT
>         > > > > > TRIGGER statements are shown in SQL pane when
>         selecting table from
>         > > > > > treeview. Is this done on purpose?
>         > > > > > Frankly, I find no real use of statements like:
>         > > > > > CREATE CONSTRAINT TRIGGER
>         "RI_ConstraintTrigger_73501293"
>         > > > > >    AFTER DELETE
>         > > > > >    ON b_dok
>         > > > > >    FOR EACH ROW
>         > > > > >    EXECUTE PROCEDURE "RI_FKey_cascade_del"();
>         > > >
>         > > > > > I think the  constraint triggers should not be shown
>         (at least by
>         > > > > > default). They might be a good thing for debugging
>         but not for
>         > > > > > administrating the DB. I support the opinion stated
>         in
>         > > > > >http://www.pgadmin.org/support/faq.php:
>         > > >
>         > > > > > "
>         > > > > > <...>
>         > > > > > pgAdmin III considers constraint triggers as an
>         internal implementation
>         > > > > > detail, not interesting for the common
>         administrator. In fact, CREATE
>         > > > > > CONSTRAINT TRIGGER is for backward compatibility
>         only, and shouldn't be
>         > > > > > used in newer scripts any more. Some tools (e.g.
>         pgAdmin II) imply this,
>         > > > > > by showing a ADD CONSTRAINT when reverse
>         engineering, while actually the
>         > > > > > constraint information in the database is missing.
>         > > > > > Run the adddepend script, which can be found in the
>         backend's sources
>         > > > > > contrib/adddepend directory. [AP]"
>         > > >
>         > > > > > I'd be glad if they disappeared from the SQL pane.
>         > > >
>         > > > > > pgAdmin 1.14.1
>         > > > > > WinXp SP3
>         > > > > > PostgreSQL 8.3.4 on i686-pc-linux-gnu, compiled by
>         GCC gcc (Gentoo
>         > > > > > 4.3.2-r3 p1.6, pie-10.1.5) 4.3.2
>         > > >
>         > > > > System constraints triggers shouldn't appear at all if
>         you didn't select
>         > > > > the "Show system objects". They never should appear in
>         the SQL pane of a
>         > > > > table description for example.
>         > > >
>         > > > > User constraints triggers should always appear.
>         > > >
>         > > > > The fact that system constraint triggers appear wasn't
>         done on purpose.
>         > > > > As a matter of fact, this is a bug.
>         > > >
>         > > > I tried to make it appear many times, but failed. Do you
>         have
>         > > > self-contained test case that I could use? Thanks.
>         > > >
>         > > > --
>         > > > Guillaume
>         > > >  http://blog.guillaume.lelarge.info
>         > > >  http://www.dalibo.com
>         > > >   PostgreSQL Sessions
>         #3:http://www.postgresql-sessions.org
>         > > >
>         > > > --
>         > > > Sent via pgadmin-support mailing list
>         (pgadmin-supp(dot)(dot)(dot)(at)postgresql(dot)org)
>         > > > To make changes to your
>         subscription:http://www.postgresql.org/mailpref/pgadmin-support
>         > >
>         > > i have noticed it too.
>         > >
>         > > Ubuntu 11.10
>         > > postgresql 9.1
>         > > pgadmin 1.14.1
>         > > compiled using gcc/g++, no additinional flags,
>         only ./configure, make,
>         > > make install
>         > > rev: REL-1_14_1
>         > > show system objects - not enabled
>         > >
>         > > example of SQL pane:
>         > >
>         > > CREATE TABLE projects
>         > > (
>         > >   id serial NOT NULL,
>         > >   name text NOT NULL,
>         > >   handler text,
>         > >   CONSTRAINT projects_pkey PRIMARY KEY (id )
>         > > )
>         > > WITH (
>         > >   OIDS=FALSE
>         > > );
>         > > ALTER TABLE projects
>         > >   OWNER TO smsgtwlive;
>         > >
>         > > -- Trigger: RI_ConstraintTrigger_4601055 on projects
>         > >
>         > > -- DROP TRIGGER "RI_ConstraintTrigger_4601055" ON
>         projects;
>         > >
>         > > CREATE CONSTRAINT TRIGGER "RI_ConstraintTrigger_4601055"
>         > >   AFTER DELETE
>         > >   ON projects
>         > >   FOR EACH ROW
>         > >   EXECUTE PROCEDURE "RI_FKey_restrict_del"();
>         > >
>         > > -- Trigger: RI_ConstraintTrigger_4601056 on projects
>         > >
>         > > -- DROP TRIGGER "RI_ConstraintTrigger_4601056" ON
>         projects;
>         > >
>         > > CREATE CONSTRAINT TRIGGER "RI_ConstraintTrigger_4601056"
>         > >   AFTER UPDATE
>         > >   ON projects
>         > >   FOR EACH ROW
>         > >   EXECUTE PROCEDURE "RI_FKey_restrict_upd"();
>         > >
>         >
>         > How did you create the table?
>         >
>         
>         
>         OK, got it. I'm able to reproduce it on 8.3.
>         
>         
>         --
>         Guillaume
>         http://blog.guillaume.lelarge.info
>         http://www.dalibo.com
>         PostgreSQL Sessions #3: http://www.postgresql-sessions.org
>         
>         
> 
> sorry, postgreSQL version is 8.4 not 9.1.

Yeah, no problem, I made the mistake too.

I commited a patch a few minutes ago. Thanks for your help.


-- 
Guillaume
http://blog.guillaume.lelarge.info
http://www.dalibo.com
PostgreSQL Sessions #3: http://www.postgresql-sessions.org


In response to

pgadmin-support by date

Next:From: Guillaume LelargeDate: 2012-01-04 21:59:56
Subject: Re: Column not wide enough for data
Previous:From: Guillaume LelargeDate: 2012-01-04 21:55:08
Subject: Re: CREATE CONSTRAINT TRIGGER in SQL pane (pgAdmin 1.14.1)

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group