Ein seltsames Phänomen tauchte heute in einem von mir betreuten Magento-Shop auf. In der Kategoriezuordnung eines Artikels war der Kategoriebaum unvollständig. Der Fehler war dank StackOverflow schnell gefunden.
Das Problem bestand darin, dass die Tabelle catalog_category_entity in der Spalte children_count falsche Werte enthielt. Finden sich dort negative Werte, so ist scheinbar in einem Prozess der durch Drag&Drop im Kategoriebaum angestossen wird etwas schief gelaufen. Die Zahlen für die Spalte children_count lassen sich zum Glück durch eine SQL-Query schnell korrigieren (Backup trotzdem nicht vergessen!):
1 2 3 4 |
UPDATE catalog_category_entity cce1 INNER JOIN (SELECT parent_id, count(entity_id) childcount FROM catalog_category_entity GROUP BY parent_id) cce2 ON cce1.entity_id = cce2.parent_id SET cce1.children_count = cce2.childcount; |
Der Fehler scheint sich durch sämtliche Magento 1 Versionen von 1.5 bis 1.9 zu ziehen.