details: https://code.openbravo.com/erp/devel/pi/rev/fd033d0b5bc1 changeset: 34905:fd033d0b5bc1 user: Mark <markmm82 <at> gmail.com> date: Wed Oct 24 20:00:04 2018 -0400 summary: Fixes issue 39447: Added indexes to Improve delete action in some windows.
In environment with high volume of data, when deleting records in some windows, some constraints related with foreign keys were causing delays when they were checked. To improve the execution times of these checks were created indexes on the columns of the affected tables. diffstat: src-db/database/model/tables/AD_USER.xml | 4 ++++ src-db/database/model/tables/C_INVOICE.xml | 8 ++++++++ src-db/database/model/tables/C_ORDER.xml | 12 ++++++++++++ src-db/database/model/tables/M_INOUT.xml | 8 ++++++++ src-db/database/model/tables/M_PRODUCT.xml | 4 ++++ 5 files changed, 36 insertions(+), 0 deletions(-) diffs (114 lines): diff -r 47a3436da596 -r fd033d0b5bc1 src-db/database/model/tables/AD_USER.xml --- a/src-db/database/model/tables/AD_USER.xml Wed Oct 24 12:50:10 2018 +0200 +++ b/src-db/database/model/tables/AD_USER.xml Wed Oct 24 20:00:04 2018 -0400 @@ -215,6 +215,10 @@ <index name="AD_USER_PARTNER" unique="false"> <index-column name="C_BPARTNER_ID"/> </index> + <index name="AD_USER_SUPERVISOR" unique="false"> + <index-column name="SUPERVISOR_ID"/> + <whereClause><![CDATA[SUPERVISOR_ID IS NOT NULL]]></whereClause> + </index> <unique name="AD_USER_UN_USERNAME"> <unique-column name="USERNAME"/> </unique> diff -r 47a3436da596 -r fd033d0b5bc1 src-db/database/model/tables/C_INVOICE.xml --- a/src-db/database/model/tables/C_INVOICE.xml Wed Oct 24 12:50:10 2018 +0200 +++ b/src-db/database/model/tables/C_INVOICE.xml Wed Oct 24 20:00:04 2018 -0400 @@ -357,6 +357,10 @@ <foreign-key foreignTable="FIN_PAYMENT_PRIORITY" name="FIN_INVOICE_PAYMENT_PRIORITY"> <reference local="FIN_PAYMENT_PRIORITY_ID" foreign="FIN_PAYMENT_PRIORITY_ID"/> </foreign-key> + <index name="C_INVOICE_AD_USER" unique="false"> + <index-column name="AD_USER_ID"/> + <whereClause><![CDATA[AD_USER_ID IS NOT NULL]]></whereClause> + </index> <index name="C_INVOICE_BPARTNER" unique="false"> <index-column name="C_BPARTNER_ID"/> </index> @@ -379,6 +383,10 @@ <index name="C_INVOICE_POSTED" unique="false"> <index-column name="POSTED"/> </index> + <index name="C_INVOICE_SALESREP" unique="false"> + <index-column name="SALESREP_ID"/> + <whereClause><![CDATA[SALESREP_ID IS NOT NULL]]></whereClause> + </index> <index name="C_INVOICE_UPDATED" unique="false"> <index-column name="UPDATED"/> </index> diff -r 47a3436da596 -r fd033d0b5bc1 src-db/database/model/tables/C_ORDER.xml --- a/src-db/database/model/tables/C_ORDER.xml Wed Oct 24 12:50:10 2018 +0200 +++ b/src-db/database/model/tables/C_ORDER.xml Wed Oct 24 20:00:04 2018 -0400 @@ -464,6 +464,10 @@ <foreign-key foreignTable="FIN_PAYMENT_PRIORITY" name="FIN_ORDER_PAYMENT_PRIORITY"> <reference local="FIN_PAYMENT_PRIORITY_ID" foreign="FIN_PAYMENT_PRIORITY_ID"/> </foreign-key> + <index name="C_ORDER_AD_USER" unique="false"> + <index-column name="AD_USER_ID"/> + <whereClause><![CDATA[AD_USER_ID IS NOT NULL]]></whereClause> + </index> <index name="C_ORDER_BPARTNER_DATEORDERED" unique="false"> <index-column name="C_BPARTNER_ID"/> <index-column name="DATEORDERED"/> @@ -489,6 +493,10 @@ <index-column name="DOCUMENTNO"/> <index-column name="C_ORDER_ID"/> </index> + <index name="C_ORDER_DROPSHIP_USER" unique="false"> + <index-column name="DROPSHIP_USER_ID"/> + <whereClause><![CDATA[DROPSHIP_USER_ID IS NOT NULL]]></whereClause> + </index> <index name="C_ORDER_ISSELECTED" unique="false"> <index-column name="ISSELECTED"/> </index> @@ -499,6 +507,10 @@ <index-column name="QUOTATION_ID"/> <whereClause><![CDATA[QUOTATION_ID IS NOT NULL]]></whereClause> </index> + <index name="C_ORDER_SALESREP" unique="false"> + <index-column name="SALESREP_ID"/> + <whereClause><![CDATA[SALESREP_ID IS NOT NULL]]></whereClause> + </index> <index name="C_ORDER_UPDATED" unique="false"> <index-column name="UPDATED"/> </index> diff -r 47a3436da596 -r fd033d0b5bc1 src-db/database/model/tables/M_INOUT.xml --- a/src-db/database/model/tables/M_INOUT.xml Wed Oct 24 12:50:10 2018 +0200 +++ b/src-db/database/model/tables/M_INOUT.xml Wed Oct 24 20:00:04 2018 -0400 @@ -337,6 +337,10 @@ <foreign-key foreignTable="USER2" name="M_INOUT_USER2"> <reference local="USER2_ID" foreign="USER2_ID"/> </foreign-key> + <index name="M_INOUT_AD_USER" unique="false"> + <index-column name="AD_USER_ID"/> + <whereClause><![CDATA[AD_USER_ID IS NOT NULL]]></whereClause> + </index> <index name="M_INOUT_BP_MOVEMENTDATE" unique="false"> <index-column name="C_BPARTNER_ID"/> <index-column name="MOVEMENTDATE"/> @@ -366,6 +370,10 @@ <index name="M_INOUT_POSTED" unique="false"> <index-column name="POSTED"/> </index> + <index name="M_INOUT_SALESREP" unique="false"> + <index-column name="SALESREP_ID"/> + <whereClause><![CDATA[SALESREP_ID IS NOT NULL]]></whereClause> + </index> <index name="M_INOUT_UPDATED" unique="false"> <index-column name="UPDATED"/> </index> diff -r 47a3436da596 -r fd033d0b5bc1 src-db/database/model/tables/M_PRODUCT.xml --- a/src-db/database/model/tables/M_PRODUCT.xml Wed Oct 24 12:50:10 2018 +0200 +++ b/src-db/database/model/tables/M_PRODUCT.xml Wed Oct 24 20:00:04 2018 -0400 @@ -494,6 +494,10 @@ <index name="M_PRODUCT_PRODUCTCATEGORY" unique="false"> <index-column name="M_PRODUCT_CATEGORY_ID"/> </index> + <index name="M_PRODUCT_SALESREP" unique="false"> + <index-column name="SALESREP_ID"/> + <whereClause><![CDATA[SALESREP_ID IS NOT NULL]]></whereClause> + </index> <index name="M_PRODUCT_UPC_ID" unique="false"> <index-column name="UPC"/> <index-column name="M_PRODUCT_ID"/> _______________________________________________ Openbravo-commits mailing list Openbravo-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbravo-commits