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

我试图找出一个罕见的错误(爱那些间歇性的错误)的原因,客户select在结账时注册,但当订单完成后,Magento以某种方式不能保存客户logging。 这导致孤儿订单没有电子邮件地址,困难的客户服务情况。

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

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

思考:

  • 客户保存进度足够远以至于生成一个ID。
  • 在customer_save_after上有一个观察者正在导致保存的回滚?
  • 低级数据库错误导致保存失败。

有没有人有任何关于如何跟踪这个问题的build议?

版本是企业1.9。

我会添加很多额外的日志logging,尝试logging它足以捕获错误 – 并保存这些日志,如果可以检测到错误。

一旦你有日志显示错误,你可以更容易地隔离有问题的代码。

为此,您可能需要logging数据库查询,如果数据量较大和(或)受到隐私问题的影响,可能会非常棘手。