v2.2.7: How to fix incompatible issue between module with M2.4.2 EE?

Created by Jane D, Modified on Thu, 13 May 2021 at 10:48 AM by Jane D

QUESTION:


I installed the module v2.2.7 for M2.3.4 - M2.3.5 for Enterprise Edition on my site Magento M2.4.2 EE. 


However, since your module is not compatible with M2.4.2 EE so that we couldn't run command bin/magento setup:upgrade

And it shows the error below when saving product: 


] report.CRITICAL: SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1, query was: INSERT INTO `catalog_product_index_price_replica` (`entity_id`, `customer_group_id`, `website_id`, `tax_class_id`, `price`, `final_price`, `min_price`, `max_price`, `tier_price`) SELECT `catalog_product_index_price_store_temp`.`entity_id`, `catalog_product_index_price_store_temp`.`customer_group_id`, `catalog_product_index_price_store_temp`.`website_id`, `catalog_product_index_price_store_temp`.`store_id`, `catalog_product_index_price_store_temp`.`tax_class_id`, `catalog_product_index_price_store_temp`.`price`, `catalog_product_index_price_store_temp`.`final_price`, `catalog_product_index_price_store_temp`.`min_price`, `catalog_product_index_price_store_temp`.`max_price`, `catalog_product_index_price_store_temp`.`tier_price` FROM `catalog_product_index_price_store_temp` ON DUPLICATE KEY UPDATE `entity_id` = VALUES(`entity_id`), `customer_group_id` = VALUES(`customer_group_id`), `website_id` = VALUES(`website_id`), `tax_class_id` = VALUES(`tax_class_id`), `price` = VALUES(`price`), `final_price` = VALUES(`final_price`), `min_price` = VALUES(`min_price`), `max_price` = VALUES(`max_price`), `tier_price` = VALUES(`tier_price`) {"exception":"[object] (Magento\\Framework\\Exception\\LocalizedException(code: 0): SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1, query was: INSERT INTO `catalog_product_index_price_replica` (`entity_id`, `customer_group_id`, `website_id`, `tax_class_id`, `price`, `final_price`, `min_price`, `max_price`, `tier_price`) SELECT `catalog_product_index_price_store_temp`.`entity_id`, `catalog_product_index_price_store_temp`.`customer_group_id`, `catalog_product_index_price_store_temp`.`website_id`, `catalog_product_index_price_store_temp`.`store_id`, `catalog_product_index_price_store_temp`.`tax_class_id`, `catalog_product_index_price_store_temp`.`price`, `catalog_product_index_price_store_temp`.`final_price`, `catalog_product_index_price_store_temp`.`min_price`, `catalog_product_index_price_store_temp`.`max_price`, `catalog_product_index_price_store_temp`.`tier_price` FROM `catalog_product_index_price_store_temp` ON DUPLICATE KEY UPDATE `entity_id` = VALUES(`entity_id`), `customer_group_id` = VALUES(`customer_group_id`), `website_id` = VALUES(`website_id`), `tax_class_id` = VALUES(`tax_class_id`), `price` = VALUES(`price`), `final_price` = VALUES(`final_price`), `min_price` = VALUES(`min_price`), `max_price` = VALUES(`max_price`), `tier_price` = VALUES(`tier_price`) at /xxxx/xxxx/xxxx/xxxx/app/code/Bss/MultiStoreViewPricingPriceIndexer/Model/Indexer/Product/Price/Action/Full.php:173, Zend_Db_Statement_Exception(code: 21): SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1, query was: INSERT INTO `catalog_product_index_price_replica` (`entity_id`, `customer_group_id`, `website_id`, `tax_class_id`, `price`, `final_price`, `min_price`, `max_price`, `tier_price`) SELECT `catalog_product_index_price_store_temp`.`entity_id`, `catalog_product_index_price_store_temp`.`customer_group_id`, `catalog_product_index_price_store_temp`.`website_id`, `catalog_product_index_price_store_temp`.`store_id`, `catalog_product_index_price_store_temp`.`tax_class_id`, `catalog_product_index_price_store_temp`.`price`, `catalog_product_index_price_store_temp`.`final_price`, `catalog_product_index_price_store_temp`.`min_price`, `catalog_product_index_price_store_temp`.`max_price`, `catalog_product_index_price_store_temp`.`tier_price` FROM `catalog_product_index_price_store_temp` ON DUPLICATE KEY UPDATE `entity_id` = VALUES(`entity_id`), `customer_group_id` = VALUES(`customer_group_id`), `website_id` = VALUES(`website_id`), `tax_class_id` = VALUES(`tax_class_id`), `price` = VALUES(`price`), `final_price` = VALUES(`final_price`), `min_price` = VALUES(`min_price`), `max_price` = VALUES(`max_price`), `tier_price` = VALUES(`tier_price`) at /xxxx/xxxx/xxxx/xxxxx/vendor/magento/framework/DB/Statement/Pdo/Mysql.php:110, PDOException(code: 21S01): SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1 at /xxxx/xxx/xxxx/xxxx/vendor/magento/framework/DB/Statement/Pdo/Mysql.php:91)"} [] 

 

Please provide us the fix!


ANSWER: 


The error happened because module Bss_MultipleStoreViewPricing is not compatible with M2.4.2 EE.


To fix this error, please remove 3 files below:


+ app/code/Bss/MultiStoreViewPricing/Model/CatalogSearch/Adapter/Mysql/Dynamic/DataProvider.php


+ app/code/Bss/MultiStoreViewPricing/Model/Search/FilterMapper/ExclusionStrategy.php


+ app/code/Bss/MultiStoreViewPricing/Plugin/Filter/Price/DataProvider.php


And download the 4 files attached and override the current files on your site. 


+ app/code/Bss/MultiStoreViewPricing/Model/ResourceModel/Product/Indexer/LinkedProductSelectBuilderByIndexPr

ice.php 


+ app/code/Bss/MultiStoreViewPricing/etc/frontend/di.xml 


+ app/code/Bss/MultiStoreViewPricingPriceIndexer/Model/Indexer/Product/Price/TableMaintainer.php 


+ app/code/Bss/MultiStoreViewPricingPriceIndexer/Model/ResourceModel/Product/Indexer/Price/Bundle.php



 If you need any further assistance, please feel free to contact us. We'd be happy to support!  



Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select atleast one of the reasons

Feedback sent

We appreciate your effort and will try to fix the article