Обсуждение: Updateing pg_trigger and pg_constraint

Поиск
Список
Период
Сортировка

Updateing pg_trigger and pg_constraint

От
Craig Servin
Дата:
I am trying to make some foreign keys deferrable and initially deferred.
These foreign key constraints already exist so I was going to change them by
updating pg_trigger and pg_constraint.

However the changes do not seem to take affect.  Is there something I need to
do to get PostgreSQL to recognize that I have tweaked it's tables?

This is the query that I used:

begin work;
update pg_constraint set condeferrable = true, condeferred = true where
contype ='f';
update pg_trigger set tgdeferrable = true, tginitdeferred = true where
tgconstrname in ( select conname from pg_constraint where contype = 'f' );
commit

any help would be appreciated,

Craig

Re: Updateing pg_trigger and pg_constraint

От
Tom Lane
Дата:
Craig Servin <cservin@cromagnon.com> writes:
> I am trying to make some foreign keys deferrable and initially deferred.
> These foreign key constraints already exist so I was going to change them by
> updating pg_trigger and pg_constraint.
> However the changes do not seem to take affect.  Is there something I need to
> do to get PostgreSQL to recognize that I have tweaked it's tables?

Try starting a fresh backend session.  Manual hacking of those tables
isn't going to cause a relcache reload ...

            regards, tom lane

Re: Updateing pg_trigger and pg_constraint

От
Craig Servin
Дата:
> Try starting a fresh backend session.  Manual hacking of those tables
> isn't going to cause a relcache reload ...
>
Simply reconnecting to the backend does not help.  If I restart the server
everything works as expected.  I am wondering if there is a way to trigger a
relcache reload without shutting down the PostgreSQL.

Craig