Устранение сбоя «Notice: Undefined offset (index) in Mage/Catalog/Model/Resource/Category/Flat.php»

[10 ноября 2016 г.]    Российская сборка Magento 2.49.12
Magento 2: модули и услуги
#1 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

08.10.2014 17:59

Описание сбоя:
  • Сбойные версии: сбою подвержены все версии Magento Community Edition и Magento Enterprise Edition.
  • Место сбоя: сбой может случиться при любой административной операции, которая обновляет товарные разделы: при перестройке расчсётных таблиц, при установке и обновлении модулей, при редактировании товарных разделов.
  • Описание сбоя:
    На экране появляется сообщение «Notice: Undefined offset in Mage/Catalog/Model/Resource/Category/Flat.php» или «Notice: Undefined index in Mage/Catalog/Model/Resource/Category/Flat.php».
    Конкретная строка сбоя зависит от используемой версии Magento Community Edition или Magento Enterprise Edition.
  • Причина сбоя:
    Причиной сбоя является повреждение базы данных интернет-магазина некорректными ручными правками администратором либо некорректными автоматическими правками базы данных некачественными сторонними модулями.
    Magento Community Edition и Magento Enterprise Edition неспособны продолжать работу при подобном повреждении базы данных и поэтому завершают работу сбойно. Сами по себе Magento Community Edition и Magento Enterprise Edition не виноваты, однако в устранении сбоя никак не помогают, выдавая на экран непонятное сообщение, при котором далеко не очевидно, что делать дальше.
  • Описание сбоя в других источниках:
    сбой широко описан в других источниках:
    Notice: Undefined offset (index) in Mage/Catalog/Model/Resource/Category/Flat.php
    Полезных рекомендаций по устранению сбоя там нет.

Способ устранения сбоя:
Российская сборка Magento, начиная с версии 2.39.1, обладает способностью самодиагностики и самовосстановления в ситуациях, когда база данных интернет-магазина повреждёна некорректными ручными правками или работой некорректных модулей.
Вместо непонятного диагностического сообщения, которое пишут Magento Community Edition и Magento Enterprise Edition, Российская сборка Magento даёт администратору конкретные рекомендации для восстановления базы данных и тем самым значительно экономит Вам время и деньги.
Эти рекомендации могут быть разными и зависят от конкретной ситуации.
Например, рекомендация может быть такой:

Цитата

База данных интернет-магазина повреждена некорректными правками администратора либо некорректными действиями некоего некачественного стороннего модуля.
Из базы данных было некорректно удалено некое свойство товарного раздела с идентификатором «180».
Для восстановления базы данных интернет-магазина Вам надо теперь вручную удалить из таблицы catalog_category_entity_int базы данных оставшуюся там информацию данного товарного свойства.
Для этого надо выполнить следующий запрос SQL:
DELETE FROM catalog_category_entity_int WHERE '180' = attribute_id;


Поделиться темой: