Just upgrade my site to 1.9.3.0 and got error SQLSTATE[42S22]: Column not found: 1054 Unknown column 'catalog_product_entity_group_price.is_percent'

北战南征 提交于 2019-12-05 13:26:17

问题


Before I was using Magento 1.9.2.4 and today I got message that need to upgrade my magento with latest update some critical updates too.

After upgrading my website from downloader section everything went well no error etc, two things happen that I notices after update my index.php permission was change to 666 website is opening correctly I mean front page display, but when I click on any product It show error page with following information.

There has been an error processing your request

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'catalog_product_entity_group_price.is_percent' in 'field list', query was: SELECT `catalog_product_entity_group_price`.`value_id` AS `price_id`, `catalog_product_entity_group_price`.`website_id`, `catalog_product_entity_group_price`.`all_groups`, `catalog_product_entity_group_price`.`customer_group_id` AS `cust_group`, `catalog_product_entity_group_price`.`value` AS `price`, `catalog_product_entity_group_price`.`is_percent` FROM `catalog_product_entity_group_price` WHERE (entity_id='84') AND (website_id = 0)

Trace:
    #0 /home/MyWebsite/public_html/app/Mage.php(463): Mage_Core_Model_Config->getModelInstance('eav/entity_attr...', 'SQLSTATE[42S22]...')

   #1 /home/MyWebsite/public_html/app/code/core/Mage/Eav/Model/Entity/Abstract.php(661): Mage::getModel('eav/entity_attr...', 'SQLSTATE[42S22]...')
   #2 /home/MyWebsite/public_html/app/code/core/Mage/Eav/Model/Entity/Abstract.php(1641): Mage_Eav_Model_Entity_Abstract->walkAttributes('backend/afterLo...', Arr

Not know how to roll back because I did not get backup as they says it is stable, or not able to resolve this error.

Thanks in advance


回答1:


Delete the contents of var/cache/

For the future, remember to turn off Compiler, all Indexes, and all Caches prior to performing an update.

What happened, is that the configuration cache is still active, and prevents Magento from detecting that database changes are necessary.




回答2:


The issue is caused by a missing column named: is_percent in the table catalog_product_entity_group_price

Magento 1.9.3 includes an upgrade file that creates that column in the database. The file is located here: app/code/core/Mage/Catalog/sql/catalog_setup/upgrade-1.6.0.0.19.1.4-1.6.0.0.19.1.5.php

When the cache is enabled the installer can’t run the upgrade script, causing the error reported by the OP. Another possible cause of a failed upgrade script is if you refresh the frontend or backend before all files have been uploaded via FTP.

If flushing the cache doesn’t solve the problem (be sure to refresh any external cache like Redis) you can try the following:

1) Open the core_resource table

2) Locate the catalog_setup row

3) If the current value for version and data_versions is: 1.6.0.0.19.1.5 then change both values to 1.6.0.0.19.1.2 and refresh any page of the frontend.

This will force Magento to rerun the upgrade script and create the missing column in the database.

If the value for version and data_version is 1.6.0.0.19.1.2 then you are not properly flushing the cache.




回答3:


Delete all files/folders from the folder path "var/cache/"

And make sure you disabled caching before start upgrade.




回答4:


For me, the problem was Redis cache. If you aren't sure if you have Redis enabled, check your app/etc/local.xml file.

To flush Redis cache:

redis-cli flushall 

That worked for me.




回答5:


Make sure the table exists.

Check this table (sales_bestsellers_aggregated_yearly) wheater 'product_type_id' columns is in it. If 'product_type_id' column is in table then re-index and refresh cache. If 'product_type_id' column is not in that table then you need to create the structure like the image attached.




回答6:


Today I have also faced the same issue and I have resolved by following steps:

  1. Run the below query in database

    ALTER TABLE sales_bestsellers_aggregated_yearly ADD product_type_id TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL AFTER product_id ;

    ALTER TABLE catalog_product_entity_group_price ADD is_percent SMALLINT( 5 ) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'Is Percent';

  2. Delete the contents of var/cache/



来源:https://stackoverflow.com/questions/40012715/just-upgrade-my-site-to-1-9-3-0-and-got-error-sqlstate42s22-column-not-found

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!