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

问题描述

| 我正在尝试查找导致客户在结帐时选择注册的罕见错误(喜欢那些间歇性错误)的原因,但是当订单完成时,Magento某种程度上无法保存客户记录。这导致没有电子邮件地址的孤立订单,导致客户服务困难。 这是我到目前为止的调查结果: adminhtml中的销售订单视图报告该客户是访客,电子邮件地址为空白。帐单和收货地址可见。
sales_flat_order
中的
customer_is_guest
为假
sales_flat_order
条目链接
sales_flat_order_address
中的有效记录。 “ 3”记录包含“ 5”和“ 6”的值,但是这些链接的记录不存在。 客户信息,订购的产品,付款方式中没有可识别的模式。 在system.log,exception.log,apache错误日志,var / reports或我知道的任何其他日志中没有相关的条目。 想法: 客户保存进度远远超过了生成ID的程度。 在customer_save_after上有一个观察者,导致保存的回滚? 底层数据库错误导致保存失败。 有人对如何进行追踪有任何建议吗? 版本是Enterprise 1.9。     

解决方法

我会添加很多额外的日志记录,尝试将其记录得足够好以捕获该错误-如果可以检测到该错误,则保存这些日志。 一旦拥有显示该错误的日志,便可以更轻松地隔离出问题代码。 为此,您可能需要记录数据库查询,但不幸的是,如果数据量很大和/或受到隐私保护,这可能会很棘手。