Magento:“无法重新编制索引。”
我的“类别产品”索引有问题。它根本不会重新编制索引。错误开始时我使用的是1.4,现在我使用的是1.5,并且仍然存在。
我试过了:
使用magento数据库修复工具修复数据库
清除var,所有快取,锁定,工作阶段
确保所有权限都正确。
扯开我的头发。
无论如何,我可以进一步调查这个问题吗?错误日志没有记录该问题,我有些困惑。任何帮助将非常非常感谢。
编辑:回显错误消息后,我得到:报告! SQLSTATE [21S01]:插入值列表与列列表不匹配:1136列计数与第1行的值计数不匹配。
编辑2:我已经运行了查询日志,并具有以下信息。如果您不介意看看并想出解决方案的想法,我会很高兴的。有点在我头上...
[2011-06-14 12:33:26] SQL: SELECT DISTINCT `catalog_product_bundle_selection`.`parent_product_id` FROM `catalog_product_bundle_selection` WHERE (product_id IN(\'180\'))
EXCEPTION
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 /my-domain.com/lib/Zend/Db/Statement/Pdo.php:234
Stack trace:
#0 /my-domain.com/lib/Zend/Db/Statement.php(300): Zend_Db_Statement_Pdo->_execute(Array)
#1 /my-domain.com/lib/Zend/Db/Adapter/Abstract.php(468): Zend_Db_Statement->execute(Array)
#2 /my-domain.com/lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query(\'INSERT INTO cat...\', Array)
#3 /my-domain.com/lib/Varien/Db/Adapter/Pdo/Mysql.php(335): Zend_Db_Adapter_Pdo_Abstract->query(\'INSERT INTO cat...\', Array)
#4 /my-domain.com/app/code/core/Mage/Index/Model/Mysql4/Abstract.php(159): Varien_Db_Adapter_Pdo_Mysql->query(\'INSERT INTO cat...\')
#5 /my-domain.com/app/code/core/Mage/Catalog/Model/Resource/Eav/Mysql4/Category/Indexer/Product.php(522): Mage_Index_Model_Mysql4_Abstract->insertFromSelect(\'SELECT? ...\', \'catalog_categor...\', Array)
#6 /my-domain.com/app/code/core/Mage/Index/Model/Indexer/Abstract.php(125): Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Indexer_Product->reindexAll()
#7 /my-domain.com/app/code/core/Mage/Index/Model/Process.php(139): Mage_Index_Model_Indexer_Abstract->reindexAll()
#8 /my-domain.com/app/code/core/Mage/Index/Model/Process.php(167): Mage_Index_Model_Process->reindexAll()
#9 /my-domain.com/app/code/core/Mage/Index/controllers/Adminhtml/ProcessController.php(124): Mage_Index_Model_Process->reindexEverything()
#10 /my-domain.com/app/code/core/Mage/Core/Controller/Varien/Action.php(418): Mage_Index_Adminhtml_ProcessController->reindexProcessAction()
#11 /my-domain.com/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(254): Mage_Core_Controller_Varien_Action->dispatch(\'reindexProcess\')
#12 /my-domain.com/app/code/core/Mage/Core/Controller/Varien/Front.php(177): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http))
#13 /my-domain.com/app/code/core/Mage/Core/Model/App.php(304): Mage_Core_Controller_Varien_Front->dispatch()
#14 /my-domain.com/app/Mage.php(596): Mage_Core_Model_App->run(Array)
#15 /my-domain.com/index.php(81): Mage::run(\'\', \'store\')
#16 {main}
编辑3:查询本身!
SQL:
INSERT INTO catalog_category_anc_products_index_idx
SELECT STRAIGHT_JOIN DISTINCT ca.category_id, cp.product_id
FROM catalog_category_anc_categs_index_idx AS ca
INNER JOIN catalog_category_entity AS ce
ON ce.path LIKE ca.path OR ce.entity_id = ca.category_id
INNER JOIN catalog_category_product AS cp
ON cp.category_id = ce.entity_id
INNER JOIN catalog_category_product_index_enbl_idx as pv
ON pv.product_id = cp.product_id
没有找到相关结果
已邀请:
4 个回复
邪罗逢确胃
在index.php文件的顶部。其他建议您将System-> Configuration-> General-> Locale设置为\'English \'。 编辑2: 如果您需要适当的修复,这是1.4.x.x中的错误-为了上帝的爱,请更新您的安装! :) 这是核心文件app / code / core / Mage / Catalog / Model / Resource / Eav / Mysql4 / Category / Indexer / Product.php的一个非常讨厌的补丁 http://pastebin.com/fWYTsYuX 从1.5开始反向移植。希望它可以帮助某人。
羔磺
岭取
容淑阔九
(空)表
而已。之后,我就可以对所有数据建立索引,直到现在,其他所有功能都可以正常运行。这对我有用。我希望它也对您有用。