Openbravo Issue Tracking System - Openbravo ERP
View Issue Details
0019071Openbravo ERPY. DBSourceManagerpublic2011-11-15 12:222012-09-24 21:01
marvintm 
marvintm 
normalmajorhave not tried
scheduledopen 
5
 
 
Core
No
0019071: Special case in Oracle update.database should be changed
Currently, when a change in a table is detected by update.database in Oracle, the following is done:

- If the change is a column addition, the column is not mandatory, it goes to the end of the table, and there are no more changes for that table, an "ALTER TABLE ADD column" change is done.

- Otherwise, the table is recreated.

The first case has the following problem: if the table has triggers associated, the new column has a default, the triggers are executed, and they fail for some reason, the column is not added.
Add a new non-mandatory column with a default value to the end of a table in the XML files. Verify that when update.database is done, the triggers related to that table are executed.
This special case in Oracle will be removed, and the table will be recreated always.
No tags attached.
Issue History
2011-11-15 12:22marvintmNew Issue
2011-11-15 12:22marvintmAssigned To => marvintm
2011-11-15 12:22marvintmModules => Core
2012-01-30 16:11marvintmNote Added: 0044704
2012-01-30 16:11marvintmTypedefect => design defect
2012-09-24 21:01AugustoMauchNote Added: 0052414
2012-09-24 21:01AugustoMauchStatusnew => scheduled

Notes
(0044704)
marvintm   
2012-01-30 16:11   
This issue requires more thought, as the proposed change would have negative performance implications.

A different approach would be to maintain current ModelComparator behavior, and instead move the Trigger deactivation to an earlier stage (so model change occurs with the triggers disabled).

In any case, this issue will be changed to a design defect.
(0052414)
AugustoMauch   
2012-09-24 21:01   
Effort: 5
Impact: low
Plan: mid