После того, как я обновил свой Magento до EE 1.14.2.0, cron enterprise_refresh_index
всегда получает эту ошибку:
исключение «PDOException» с сообщением «SQLSTATE [42S02]: базовая таблица или представление не найдено: 1146 Таблица» catalog_product_entity_tmp_indexer «не существует» в /var/www/public_html/lib/Zend/Db/Statement/Pdo.php:228
Я не понимаю, почему эта таблица не существует. Разве Magento не должен создавать его в процессе обновления индекса?
magento-enterprise
database
error
indexing
ee-1.14.2.0
Шутка кладет
источник
источник
Ответы:
Есть патч Magento SUPEE-5984, который решает такие проблемы с индексом обновления предприятия.
источник
Мы столкнулись с этой ошибкой после перезапуска базы данных в рабочей среде и после первого переиндексации в локальной среде разработки, на которой запущена EE 1.14.2.3.
У нас сработало следующее:
источник
Я пока не могу комментировать существующие комментарии / ответы, но могу подтвердить, что SUPEE-5984, похоже, решает проблему, по крайней мере, для нашего клиента, который столкнулся с этой проблемой (у них более миллиона продуктов, поэтому он до сих пор не имеет закончили бегать, но теперь он работает ...). Мы открыли тикет с Magento через контракт с клиентом, и Magento получил нам патч менее чем за час.
источник
Для дальнейшего использования: ошибка не возникает, когда я возвращаю файл
app/code/core/Enterprise/Catalog/Model/Index/Action/Product/Flat/Refresh.php
к нашей предыдущей версии 1.14.0.1.Новый параметр
$resetFlag
в функции,_reindex
кажется, вызывает проблему.источник
У меня была та же проблема с Magento EE 1.14.2.3, но вышеупомянутые решения не работали для меня. Я узнал, что проблема была в
Enterprise_Catalog_Helper_Product::getFlatColumns
. Я решил это, изменив строкуif ($columns !== null) {
в
if ($columns !== null && $columns !== false) {
Конечно: не редактируйте основной файл напрямую, но сделайте переписывание.
источник