From 0d2bb65587e6e42d56fd9c9bab3b44c7b5e5594f 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 | 1 - .../core/Mage/CatalogInventory/Model/Stock/Item.php | 1 + app/code/core/Mage/Sales/Model/Order.php | 7 ++++++- app/code/core/Mage/Sales/Model/Order/Address.php | 1 - app/code/core/Mage/Sales/Model/Order/Creditmemo.php | 1 - .../core/Mage/Sales/Model/Order/Creditmemo/Item.php | 5 ++++- app/code/core/Mage/Sales/Model/Order/Invoice.php | 1 - app/code/core/Mage/Sales/Model/Order/Invoice/Item.php | 5 ++++- app/code/core/Mage/Sales/Model/Order/Item.php | 5 ++++- app/code/core/Mage/Sales/Model/Order/Shipment.php | 1 - app/code/core/Mage/Sales/Model/Quote.php | 1 - app/code/core/Mage/Sales/Model/Quote/Address.php | 1 - app/code/core/Mage/Sales/Model/Quote/Item.php | 1 - app/code/core/Mage/Sales/etc/config.xml | 7 ------- app/code/core/Mage/Weee/etc/config.xml | 11 ----------- 15 files changed, 19 insertions(+), 30 deletions(-) diff --git a/app/code/core/Mage/Catalog/Model/Product.php b/app/code/core/Mage/Catalog/Model/Product.php index 956372bdf0f..4cf07c42b8b 100644 --- a/app/code/core/Mage/Catalog/Model/Product.php +++ b/app/code/core/Mage/Catalog/Model/Product.php @@ -126,7 +126,6 @@ protected function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('catalog')->getOldFieldMap(); return $this; } 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/Address.php b/app/code/core/Mage/Sales/Model/Order/Address.php index 44c8bb68337..fbbfdb6e79d 100644 --- a/app/code/core/Mage/Sales/Model/Order/Address.php +++ b/app/code/core/Mage/Sales/Model/Order/Address.php @@ -93,7 +93,6 @@ protected function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('order_address'); return $this; } diff --git a/app/code/core/Mage/Sales/Model/Order/Creditmemo.php b/app/code/core/Mage/Sales/Model/Order/Creditmemo.php index 8e30f7c5f10..809ecb1be53 100644 --- a/app/code/core/Mage/Sales/Model/Order/Creditmemo.php +++ b/app/code/core/Mage/Sales/Model/Order/Creditmemo.php @@ -185,7 +185,6 @@ protected function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('order_creditmemo'); 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.php b/app/code/core/Mage/Sales/Model/Order/Invoice.php index aa1769c7b28..1d2ae85d537 100644 --- a/app/code/core/Mage/Sales/Model/Order/Invoice.php +++ b/app/code/core/Mage/Sales/Model/Order/Invoice.php @@ -204,7 +204,6 @@ protected function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('order_invoice'); 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/Model/Order/Shipment.php b/app/code/core/Mage/Sales/Model/Order/Shipment.php index 6cc30711603..724d52cb2d7 100644 --- a/app/code/core/Mage/Sales/Model/Order/Shipment.php +++ b/app/code/core/Mage/Sales/Model/Order/Shipment.php @@ -108,7 +108,6 @@ protected function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('order_shipment'); return $this; } diff --git a/app/code/core/Mage/Sales/Model/Quote.php b/app/code/core/Mage/Sales/Model/Quote.php index 22c59fe8c46..8072e770879 100644 --- a/app/code/core/Mage/Sales/Model/Quote.php +++ b/app/code/core/Mage/Sales/Model/Quote.php @@ -208,7 +208,6 @@ protected function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('quote'); return $this; } diff --git a/app/code/core/Mage/Sales/Model/Quote/Address.php b/app/code/core/Mage/Sales/Model/Quote/Address.php index e81d1709566..cede9cf2a96 100644 --- a/app/code/core/Mage/Sales/Model/Quote/Address.php +++ b/app/code/core/Mage/Sales/Model/Quote/Address.php @@ -231,7 +231,6 @@ protected function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('quote_address'); return $this; } diff --git a/app/code/core/Mage/Sales/Model/Quote/Item.php b/app/code/core/Mage/Sales/Model/Quote/Item.php index 05e737e722d..e363f12103c 100644 --- a/app/code/core/Mage/Sales/Model/Quote/Item.php +++ b/app/code/core/Mage/Sales/Model/Quote/Item.php @@ -211,7 +211,6 @@ protected function _construct() */ protected function _initOldFieldsMap() { - $this->_oldFieldsMap = Mage::helper('sales')->getOldFieldMap('quote_item'); 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 - -