From 66696e6fb3075b11ebc81f5421ee1f1209663dc7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20H=C3=BCnig?= Date: Tue, 6 Jul 2021 19:05:59 +0200 Subject: [PATCH 1/5] update getNextAutoincrement update getNextAutoincrement to not use showTableStatus for performants reasons. See also #28516 --- .../ImportExport/Model/ResourceModel/Helper.php | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php b/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php index 408a059b349b4..87dd9dfc6e953 100644 --- a/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php +++ b/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php @@ -53,11 +53,20 @@ public function getMaxDataSize() public function getNextAutoincrement($tableName) { $connection = $this->getConnection(); - $entityStatus = $connection->showTableStatus($tableName); - - if (empty($entityStatus['Auto_increment'])) { + $sql = sprintf( + 'SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = %s AND TABLE_SCHEMA = DATABASE()', + $this->quote($tableName), + $fromDbName + ); + $entityStatus = $connection->fetchRow($sql); + if (empty($entityStatus['AUTO_INCREMENT'])) + { throw new \Magento\Framework\Exception\LocalizedException(__('Cannot get autoincrement value')); } - return $entityStatus['Auto_increment']; + + return $entityStatus['AUTO_INCREMENT']; + + + } } From fba3c8516ca06c310c88e95f0c1716ebdc0cde9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20H=C3=BCnig?= Date: Tue, 6 Jul 2021 19:23:30 +0200 Subject: [PATCH 2/5] removed unused parameter inside getNextAutoincrement --- app/code/Magento/ImportExport/Model/ResourceModel/Helper.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php b/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php index 87dd9dfc6e953..87652a48672a6 100644 --- a/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php +++ b/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php @@ -55,8 +55,7 @@ public function getNextAutoincrement($tableName) $connection = $this->getConnection(); $sql = sprintf( 'SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = %s AND TABLE_SCHEMA = DATABASE()', - $this->quote($tableName), - $fromDbName + $this->quote($tableName) ); $entityStatus = $connection->fetchRow($sql); if (empty($entityStatus['AUTO_INCREMENT'])) From 7e13fe77096659a356157d65670028e6c2e5553f Mon Sep 17 00:00:00 2001 From: engcom-Lima Date: Tue, 4 Jan 2022 17:13:56 +0530 Subject: [PATCH 3/5] [BUGFIX] - Corrected breaking code --- .../ImportExport/Model/ResourceModel/Helper.php | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php b/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php index 87652a48672a6..b95a8a32da366 100644 --- a/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php +++ b/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php @@ -55,17 +55,13 @@ public function getNextAutoincrement($tableName) $connection = $this->getConnection(); $sql = sprintf( 'SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = %s AND TABLE_SCHEMA = DATABASE()', - $this->quote($tableName) + $connection->quoteIdentifier($tableName) ); $entityStatus = $connection->fetchRow($sql); - if (empty($entityStatus['AUTO_INCREMENT'])) - { + if (empty($entityStatus['AUTO_INCREMENT'])) { throw new \Magento\Framework\Exception\LocalizedException(__('Cannot get autoincrement value')); } - - return $entityStatus['AUTO_INCREMENT']; - - + return $entityStatus['AUTO_INCREMENT']; } } From 2e472f239f412b7400a74d5e90f3a8f5231a7d32 Mon Sep 17 00:00:00 2001 From: engcom-Lima Date: Wed, 19 Jan 2022 14:38:52 +0530 Subject: [PATCH 4/5] [BUGFIX] - Fixed static build failures --- .../Magento/ImportExport/Model/ResourceModel/Helper.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php b/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php index b95a8a32da366..6131f5b138052 100644 --- a/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php +++ b/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php @@ -16,10 +16,10 @@ class Helper extends \Magento\Framework\DB\Helper /** * Constants to be used for DB */ - const DB_MAX_PACKET_SIZE = 1048576; + public const DB_MAX_PACKET_SIZE = 1048576; // Maximal packet length by default in MySQL - const DB_MAX_PACKET_COEFFICIENT = 0.85; + public const DB_MAX_PACKET_COEFFICIENT = 0.85; // The coefficient of useful data from maximum packet length @@ -55,7 +55,7 @@ public function getNextAutoincrement($tableName) $connection = $this->getConnection(); $sql = sprintf( 'SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = %s AND TABLE_SCHEMA = DATABASE()', - $connection->quoteIdentifier($tableName) + $connection->quote($tableName) ); $entityStatus = $connection->fetchRow($sql); if (empty($entityStatus['AUTO_INCREMENT'])) { From 69c3a83fa3ad6a7fc5873aadcf85c19419cbfc19 Mon Sep 17 00:00:00 2001 From: engcom-Lima Date: Wed, 19 Jan 2022 16:01:34 +0530 Subject: [PATCH 5/5] [BUGFIX] - Fixed static build failures --- app/code/Magento/ImportExport/Model/ResourceModel/Helper.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php b/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php index 6131f5b138052..751b1f81329e0 100644 --- a/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php +++ b/app/code/Magento/ImportExport/Model/ResourceModel/Helper.php @@ -26,6 +26,7 @@ class Helper extends \Magento\Framework\DB\Helper /** * @param \Magento\Framework\App\ResourceConnection $resource * @param string $modulePrefix + * phpcs:disable Generic.CodeAnalysis.UselessOverridingMethod */ public function __construct(\Magento\Framework\App\ResourceConnection $resource, $modulePrefix = 'importexport') {