Pim-community-dev: 2.1.8:使用 CLI 导入产品时,键“searchunique_idx”的重复条目

创建于 2018-04-06  ·  3评论  ·  资料来源: akeneo/pim-community-dev

当我使用命令行在 Akeneo 中导入仅包含 SKU 和图像列的提要时,导入失败并显示以下命令:

[2018-04-06 15:35:24] batch.ERROR: Encountered an error executing the step: 
An exception occurred while executing 'INSERT INTO pim_catalog_completeness 
(ratio, missing_count, required_count, locale_id, channel_id, product_id) VALUES (?, ?, ?, ?, ?, ?)'
with params [100, 0, 1, 39, 1, 4404]:  
SQLSTATE[23000]: Integrity constraint violation: 
1062 Duplicate entry '1-39-4404' for key 'searchunique_idx' [] []

有谁知道可能导致此问题的原因? 或者我该如何解决? 奇怪的是,密钥表明该表中的我的数据库中还会有一个 ID 为 4404 的产品,但没有。

更新:在进一步检查中,我注意到客户端上传的文件多次出现相同的 SKU。 这可能是这个问题的原因吗? 这些事情是在一个事务中完成的吗? (这可以解释为什么我在数据库中找不到冲突的 ID)。

最有用的评论

我在 2 个场景中遇到过这个问题。

重复导入数据
您的建议是正确的:当您的导入文件中有同一个 sku 的多个实例时,您会收到此错误。

弹性搜索索引保存已删除的产品数据
我遇到此问题的另一种情况是,elasticsearch 在其索引中保留了已删除产品的记录,并且以某种方式“提供”了在导入产品模型后运行的完整性脚本。
这要么是由于删除了产品模型,之后 Akeneo 没有删除底层产品变体的所有 ES 数据,要么是因为我从数据库中手动删除了一条记录。
我不完全确定两者中的哪一个导致它,但它可能是第二种情况,然后这是我自己的错。

但是调试起来非常困难,因为我在数据库中的任何地方都找不到这些产品的任何重复记录,也无法导入文件。

解决方案:
从命令行,抛出所有 ES 索引:
bin/console akeneo:elasticsearch:reset-indexes
然后重建:
bin/console pim:product:index --all
bin/console pim:product-model:index --all

所有3条评论

我在 2 个场景中遇到过这个问题。

重复导入数据
您的建议是正确的:当您的导入文件中有同一个 sku 的多个实例时,您会收到此错误。

弹性搜索索引保存已删除的产品数据
我遇到此问题的另一种情况是,elasticsearch 在其索引中保留了已删除产品的记录,并且以某种方式“提供”了在导入产品模型后运行的完整性脚本。
这要么是由于删除了产品模型,之后 Akeneo 没有删除底层产品变体的所有 ES 数据,要么是因为我从数据库中手动删除了一条记录。
我不完全确定两者中的哪一个导致它,但它可能是第二种情况,然后这是我自己的错。

但是调试起来非常困难,因为我在数据库中的任何地方都找不到这些产品的任何重复记录,也无法导入文件。

解决方案:
从命令行,抛出所有 ES 索引:
bin/console akeneo:elasticsearch:reset-indexes
然后重建:
bin/console pim:product:index --all
bin/console pim:product-model:index --all

遇到了同样的问题。 @wigman提供的解决方案帮助了我。 谢谢
问题是通过将数据库从一个环境复制到另一个环境而发生的,索引肯定不一样。

@wigman建议的解决方案仅适用于拥有几千种产品的小商店。
命令bin/console akeneo:elasticsearch:reset-indexes会从索引中删除所有内容,然后您必须等待一段时间才能恢复数据。 如果您有 150k+ 产品型号和 1kk+ 产品,则不是一个选择,因为重新索引可能需要长达 4 小时。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

henryktews picture henryktews  ·  4评论

peleq-smile picture peleq-smile  ·  4评论

gotgelf picture gotgelf  ·  5评论

lpxavi picture lpxavi  ·  4评论

ronthedrummer picture ronthedrummer  ·  3评论