Re: Wanted: ALTER TRIGGER ... OWNED BY EXTENSION

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: Moshe Jacobson <moshe(at)neadwerx(dot)com>, pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: Wanted: ALTER TRIGGER ... OWNED BY EXTENSION
Date: 2014-03-31 20:20:43
Message-ID: 23650.1396297243@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> writes:
> Moshe Jacobson wrote:
>> Even though I mark the trigger *functions *as owned by my extension, the
>> trigger definitions themselves are still dumped by pg_dump and restored by
>> pg_restore. This is a problem when pg_restore is using parallelism (-j),
>> and one thread starts issuing CREATE TRIGGER commands before the other
>> thread has finished populating the config table.

> ISTM that the usual locution for this is ALTER EXTENSION .. ADD. You
> could test whether this is going to work by manually inserting rows in
> pg_depend.

> It seems strange to me that the created trigger is part of the extension,
> however. Maybe it's the right fix, but hmm.

I'm suspicious that the problem is exactly lack of pg_depend records ---
pg_dump/pg_restore relies on those for correct ordering of parallel
operations. What method are you using to create these triggers (not
the functions, the per-table pg_trigger records)?

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Moshe Jacobson 2014-03-31 20:32:06 Re: Wanted: ALTER TRIGGER ... OWNED BY EXTENSION
Previous Message Scott Marlowe 2014-03-31 20:06:40 Re: Why does "checkpointer" is consumig ~1.2Gb of RAM?