[仅限PaaS]{class="badge informative" title="仅适用于云项目(Adobe管理的PaaS基础架构)和内部部署项目上的Adobe Commerce 。"}

修复了Commerce Data Exporter源中未更新的数据,并且changelog表的cron日志错误不存在

本文提供了一个解决方案,用于修复在Data Exporter Mview订阅中使用错误视图ID导致的数据同步问题。 Mview订阅用于跟踪数据库表的更改。

受影响的产品和版本

已将自定义代码应用于数据导出功能的Adobe Commerce实例(commerce-data-exportersaas-exporter)。 如果安装的SaaS Data Export版本为103.3.0或更高版本,并且代码直接引用catalog_data_exporter_products索引,则会发生此错误。

问题

商家可能会发现目录Data Exporter馈送表中缺少数据更新,并在cron作业日志中看到以下错误:

[2024-05-27T19:00:04.627604+00:00] report.ERROR: Cron Job indexer_clean_all_changelogs has an error: Table catalog_data_exporter_products_cl does not exist. Statistics: {"sum":0,"count":1,"realmem":0,"emalloc":0,"realmem_start":305135616,"emalloc_start":283210384} [] []

原因

由于Commerce Data Export 版本103.3.0发行版中的信息源表、索引和更改日志表中的名称更改,使用Commerce Data Export扩展名的自定义扩展中的Mview订阅可能无法正常工作。

在这种情况下,出现​ 表不存在 ​错误,因为catalog_data_exporter表名称已更改为cde_products_feed,并且您的自定义代码引用了Data Exporter Mview订阅中的旧名称。

解决方案

在自定义扩展中,编辑Mview配置文件(./etc/mview.xml)以将catalog_data_exporter_products表名更改为​ cde_products_feed

以下示例显示了用于指定Mview订阅所跟踪的表的代码:

<view id="cde_products_feed" class="Magento\CatalogDataExporter\Model\Indexer\ProductFeedIndexer" group="indexer">
     <subscriptions>
         <table name="custom_table" entity_column="product_id" />
     </subscriptions>
</view>

相关阅读

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a