Ensure compound triggers for event should be updated properly. Fixes #4635

This commit is contained in:
Akshay Joshi 2019-08-17 15:58:50 +05:30
parent 177def1e58
commit 24f9f65b1b
2 changed files with 3 additions and 2 deletions

View File

@ -50,4 +50,5 @@ Bug fixes
| `Issue #4581 <https://redmine.postgresql.org/issues/4581>`_ - Ensure the comment on a Primary Key constraint can be edited under the Table node.
| `Issue #4582 <https://redmine.postgresql.org/issues/4582>`_ - Fix console error when changing kind(SQL/BATCH) for pgAgent job step.
| `Issue #4585 <https://redmine.postgresql.org/issues/4585>`_ - Fix double click issue to expand the contents of a cell if the resultset was not editable.
| `Issue #4586 <https://redmine.postgresql.org/issues/4586>`_ - Fix generation of reverse engineered SQL for Rules.
| `Issue #4586 <https://redmine.postgresql.org/issues/4586>`_ - Fix generation of reverse engineered SQL for Rules.
| `Issue #4635 <https://redmine.postgresql.org/issues/4635>`_ - Ensure compound triggers for event should be updated properly.

View File

@ -6,7 +6,7 @@ ALTER TRIGGER {{ conn|qtIdent(o_data.name) }} ON {{ conn|qtIdent(o_data.nspname,
{% if ((data.prosrc is defined or data.evnt_insert is defined or data.evnt_delete is defined or data.evnt_update is defined) and (o_data.prosrc != data.prosrc or data.evnt_insert != o_data.evnt_insert or data.evnt_delete != o_data.evnt_delete or data.evnt_update != o_data.evnt_update)) %}
{% set or_flag = False %}
CREATE OR REPLACE TRIGGER {{ conn|qtIdent(data.name) }}
FOR {% if data.evnt_insert is not defined %}{% if o_data.evnt_insert %}INSERT{% set or_flag = True %}{% endif %}{% if data.evnt_insert %}INSERT{% set or_flag = True %}{% endif %}{% endif %}{% if data.evnt_delete is not defined %}{% if o_data.evnt_delete %}
FOR {% if data.evnt_insert is not defined %}{% if o_data.evnt_insert %}INSERT{% set or_flag = True %}{% endif %}{% else %}{% if data.evnt_insert %}INSERT{% set or_flag = True %}{% endif %}{% endif %}{% if data.evnt_delete is not defined %}{% if o_data.evnt_delete %}
{% if or_flag %} OR {% endif %}DELETE{% set or_flag = True %}
{% endif %}{% else %}{% if data.evnt_delete %}
{% if or_flag %} OR {% endif %}DELETE{% set or_flag = True %}{%endif %}{% endif %}{% if data.evnt_update is not defined %}{% if o_data.evnt_update %}