Openbravo Issue Tracking System - Openbravo ERP | ||||||||||||
View Issue Details | ||||||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | |||||||
0008095 | Openbravo ERP | Y. DBSourceManager | public | 2009-03-12 15:49 | 2009-04-29 00:00 | |||||||
Reporter | rafaroda | |||||||||||
Assigned To | marvintm | |||||||||||
Priority | high | Severity | major | Reproducibility | always | |||||||
Status | closed | Resolution | fixed | |||||||||
Platform | OS | 20 | OS Version | Ubuntu 7.10 | ||||||||
Product Version | 2.40 | |||||||||||
Target Version | Fixed in Version | |||||||||||
Merge Request Status | ||||||||||||
Review Assigned To | ||||||||||||
OBNetwork customer | ||||||||||||
Web browser | ||||||||||||
Modules | Core | |||||||||||
Support ticket | ||||||||||||
Regression level | ||||||||||||
Regression date | ||||||||||||
Regression introduced in release | ||||||||||||
Regression introduced by commit | ||||||||||||
Triggers an Emergency Pack | No | |||||||||||
Summary | 0008095: DBSourceManager: Constraint enabling should be done after onCreateDefault | |||||||||||
Description | DBSourceManager should enable new constraints after executing onCreateDefault and not before. | |||||||||||
Steps To Reproduce | 1) Create a new column in a XML table file with an onCreateDefault. For instance, in M_INOUT add: <column name="FREIGHT_CURRENCY_ID" primaryKey="false" required="false" type="DECIMAL" size="10,0" autoIncrement="false"> <default/> <onCreateDefault><![CDATA[SELECT C_ACCTSCHEMA.C_CURRENCY_ID FROM C_ACCTSCHEMA, AD_CLIENTINFO, AD_CLIENT WHERE AD_CLIENTINFO.C_ACCTSCHEMA1_ID = C_ACCTSCHEMA.C_ACCTSCHEMA_ID AND AD_CLIENT.AD_CLIENT_ID = AD_CLIENTINFO.AD_CLIENT_ID AND AD_CLIENT.AD_CLIENT_ID = M_INOUT.AD_CLIENT_ID]]></onCreateDefault> </column> <foreign-key foreignTable="C_CURRENCY" name="CCURRENCY_MINOUT"> <reference local="FREIGHT_CURRENCY_ID" foreign="C_CURRENCY_ID"/> </foreign-key> 2) Create a new check constraint in this same XML table. <check name="M_INOUT_CURRENCY_CHECK"><![CDATA[(FREIGHTAMT IS NULL) OR (FREIGHT_CURRENCY_ID IS NOT NULL)]]></check> 3) Execute: ant update.database.structure [alterdatabase] SQL Command failed with: ERROR: check constraint "m_inout_currency_check" is violated by some row [alterdatabase] ALTER TABLE M_INOUT [alterdatabase] ADD CONSTRAINT M_INOUT_CURRENCY_CHECK CHECK ((FREIGHTAMT IS NULL) OR (FREIGHT_CURRENCY_ID IS NOT NULL)) | |||||||||||
Proposed Solution | DBSourceManager should enable new constraints after executing onCreateDefault. | |||||||||||
Additional Information | ||||||||||||
Tags | main | |||||||||||
Relationships |
| |||||||||||
Attached Files | ||||||||||||
Issue History | ||||||||||||
Date Modified | Username | Field | Change | |||||||||
2009-03-12 15:49 | rafaroda | New Issue | ||||||||||
2009-03-12 15:49 | rafaroda | Assigned To | => marvintm | |||||||||
2009-03-12 15:49 | rafaroda | Regression testing | => No | |||||||||
2009-03-12 15:50 | rafaroda | Priority | immediate => high | |||||||||
2009-03-12 15:50 | rafaroda | Status | new => scheduled | |||||||||
2009-03-12 15:50 | rafaroda | fix_in_branch | => pi | |||||||||
2009-03-12 15:52 | rafaroda | fix_in_branch | pi => | |||||||||
2009-03-12 15:52 | rafaroda | Proposed Solution updated | ||||||||||
2009-03-12 17:32 | marvintm | Status | scheduled => resolved | |||||||||
2009-03-12 17:32 | marvintm | Fixed in SCM revision | => 258 | |||||||||
2009-03-12 17:32 | marvintm | Resolution | open => fixed | |||||||||
2009-04-22 11:24 | psarobe | Tag Attached: main | ||||||||||
2009-04-28 20:06 | psarobe | Status | resolved => closed | |||||||||
2009-04-29 00:00 | anonymous | sf_bug_id | 0 => 2783249 |
There are no notes attached to this issue. |