为什么Magento在生成ID后无法保存客户?

时间:2011-05-24 08:45:12

标签: php mysql magento

我试图找出一个罕见错误的原因(喜欢那些断断续续的错误),客户在结账时选择注册,但订单完成后,Magento无法保存客户记录。这导致孤立订单没有电子邮件地址,客户服务困难。

以下是我迄今为止的调查结果:

  • adminhtml中的销售订单视图报告客户是来宾,电子邮件地址为空。结算和送货地址可见。
  • {li> customer_is_guestsales_flat_order 中为false
  • sales_flat_order条目链接到sales_flat_order_address中的有效记录。
  • sales_flat_order_address记录包含customer_idcustomer_address_id的值,但这些链接的记录不存在。
  • 客户信息,订购产品,付款方式中没有明显的模式。
  • system.log,exception.log,apache错误日志,var / reports或我知道的任何其他日志中没有相关条目。

思考:

  • 客户保存进度远远超过生成ID。
  • 在customer_save_after上有一个观察者,导致回滚保存?
  • 低级别数据库错误导致保存失败。

有没有人对如何追踪这个有任何建议?

版本是Enterprise 1.9。

1 个答案:

答案 0 :(得分:2)

我会添加大量额外的日志记录,尝试将其记录得足以捕获错误 - 并在可以检测到错误时保存这些日志。

如果您有显示错误的日志,则可以更轻松地隔离有问题的代码。

为此,您可能需要记录数据库查询,如果数据量很大和/或受到隐私问题,这可能会很棘手。