Nach Update von 6.4.11 auf 6.4.12 oder 6.4.13 erzeugt die Installation eines Plugins einen Server Error 500

Wir haben die Instanz von 6.4.11 auf 6.4.13 (und später zur Kontrolle auch noch einmal von 6.4.11 auf 6.4.12) aktualisiert. Alle Plugins sind kompatibel. Wir hatten das Update auch vorher auf einer Staging-Umgebung getestet. Und so funktionierte nach dem Update in der Produktivumgebung auch alles völlig normal.

Wenn wir aber ein beliebiges Plugins installieren (das einzige, was wir nicht getestet hatten), erscheint im Frontend der beliebte Server Error 500. Das jeweils betreffende Plugin ist noch nicht einmal aktiviert. Und auch die Deinstallation des Plugins hilft nicht mehr. Wir haben dann das Backup mit der Version 6.4.11 wieder eingespielt und nochmals die betreffenden Plugins installiert und das Laden des Frontends funktionierte wieder problemlos.

Der Blick in die Logdatei aus dem Verzeichnis var/log hilft mir zumindest nicht weiter. Vielleicht hat ja jemand eine Idee oder schon Erfahrungen mit dem Phänomen gesammelt. Ein Ticket hatte ich schon eröffnet (Shopware Issuetracker). Dort liegt auch die Logdatei.

Ein Plugin muss nicht aktiviert sein, um das System lahmlegen zu können. Es reicht unter Umständen, wenn es installiert ist. Diese Fall tritt aber nur ein, wenn alle Plugins geprüft werden, bspw. plugin:refresh.

Im Frontend hatte ich bisher nur, dass im Cache noch Daten des Plugins gespeichert waren, obwohl deaktiviert und der Fehler dadurch zustande kam.

Ich habe nun alle Plugins einschl. Theme vollständig deinstalliert und das Update nochmals von 6.4.11 auf 6.4.12 und zur Sicherheit auch einmal auf 6.4.14 durchgeführt. Wie oben schon beschrieben lief die Instanz zunächst fehlerfrei , bis ich das erste Plugin installierte. Das Debugging hat die folgende Meldung ergeben:

Uncaught PHP Exception Doctrine\DBAL\Exception\InvalidFieldNameException: "An exception occurred while executing 'SELECT LOWER(HEX(rc.rule_id)) as array_key, rc., rs.script, rs.identifier, rs.updated_at as lastModified*

FROM rule_condition rc
LEFT JOIN app_script_condition rs ON rc.script_id = rs.id AND rs.active = 1
WHERE rc.rule_id IN (?, ?, ?, ?, ?, ?)
ORDER BY rc.rule_id’ with params [„\x28\xe7\x90\x9d\x98\x81\x4c\x43\xbb\x55\xce\xf9\xba\x74\x08\x46“, „\x40\xc2\x54\x5f\x8c\x63\x4c\xba\x80\x3a\x84\x38\x76\x05\xc2\x1e“, „\xd1\xda\x23\xde\xcf\x1d\x46\x0c\x95\xbf\x5b\xd5\xab\xdb\xd4\xae“, „\xf5\xeb\x22\xd7\x92\x5c\x49\x32\x95\x73\xdd\x19\x4b\x74\xf5\x83“, „\x94\x16\x57\xad\xcd\x62\x4e\x99\x87\x90\xec\x00\xa6\x50\xe9\xbe“, „\xe8\x74\xaa\x5d\xb6\x13\x48\x25\xbb\x85\xec\x49\xe9\x80\x04\x34“]:

SQLSTATE[42S22]: Column not found: 1054 Unknown column ‚rc.script_id‘ in ‚on clause‘" at /var/www/vhosts/hosting154071.a2ed9.netcup.net/dev-sw-mingbud/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php line 79

Bin wirklich für jeden Hinweis dankbar!!!