![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-catalog/Model/Indexer/Product/Flat/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Catalog\Model\Indexer\Product\Flat; use Magento\Framework\App\ResourceConnection; /** * Class TableData */ class TableData implements TableDataInterface { /** * @var \Magento\Framework\DB\Adapter\AdapterInterface */ protected $_connection; /** * @var \Magento\Framework\App\ResourceConnection */ protected $_resource; /** * @param \Magento\Framework\App\ResourceConnection $resource */ public function __construct(\Magento\Framework\App\ResourceConnection $resource) { $this->_resource = $resource; } /** * Move data from temporary tables to flat * * @param string $flatTable * @param string $flatDropName * @param string $temporaryFlatTableName * @return void */ public function move($flatTable, $flatDropName, $temporaryFlatTableName) { $connection = $this->_resource->getConnection(); $renameTables = []; if ($connection->isTableExists($flatTable)) { $renameTables[] = ['oldName' => $flatTable, 'newName' => $flatDropName]; } $renameTables[] = ['oldName' => $temporaryFlatTableName, 'newName' => $flatTable]; $connection->dropTable($flatDropName); $connection->renameTablesBatch($renameTables); $connection->dropTable($flatDropName); } }