Re: Disable Trigger for session only
От | Adrian Klaver |
---|---|
Тема | Re: Disable Trigger for session only |
Дата | |
Msg-id | 559142D5.2080608@aklaver.com обсуждение исходный текст |
Ответ на | Disable Trigger for session only (gmb <gmbouwer@gmail.com>) |
Ответы |
Re: Disable Trigger for session only
|
Список | pgsql-sql |
On 06/29/2015 12:43 AM, gmb wrote: > Hi > > I' pretty sure I know the answer, but trying my luck. > > I'm in a position where the most logical/effective way of doing an update > (data fix) is this: > ALTER TABLE temp DISABLE TRIGGER trigname; > UPDATE temp ..... DO SOME STUFF.... > ALTER TABLE temp DISABLE TRIGGER trigname; > > Some notes: > It cannot be guaranteed that the above happens as a single transaction. > It is possible that this occurs at the same time as other session posting > inserts/updates to table TEMP. It can if wrapped in BEGIN/COMMIT or is there reason that is not being done? > > I'm seeing data which suggests that trigger trigname did not occur when in > fact it should have ( i.e. the above update procedure is not relevant ). > Does this make sense taking into account that multiple sessions posts to the > table at once ? Not without knowing what the trigger procedure does? > > I'm aware that session_replication_role can be used as alternative to > disable triggers, and have been using it in other scenarios. But in this > case i'd like to choose which trigger to disable (I want other triggers on > table temp to still occur). > > Is there any other alternatives to this ? > > Will appreciate any input > > -- Adrian Klaver adrian.klaver@aklaver.com
В списке pgsql-sql по дате отправления: