2013-09-26 3 views
1

сильный текст Я пытался добавить новые продукты в свой магазин, но они не появлялись. Я сделал все, что мог, но, пытаясь переиндексировать все данные, цены продукта породили ошибку. Я получил «Проблема с переиндексацией». Я попытался удалить var/cache и var/locks (но на самом деле я не могу проигнорировать/cache - я не знаю, должно ли это быть так). Выход я получил от REINDEX выглядит следующим образом:Magento - Нельзя переоценить цены на продукт

Product Prices index process unknown error: exception 'PDOException' with message 'SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1' in /chroot/home/xsmokeco/xsmoke.com/html/lib/Zend/Db/Statement/Pdo.php:228 Stack trace:

0 /chroot/home/xsmokeco/xsmoke.com/html/lib/Zend/Db/Statement/Pdo.php(228): PDOStatement->execute(Array)

1 /chroot/home/xsmokeco/xsmoke.com/html/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array)

2 /chroot/home/xsmokeco/xsmoke.com/html/lib/Zend/Db/Statement.php(300): Varien_Db_Statement_Pdo_Mysql->_execute(Array)

3 /chroot/home/xsmokeco/xsmoke.com/html/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array)

4 /chroot/home/xsmokeco/xsmoke.com/html/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('INSERT INTO `ca...', Array)

5 /chroot/home/xsmokeco/xsmoke.com/html/lib/Varien/Db/Adapter/Pdo/Mysql.php(419): Zend_Db_Adapter_Pdo_Abstract->query('INSERT INTO `ca...', Array)

6 /chroot/home/xsmokeco/xsmoke.com/html/app/code/local/Innoexts/StorePricing/Model/Mysql4/Downloadable/Indexer/Price.php(125): Varien_Db_Adapter_Pdo_Mysql->query('INSERT INTO `ca...')

7 /chroot/home/xsmokeco/xsmoke.com/html/app/code/core/Mage/Downloadable/Model/Resource/Indexer/Price.php(47): Innoexts_StorePricing_Model_Mysql4_Downloadable_Indexer_Price->_prepareFinalPriceData()

8 /chroot/home/xsmokeco/xsmoke.com/html/app/code/core/Mage/Catalog/Model/Resource/Product/Indexer/Price.php(385): Mage_Downloadable_Model_Resource_Indexer_Price->reindexAll()

9 /chroot/home/xsmokeco/xsmoke.com/html/app/code/core/Mage/Index/Model/Indexer/Abstract.php(143): Mage_Catalog_Model_Resource_Product_Indexer_Price->reindexAll()

10 /chroot/home/xsmokeco/xsmoke.com/html/app/code/core/Mage/Index/Model/Process.php(209): Mage_Index_Model_Indexer_Abstract->reindexAll()

11 /chroot/home/xsmokeco/xsmoke.com/html/app/code/core/Mage/Index/Model/Process.php(255): Mage_Index_Model_Process->reindexAll()

12 /chroot/home/xsmokeco/xsmoke.com/html/shell/indexer.php(158): Mage_Index_Model_Process->reindexEverything()

13 /chroot/home/xsmokeco/xsmoke.com/html/shell/indexer.php(198): Mage_Shell_Compiler->run()

14 {main}

Next exception 'Zend_Db_Statement_Exception' with message 'SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1' in /chroot/home/xsmokeco/xsmoke.com/html/lib/Zend/Db/Statement/Pdo.php:234 Stack trace:

0 /chroot/home/xsmokeco/xsmoke.com/html/lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array)

1 /chroot/home/xsmokeco/xsmoke.com/html/lib/Zend/Db/Statement.php(300): Varien_Db_Statement_Pdo_Mysql->_execute(Array)

2 /chroot/home/xsmokeco/xsmoke.com/html/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array)

3 /chroot/home/xsmokeco/xsmoke.com/html/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('INSERT INTO `ca...', Array)

4 /chroot/home/xsmokeco/xsmoke.com/html/lib/Varien/Db/Adapter/Pdo/Mysql.php(419): Zend_Db_Adapter_Pdo_Abstract->query('INSERT INTO `ca...', Array)

5 /chroot/home/xsmokeco/xsmoke.com/html/app/code/local/Innoexts/StorePricing/Model/Mysql4/Downloadable/Indexer/Price.php(125): Varien_Db_Adapter_Pdo_Mysql->query('INSERT INTO `ca...')

6 /chroot/home/xsmokeco/xsmoke.com/html/app/code/core/Mage/Downloadable/Model/Resource/Indexer/Price.php(47): Innoexts_StorePricing_Model_Mysql4_Downloadable_Indexer_Price->_prepareFinalPriceData()

7 /chroot/home/xsmokeco/xsmoke.com/html/app/code/core/Mage/Catalog/Model/Resource/Product/Indexer/Price.php(385): Mage_Downloadable_Model_Resource_Indexer_Price->reindexAll()

8 /chroot/home/xsmokeco/xsmoke.com/html/app/code/core/Mage/Index/Model/Indexer/Abstract.php(143): Mage_Catalog_Model_Resource_Product_Indexer_Price->reindexAll()

9 /chroot/home/xsmokeco/xsmoke.com/html/app/code/core/Mage/Index/Model/Process.php(209): Mage_Index_Model_Indexer_Abstract->reindexAll()

10 /chroot/home/xsmokeco/xsmoke.com/html/app/code/core/Mage/Index/Model/Process.php(255): Mage_Index_Model_Process->reindexAll()

11 /chroot/home/xsmokeco/xsmoke.com/html/shell/indexer.php(158): Mage_Index_Model_Process->reindexEverything()

12 /chroot/home/xsmokeco/xsmoke.com/html/shell/indexer.php(198): Mage_Shell_Compiler->run()

13 {main}

Я любопытное боюсь что-либо изменить в базе данных, поэтому я хотел бы спросить здесь некоторую помощь. Я использую magento 1.7, я никогда не обновлял его. Спасибо заранее

+0

Я рекомендую в качестве первого шага полностью создать резервную копию базы данных. – Axel

+1

Вы пытались отключить/удалить расширение 'Innoexts/StorePricing'? Я заметил в трассировке стека, что он изменяет некоторые из запросов Insert, что может быть причиной. – Axel

ответ

1

У меня возникла проблема, как это происходит от расширения. Возможно, вам стоит попробовать Axel method.Backup и удалить расширение innotext и попытаться снова переиндексировать.

0

Я модернизировал пару Magento CE (1.4) до Magento EE (1.11), используя традиционный (и эффективный) способ. Но я обнаружил, что существует важная проблема при переиндексации цен, которая мешала Magento делать это.

Чтение этого сообщения на досках Magento Я обнаружил, что проблема (в моем случае) была связана с ошибкой в ​​таблице catalog_product_entity_tier_price, где некоторые из записей были связаны с продуктами, которые больше не существовали. Это была фактическая ошибка и при попытке проиндексировать цены на продукцию, Magento бы бросить это сообщение:

There was a problem with reindexing process. 

Как решить это

Итак, вы хотите, чтобы решить эту проблему. Вы должны удалить все записи в таблице catalog_product_entity_tier_price, которые связаны с продуктом, который больше не существует. Вы можете сделать это вручную или использовать следующий скрипт, который я создал. Это очень удобно.

Download the script from here 

В этом файле вы найдете:

The script: clean_tier_prices.php 
A library to connect in a really easy way to the db 

Следуйте этим шагам:

Make a copy of your database (just in case) 
Uncompress the zip file in your magento base directory 
Edit the lib/db.php file and put there your connection settings (db user, user pass and db) 
Open the browser and go to http://yourmagentopath.com/clean_tier_prices.php 
You’ll see wich references have been deleted from the catalog_product_entity_tier_price table 
Try reindexing again in your Magento backoffice 

Важное примечание: Вы можете использовать этот скрипт на свой страх и риск. Сделайте копию своей базы данных перед ее применением. Если вы улучшите это, пожалуйста, поделитесь им со мной и остальным миром! download from here

Смежные вопросы