我正在寻找任何想法来解释(和防止)以下内容:
1)我们有一个 Magento 重新索引过程(价格或股票),但不时失败:
异常“Zend_Db_Statement_Exception”和消息“SQLSTATE [23000]:完整性约束违规:1062 /[省略]/lib/Zend/Db/Statement/Pdo.php 中键“PRIMARY”的重复条目“512723-1-1”: 242
完整跟踪:https ://gist.github.com/werdan/5255362
2) Magento reindex 是在事务中完成的,大致如下:
START TRANSACTION;
DELETE FROM `cataloginventory_stock_status`;
INSERT INTO cataloginventory_stock_status SELECT * FROM cataloginventory_stock_status_idx;
COMMIT;
3) 在 DELETE 和 INSERT 命令之间破坏表的一致性应该是不可能的,但是它发生了。
我们检查了表 cataloginventory_stock_status 和 cataloginventory_stock_status_idx 具有相同的键和结构。
还有什么可以作为解释和解决方案的建议?