Project:
View Revisions: Issue #34833 | [ Back to Issue ] | ||
Summary | 0034833: audit triggers can have naming clashes | ||
Revision | 2017-01-10 11:33 by alostale | ||
Steps To Reproduce | 1. Log in as System Admin in an activated instance. 2. Open Table window and mark as audited OBKMO_Widget_Class_Menu and OBKMO_Widget_Class_Menu_Trl tables 3. Execute Update Audit Trail Infrastructure process 4. Check two triggers are created based on same function:
ERROR: this is incorrect, each trigger should have its own function 5. Execute Update Audit Trail Infrastructure process again ERROR: cannot drop function au_obkmo_widget_class_menu_trg() because other objects depend on it This occurs because function is tried to be dropped after dropping 1st trigger, but keeping 2nd one. |
||
Revision | 2017-01-10 11:33 by alostale | ||
Description | Triggers created for audit trail can have clashes in naming, causing incorrect auditing in these cases. This occurs because of the way name is generated [1], which doesn't validate there is no function nor trigger with the same name. [1] https://code.openbravo.com/erp/devel/pi/file/2a03b4d16b5d/src-db/database/model/postscript-PostgreSql.sql#l421 [^] |
||
Revision | 2016-12-30 12:18 by alostale | ||
Description | Update Audit Trail Infrastructure process doesn't works properly under some circumstances. |
||
Revision | 2016-12-30 12:18 by inigosanchez | ||
Steps To Reproduce | - Log in as System Admin in an activated instance. - In order to audit all the tables, execute this query into database: UPDATE ad_table SET isfullyaudited='N' WHERE dataorigintype='Table' and tablename <> 'AD_Audit_Trail'; - Execute Update Audit Trail Infrastructure process. Note that process works as expected and by default all tables have "isauditinserts"='Y'. - In order to change the value of isauditinserts in all the tables, execute this query into database: UPDATE ad_table SET isauditinserts='N' WHERE dataorigintype='Table' and tablename <> 'AD_Audit_Trail'; - Execute Update Audit Trail Infrastructure process. An error is displayed and the process doesn't ends properly. See attached image. |
||
Revision | 2016-12-30 11:58 by inigosanchez | ||
Steps To Reproduce | - Log in as System Admin in an activated instance. - In order to audit all the tables, execute this query into database: UPDATE ad_table SET isfullyaudited='N' WHERE dataorigintype='Table' and tablename <> 'AD_Audit_Trail'; - Execute Update Audit Trail Infrastructure process. Note that process works as expected and by default all tables have "isauditinserts"='Y'. - In order to change the value of isauditinserts in all the tables, execute this query into database: UPDATE ad_table SET isauditinserts='N' WHERE dataorigintype='Table' and tablename <> 'AD_Audit_Trail'; - Execute Update Audit Trail Infrastructure process. An error is displayed and the process doesn't ends properly. |
Copyright © 2000 - 2009 MantisBT Group |