From e15d959fe9a45c518fc54e39dbf4c9bd44bd0447 Mon Sep 17 00:00:00 2001 From: Tymoteusz Motylewski Date: Mon, 6 Apr 2020 14:16:57 +0200 Subject: [PATCH] Make oldFields mapping hardcoded to speed up system The mapping came with Magneto 1.6 to provide a backward compatibility for old (pre 1.6) db field names. Now the mapping is hardcoded in the class instead of saved in the configuration. This improves performance as Magento will not create tons of objects for every new product/order/... entities. Related: https://github.com/OpenMage/magento-lts/issues/920 --- app/code/core/Mage/Catalog/Model/Product.php | 12 ------------ .../core/Mage/CatalogInventory/Model/Stock/Item.php | 1 + app/code/core/Mage/Sales/Model/Order.php | 7 ++++++- .../core/Mage/Sales/Model/Order/Creditmemo/Item.php | 5 ++++- .../core/Mage/Sales/Model/Order/Invoice/Item.php | 5 ++++- app/code/core/Mage/Sales/Model/Order/Item.php | 5 ++++- app/code/core/Mage/Sales/etc/config.xml | 7 ------- app/code/core/Mage/Weee/etc/config.xml | 11 ----------- 8 files changed, 19 insertions(+), 34 deletions(-) diff --git a/app/code/core/Mage/Catalog/Model/Product.php b/app/code/core/Mage/Catalog/Model/Product.php index 956372bdf0f..270a1d67cbc 100644 --- a/app/code/core/Mage/Catalog/Model/Product.php +++ b/app/code/core/Mage/Catalog/Model/Product.php @@ -118,18 +118,6 @@ protected function _construct() $this->_init('catalog/product'); } - /** - * Init mapping array of short fields to - * its full names - * - * @return Varien_Object - */ - protected function _initOldFieldsMap() - { - $this->_oldFieldsMap = Mage::helper('catalog')->getOldFieldMap(); - return $this; - } - /** * Retrieve Store Id * diff --git a/app/code/core/Mage/CatalogInventory/Model/Stock/Item.php b/app/code/core/Mage/CatalogInventory/Model/Stock/Item.php index 83a5983278d..f66d2b03ade 100644 --- a/app/code/core/Mage/CatalogInventory/Model/Stock/Item.php +++ b/app/code/core/Mage/CatalogInventory/Model/Stock/Item.php @@ -152,6 +152,7 @@ protected function _construct() */ protected function _initOldFieldsMap() { + // pre 1.6 fields names, old => new $this->_oldFieldsMap = array( 'stock_status_changed_automatically' => 'stock_status_changed_auto', 'use_config_enable_qty_increments' => 'use_config_enable_qty_inc' diff --git a/app/code/core/Mage/Sales/Model/Order.php b/app/code/core/Mage/Sales/Model/Order.php index 0d2b9b55002..0f560fe8f02 100644 --- a/app/code/core/Mage/Sales/Model/Order.php +++ b/app/code/core/Mage/Sales/Model/Order.php @@ -431,7 +431,12 @@ protected function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('order'); + // pre 1.6 fields names, old => new + $this->_oldFieldsMap = [ + 'payment_authorization_expiration' => 'payment_auth_expiration', + 'forced_do_shipment_with_invoice' => 'forced_shipment_with_invoice', + 'base_shipping_hidden_tax_amount' => 'base_shipping_hidden_tax_amnt', + ]; return $this; } diff --git a/app/code/core/Mage/Sales/Model/Order/Creditmemo/Item.php b/app/code/core/Mage/Sales/Model/Order/Creditmemo/Item.php index 4f57f930142..94454ad771e 100644 --- a/app/code/core/Mage/Sales/Model/Order/Creditmemo/Item.php +++ b/app/code/core/Mage/Sales/Model/Order/Creditmemo/Item.php @@ -132,7 +132,10 @@ public function setCreditmemo(Mage_Sales_Model_Order_Creditmemo $creditmemo) */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('creditmemo_item'); + // pre 1.6 fields names, old => new + $this->_oldFieldsMap = [ + 'base_weee_tax_applied_row_amount' => 'base_weee_tax_applied_row_amnt', + ]; return $this; } diff --git a/app/code/core/Mage/Sales/Model/Order/Invoice/Item.php b/app/code/core/Mage/Sales/Model/Order/Invoice/Item.php index 87d8ba07343..d94d9e7c995 100644 --- a/app/code/core/Mage/Sales/Model/Order/Invoice/Item.php +++ b/app/code/core/Mage/Sales/Model/Order/Invoice/Item.php @@ -122,7 +122,10 @@ function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('invoice_item'); + // pre 1.6 fields names, old => new + $this->_oldFieldsMap = [ + 'base_weee_tax_applied_row_amount' => 'base_weee_tax_applied_row_amnt', + ]; return $this; } /** diff --git a/app/code/core/Mage/Sales/Model/Order/Item.php b/app/code/core/Mage/Sales/Model/Order/Item.php index 388ce175ee1..1f7b2850449 100644 --- a/app/code/core/Mage/Sales/Model/Order/Item.php +++ b/app/code/core/Mage/Sales/Model/Order/Item.php @@ -236,7 +236,10 @@ protected function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('order_item'); + // pre 1.6 fields names, old => new + $this->_oldFieldsMap = [ + 'base_weee_tax_applied_row_amount' => 'base_weee_tax_applied_row_amnt', + ]; return $this; } diff --git a/app/code/core/Mage/Sales/etc/config.xml b/app/code/core/Mage/Sales/etc/config.xml index c83e510ade0..b62cf944a4e 100644 --- a/app/code/core/Mage/Sales/etc/config.xml +++ b/app/code/core/Mage/Sales/etc/config.xml @@ -1198,13 +1198,6 @@ - - - payment_auth_expiration - forced_shipment_with_invoice - base_shipping_hidden_tax_amnt - - diff --git a/app/code/core/Mage/Weee/etc/config.xml b/app/code/core/Mage/Weee/etc/config.xml index af8fa12125b..7c9f74c1fdd 100644 --- a/app/code/core/Mage/Weee/etc/config.xml +++ b/app/code/core/Mage/Weee/etc/config.xml @@ -225,17 +225,6 @@ - - - base_weee_tax_applied_row_amnt - - - base_weee_tax_applied_row_amnt - - - base_weee_tax_applied_row_amnt - -