Reindex价格问题(价值清单与列列表不匹配) -- magento-1.7 领域 和 price 领域 和 indexing 领域 和 index 领域 magento 相关 的问题

Reindex price issue (value list does not match column list)


简体版||繁體版
1
vote

问题

中文

有人使用了Innoext_advance pricing模块吗? 升级到magento 1.7 reindex崩溃或插入无效数据。

崩溃堆栈跟踪:

  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 lib/Zend/Db/Statement/Pdo.php:234 Stack trace: #0 lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array) #1 lib/Zend/Db/Statement.php(320): Varien_Db_Statement_Pdo_Mysql->_execute(Array) #2 lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array) #3 lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('INSERT INTO `ca...', Array) #4 lib/Varien/Db/Adapter/Pdo/Mysql.php(419): Zend_Db_Adapter_Pdo_Abstract->query('INSERT INTO `ca...', Array) #5 app/code/local/Innoexts/AdvancedPricing/Model/Mysql4/Catalog/Product/Indexer/Price/Configurable.php(222): Varien_Db_Adapter_Pdo_Mysql->query('INSERT INTO `ca...') #6 app/code/core/Mage/Catalog/Model/Resource/Product/Indexer/Price/Configurable.php(50): Innoexts_AdvancedPricing_Model_Mysql4_Catalog_Product_Indexer_Price_Configurable->_applyConfigurableOption() #7 app/code/local/Innoexts/AdvancedPricing/Model/Mysql4/Catalog/Product/Indexer/Price.php(167): Mage_Catalog_Model_Resource_Product_Indexer_Price_Configurable->reindexAll() #8 /app/code/core/Mage/Index/Model/Indexer/Abstract.php(143): Innoexts_AdvancedPricing_Model_Mysql4_Catalog_Product_Indexer_Price->reindexAll() #9 app/code/core/Mage/Index/Model/Process.php(209): Mage_Index_Model_Indexer_Abstract->reindexAll() #10 app/code/core/Mage/Index/Model/Process.php(255): Mage_Index_Model_Process->reindexAll() #11 shell/indexer.php(158): Mage_Index_Model_Process->reindexEverything() #12 shell/indexer.php(198): Mage_Shell_Compiler->run() #13 {main}   

catalog_product_index_price 表中的无效数据:

  currency is always '0.0' (should be EUR, GBP etc) store_id is always 0   

我会感激任何帮助。

英文原文

Someone has used the Innoext_AdvancePricing module? After upgreade to Magento 1.7 reindex crashes or inserts invalid data.

Crash stack trace:

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 lib/Zend/Db/Statement/Pdo.php:234 Stack trace: #0 lib/Varien/Db/Statement/Pdo/Mysql.php(110): Zend_Db_Statement_Pdo->_execute(Array) #1 lib/Zend/Db/Statement.php(320): Varien_Db_Statement_Pdo_Mysql->_execute(Array) #2 lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array) #3 lib/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('INSERT INTO `ca...', Array) #4 lib/Varien/Db/Adapter/Pdo/Mysql.php(419): Zend_Db_Adapter_Pdo_Abstract->query('INSERT INTO `ca...', Array) #5 app/code/local/Innoexts/AdvancedPricing/Model/Mysql4/Catalog/Product/Indexer/Price/Configurable.php(222): Varien_Db_Adapter_Pdo_Mysql->query('INSERT INTO `ca...') #6 app/code/core/Mage/Catalog/Model/Resource/Product/Indexer/Price/Configurable.php(50): Innoexts_AdvancedPricing_Model_Mysql4_Catalog_Product_Indexer_Price_Configurable->_applyConfigurableOption() #7 app/code/local/Innoexts/AdvancedPricing/Model/Mysql4/Catalog/Product/Indexer/Price.php(167): Mage_Catalog_Model_Resource_Product_Indexer_Price_Configurable->reindexAll() #8 /app/code/core/Mage/Index/Model/Indexer/Abstract.php(143): Innoexts_AdvancedPricing_Model_Mysql4_Catalog_Product_Indexer_Price->reindexAll() #9 app/code/core/Mage/Index/Model/Process.php(209): Mage_Index_Model_Indexer_Abstract->reindexAll() #10 app/code/core/Mage/Index/Model/Process.php(255): Mage_Index_Model_Process->reindexAll() #11 shell/indexer.php(158): Mage_Index_Model_Process->reindexEverything() #12 shell/indexer.php(198): Mage_Shell_Compiler->run() #13 {main} 

Invalid data in catalog_product_index_price table:

currency is always '0.0' (should be EUR, GBP etc) store_id is always 0 

I will be grateful for any help.

           
   
   

回答列表

2
 
vote
vote
最佳答案
 

它是一个糟糕的表格(当然是因为 Column count doesn't match )。 从 catalog_product_index_table 中的某种栏目被删除或未添加。

另外,下面的方法顺序很重要。

Innoexts_AdvancedPricing_Model_Mysql4_Catalog_Product_Indexer_Price_Configurable::_prepareFinalPriceData()

尤其是那些是主要键的一部分的那些( 99887664 customer_group_id website_id currency ,<代码> store_id )。

e.g。

      if ($this->getVersionHelper()->isGe1700()) {         $select->columns(array(             'group_price'      => new Zend_Db_Expr('gp.price'),              'base_group_price' => new Zend_Db_Expr('gp.price'),          ));      }        $select->columns(array(         'currency'      => $indexerHelper->getCurrencyExpr('cw.website_id'),          'store_id'      => new Zend_Db_Expr('cs.store_id'),      ));   

可能是不同的,取决于列表中的列在表中如何:

  Column count doesn't match0  
 

It was a mess with tables (of course because of Column count doesn't match). Somehow column from catalog_product_index_table was deleted or not added.

Additionally column order in method below is important.

Innoexts_AdvancedPricing_Model_Mysql4_Catalog_Product_Indexer_Price_Configurable::_prepareFinalPriceData()

Especially for those which are part of primary key (entity_id,customer_group_id,website_id,currency,store_id).

e.g.

    if ($this->getVersionHelper()->isGe1700()) {         $select->columns(array(             'group_price'      => new Zend_Db_Expr('gp.price'),              'base_group_price' => new Zend_Db_Expr('gp.price'),          ));      }        $select->columns(array(         'currency'      => $indexerHelper->getCurrencyExpr('cw.website_id'),          'store_id'      => new Zend_Db_Expr('cs.store_id'),      )); 

Could be different depends how columns are ordered in table:

    $select->columns(array(         'currency'      => $indexerHelper->getCurrencyExpr('cw.website_id'),          'store_id'      => new Zend_Db_Expr('cs.store_id'),      ));     if ($this->getVersionHelper()->isGe1700()) {         $select->columns(array(             'group_price'      => new Zend_Db_Expr('gp.price'),              'base_group_price' => new Zend_Db_Expr('gp.price'),          ));      }    
 
 

相关问题

8  产品属性无法重新筛选  ( Product attributes could not be reindexed ) 
我在尝试reindex"产品属性" 时重新解决此错误。任何人都可以建议,可能是问题和可能的解决方案 致命错误:未捕获的异常"PDOException" ,带有消息'SQLSTATE [23000]:Integrity Constraint违规:1062在E: XAMPP HTDOCS Magento中的关键"主...

0  Magento索引管理错误请稍后尝试运行此过程  ( Magento index management error please try run this process later ) 
我正在尝试reindex目录URL重写,但它会抛出错误 "目录URL重写索引进程现在正在运行。请尝试运行 这个过程后来。" 我正在尝试删除var /锁,但没有锁定文件夹 ...

3  可配置产品价格缺少价格指数[已关闭]  ( Prices of configurable products missing in price index ) 
关闭。这个问题是 off-topic 。它目前不接受答案。 想要改进这个问题?更新问题,所以它是对于magento堆栈交换。 关闭 6年前。 ...

3  客户组和Product_Price_Index Magento的增长  ( Customer groups and product price index growth in magento ) 
magento似乎为每个产品x customer_group_id创建了一个product_price_index行,即使给定的customer_group_id没有产品的价格。 这最终在一个问题中:我有4675个产品和285名客户。给定的客户可能只有1个产品的特价,而且还没有,但仍然我在索引中获得了4675x28...

1  www.mysite.com与www.mysite.com/homepage之间的差异  ( Difference between www mysite com and www mysite com homepage ) 
我有一个cms页面,用于网站上的标识符'主页'。 我还在local.xml中的 99887660 标记内部的Local.xml内部的一些额外的块,请参见下文(例如 home.featured.products 块调用底部页面): <cms_index_index translate="label"> <...

2  Indexer问题 - 空闲(积压在741)  ( Indexer issue idle 741 in backlog ) 
某些类别元标题&amp;描述不是设置。我正在获得索引状态的积压。解决这个问题的任何想法? ...

2  htaccess magento停止访问服务器上的其他网站  ( Htaccess magento stopping access to other sites on server ) 
我在共享服务器上有一个mutliple magento站点。我为在共享服务器上分享出站点时,我遵守的是,因为资源有限,但它的工作正常。 我必须在服务器的路由中拥有.htaccess文件,但是我的站点在子文件夹中 site1.com看 theserverroute /网站/网址1 / site2.com看起来...

1  我的.htaccess不允许部分来保存更改  ( My htaccess doesnt allow backend to save changes ) 
我在我的.htaccess文件中有规则,我使用的是,为了完全消除来自Magento安装中的所有URL的index.php我拥有的所有URL(当前在子域内)。 Options +FollowSymLinks RewriteEngine on RewriteBase / Rewri...

0  我可以从Cron删除索引:运行吗?  ( Can i remove indexing from cronrun ) 
cron php bin/magento cron:run 设置为在我们的项目中运行每分钟。 以及各种其他任务,它在Magento中运行索引。索引是索引 cron组的一部分。 用于调试目的,所有Cron组可以从 execute vendor/magento/module-cron/Observer/Proce...

1  Reindex价格问题(价值清单与列列表不匹配)  ( Reindex price issue value list does not match column list ) 
有人使用了Innoext_advance pricing模块吗? 升级到magento 1.7 reindex崩溃或插入无效数据。 崩溃堆栈跟踪: Exception 'Zend_Db_Statement_Exception' with message 'SQLSTATE[21S01]: Insert value...




© 2022 it.wenda123.org All Rights Reserved. 问答之家 版权所有