On Thursday, March 6, 2003, at 06:21 PM, Ed L. wrote:
> On Thursday March 6 2003 3:36, Andrew Sullivan wrote:
>> On Thu, Mar 06, 2003 at 02:45:41PM -0700, Ed L. wrote:
>>> And in the absence of a SET TRIGGERS='off' command, anyone see any
>>> concerns with the following?
>>>
>>> UPDATE pg_trigger
>>> SET tgenabled = 'f'
>>> WHERE tgname LIKE '%whatever%';
>>
>> I have heard warnings that this is not guaranteed to work, as there
>> may still be places in the code where checking that table is not
>> happening. Perhaps that was only true for older versions, though?
>
> Unfortunately not. It doesn't work for me on 7.3.2 with a triggered C
> function (dbmirror). :(
Is the goal to simply turn off triggers (I haven't really been
following this thread)? Why not do what pg_dump (in 7.3 anyways) does:
OFF:
update pg_class set reltriggers = 0 where relname = 'TABLE_NAME';
ON:
update pg_class set reltriggers = (select count(*) from pg_trigger
where pg_class.oid = tgrelid) where relname = 'TABLE_NAME';
eric