[仅限PaaS]{class="badge informative" title="仅适用于云项目(Adobe管理的PaaS基础架构)和内部部署项目上的Adobe Commerce 。"}
ACSD-59083:在同步 更新期间未找到 基表或视图mview错误
ACSD-59083修补程序修复了当mview更新同时运行时,某些数据库更新操作失败并出现错误“未找到基表或视图”的问题。 安装Quality Patches Tool (QPT) 1.1.57时,此修补程序可用。 修补程序ID为ACSD-59083。 请注意,Adobe Commerce 2.4.8中已修复此问题。
受影响的产品和版本
为Adobe Commerce版本创建了修补程序:
Adobe Commerce(所有部署方法) 2.4.5-p5
与Adobe Commerce版本兼容:
Adobe Commerce(所有部署方法) 2.4.4 - 2.4.7-p3
magento/quality-patches包更新到最新版本,并在Quality Patches Tool:搜索修补程序页面上检查兼容性。 使用修补程序ID作为搜索关键字来查找修补程序。问题
当mview更新同时运行时,某些数据库更新操作会导致“未找到基表或视图”错误。
重现步骤:
-
将索引器模式设置为 Update on Schedule。
-
使用以下SQL命令将记录插入到
cl表中:code language-none INSERT INTO catalogrule_product_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalogrule_rule_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalogsearch_fulltext_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalog_category_product_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalog_product_attribute_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalog_product_category_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO catalog_product_price_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO customer_dummy_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO design_config_dummy_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO salesrule_rule_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO targetrule_product_rule_cl SELECT NULL, entity_id FROM catalog_product_entity; INSERT INTO targetrule_rule_product_cl SELECT NULL, entity_id FROM catalog_product_entity; -
安装
setup/performance-toolkit/profiles/ce/small.xml配置文件。 -
在文件
magento2ee/lib/internal/Magento/Framework/ForeignKey/Config/DbReader.php的第72行添加断点。 -
清除缓存。
-
单击任意产品上的 Add to Cart。
-
在执行命中断点时启动cron作业。
-
启动cron作业后恢复该进程。
预期的结果:
数据库操作成功执行且没有错误。
实际结果:
执行期间出错:
SQLSTATE[42S02]: Base table or view not found: 1146 Table 'magento24.design_config_dummy_cl__tmp663bb682960345_17794892' doesn't exist in /www/magento24/lib/internal/Magento/Framework/DB/Statement/Pdo/Mysql.php:90
应用修补程序
要应用单独的修补程序,请根据您的部署方法使用以下链接:
- Adobe Commerce或Magento Open Source内部部署: Quality Patches Tool 指南中的>使用情况Quality Patches Tool。
- 云基础架构上的Adobe Commerce:云基础架构上的Commerce指南中的升级和修补程序>应用修补程序。
相关阅读
要了解有关Quality Patches Tool的更多信息,请参阅: