Почему Magento не смог сохранить клиента после создания идентификатора?

Я пытаюсь отследить причину редкой ошибки (люблю эти прерывистые ошибки), когда клиент выбирает регистрацию во время проверки, но когда заказ завершен, Magento каким-то образом не может сохранить запись клиента. Это приводит к сиротскому заказу без адреса электронной почты, к сложной ситуации с обслуживанием клиентов.

Вот результаты моих исследований:

  • Просмотр заказа клиента в adminhtml сообщает, что клиент является Гостем, а адрес электронной почты пуст. Адреса биллинга и доставки видны.
  • customer_is_guest – false в sales_flat_order
  • Запись sales_flat_order ссылается на действительную запись в sales_flat_order_address .
  • В записи sales_flat_order_address содержатся значения для customer_id и customer_address_id однако эти связанные записи не существуют.
  • В информации о клиентах, заказах на продукцию, способах оплаты нет заметной картины.
  • В файлах system.log, exception.log, apache ошибок, var / reports или каких-либо других журналов, о которых я знаю, нет соответствующих записей.

Мысли:

  • сохранение клиента продвигается достаточно далеко, чтобы сформировать идентификатор.
  • есть наблюдатель на customer_save_after, который вызывает откат сохранения?
  • ошибка базы данных низкого уровня приводит к сбою сохранения.

Есть ли у кого-нибудь какие-либо предложения по отслеживанию этого?

Версия – Enterprise 1.9.

Я бы добавил много дополнительных протоколов, попробуйте записать его достаточно хорошо, чтобы захватить ошибку – и сохранить эти журналы, если ошибка может быть обнаружена.

Когда у вас есть журналы, которые показывают ошибку, вы можете более легко изолировать проблемный код.

Для этого вам может потребоваться зарегистрировать запросы к базе данных, что, к сожалению, может быть сложным, если объем данных высок и / или может быть подвержен конфиденциальности.