Shopware 6 – Addon-Deinstallation schlägt fehl, Backend nicht mehr erreichbar, Error 500

Screenahsot aus phpMyAdmin im Hintergrund, Shopware 6-Logo im Vordergund

Im Shopware 6-Shop eines Kunden wurde eine Staging-Erweiterung getestet. Ziel war es, schnell und mit Mausklick Staging-Umgebungen zu erstellen, in denen Shop-Updates oder Änderungen am Shop getestet werden können, ohne den Produktivshop zu gefährden. Leider stellte sich das Addon als unzureichend heraus und es gab Probleme, die auch mit dem Support nicht gelöst werden konnten.

Dummerweise meldete das Addon beim Versuch es zu deinstallieren und zu kündigen einen Fehler:

Internal Server Error

Attempted to load class "ProfileDefinition" from namespace 
"AddonName\Core\Content\Profile".
Did you forget a "use" statement for another namespace

Und danach meldete das Shopware-Backend auch nur noch einen Error 500 – das Frontend war weiter erreichbar.

{"errors":[{"code":"0","status":"500","title":"Internal 
Server Error","detail":
"The \u0022\/html\/shopware6\/custom\/plugins\/AddonName\/\/src\/Resources\/views\u0022 
directory does not exist 
(\u0022\/html\/shopware6\/custom\/plugins\/AddonName\/\/src\/Resources\/views\u0022)."}]}

Offenbar war das Addon nicht sauber entfernt worden, ein weiterer Hinweis, dass es nicht empfehlenswert ist, wenn sogar die Deinstallation fehlschlägt und es danach weiterhin nach seinen Pfaden sucht. Ich werde eine entsprechende Bewertung im Shopware 6-Addon-Shop verfassen.

Lösen konnte ich das Problem durch Deaktivieren des Addons in der Shopware-Datenbank. Die mit einem geeigneten Tool aufrufen (zum Beispiel phpMyAdmin) und

  • nach der Datenbanktabelle „plugin“ suchen.
  • In der Tabelle nach dem Namen des Addons suchen und den Eintrag bearbeiten
  • die Spalte „active“ auf „0“ setzen
  • Speichern

Das Backend ist wieder erreichbar. Auf keinen Fall den Plugin-Eintrag aus der Datenbank entfernen, vorerst nur den „active“-Wert ändern (weitere Arbeiten kann man bei Bedarf vornehmen, nachdem man wieder ins Backend kommt).

Kommentar: Ich habe Kenntnisse in mySQL, würde mich nicht als Highend-Crack bezeichnen, aber: Gerade bei einem Staging-Plugin, das ja eingesetzt wird, um Probleme zu umgehen oder rechtzeitig zu erkennen, finde ich es merkwürdig, dass ein Fremdschlüsselprüfung zu einem Fehlschlagen der Erzeugung der Staging-Umgebung führt. Man könnte ja auch einfach die Fremdschlüsselprüfung zeitweilig deaktivieren, wie es bei mySQL gängige Praxis ist, um solchen Problemen aus dem Weg zu gehen, und eine Warnmeldung anzeigen. Dass der Anbieter des Staging-Addons diesen Weg nicht geht, finde ich schwer nachvollziehbar.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen