Updatefehler von 5.6.4 auf 5.6.6 in ArtikleLink.php on line 87

Hallo,

bei einem shopware update von 5.6.4 auf 5.6.6 kommt es zu folgendem Fehler:

Parse error: syntax error, unexpected ‚;‘, expecting identifier (T_STRING) or variable (T_VARIABLE) or ‚{‘ or ‚$‘ in /var/www/vhosts/hostermann.trude.hostkraft.de/httpdocs/var/cache/production_202003031106/doctrine/attributes/ArticleLink.php on line 87

Ergebnis ist, dass im Frontend der Wartungsmodus aktiv ist und ich nicht mehr ins Backend komme (hier steht dann ebenfalls der Wartungsmodus). Nach einiger Recherche habe ich den Ordner „httpdocs/files/update“ testweise umbenannt (statt löschen).
Ergebnis: Frontend und Backend waren wieder da.

ABER: im Backend kam es dann zu folgendem Fehler: Sobald ich einen Artikel aus der Übersicht aufrufe (Stift-Icon) kommt: internal Error 500. Alles andere scheint normal zu funktionieren.

Hat jemand eine Idee, wie ich hier zur Lösung vorgehen kann?

 

Vielen Dank im Voraus.

Alte PHP-Version im Einsatz? Vielleicht nicht alle Dateien sauber übertragen? Eventuell die 5.6.6 noch mal hochladen. Bei Error 500 auch mal in das Server PHP Log schauen ob dort noch weitere Hinweise stehen.

Hallo,

Danke für die Antwort. Die PHP Version hatte ich auch erst im Verdacht - hatte ich aber schon vor längerem umgestellt (ist 7.3.17).
Was meinst du mit “nicht alle Dateien sauber übertragen”? Bzw. gibt es eine Möglichkeit das zu prüfen? Im Backend scheint sonst alles zu funktionieren wie gewohnt (Kategorien, Eigenschaften, Shopseiten… alles editierbar. Nur eben nicht, wenn ich einen Artikel selbst bearbeiten will.)

Das Update habe ich bestimmt schon 3-4 mal durchgeführt (vorher wieder backup eingespielt). Allerdings mache ich das standardmäßig aus dem Backend über die Softwareaktualisierung. Ist eine andere Herangehensweise evtl. besser?

Beim Hoster habe ich im Error-Log folgendes gefunden: [ssl:warn] [pid 697] AH01909: RSA certificate configured for …:443 does NOT include an ID which matches the server name

(hattest du das mit Server PHP Log gemeint?) Die Meldung scheint mit dem SSL-Zertifikat zusammen zu hängen. Wüsste aber nicht, was nun zu tun ist (ist ein Standard Zertifikat).

Noch eine Idee?

 

Was meinst du mit “nicht alle Dateien sauber übertragen”?

Ja, wenn man z.B. das Update per FTP auf dem Server hoch lädt. Im Backend könnte man noch zusätzlich schauen ob die Dateien alle in Ordnung sind.
=> Einstellungen -> Systeminfo -> Shopware-Dateien

Versuche auch mal den Cache komplett zu lerren. Nach einem Update immer sinnvoll (hatte ich vergessen zu schreiben).

 

Die Shopware-Dateien habe ich überprüft: keine Fehler (alle Haken grün)

den Cache habe ich komplett gelöscht (über FTP die Inhalte der Ordner
cache/doctrine/proxies/
cache/doctrine/attributes/
cache/proxies/

gelöscht. Leider keine Besserung.

Dazu habe ich auch noch einmal das Backup wiederhergestellt und alle Plugins deinstalliert, um zu sehen, ob ein Plugin Schuld ist (obwohl alle als kompatibel markiert sind).
Dann das Update gemacht.
Ergebnis:

Fatal error: Uncaught PDOException: SQLSTATE[23000]: Integrity constraint violation: 1048 Column ‚element_id‘ cannot be null in /var/www/vhosts/ … /httpdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php:1056 Stack trace: #0 /var/www/vhosts/ … /httpdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/Connection.php(1056): PDOStatement->execute() #1 /var/www/vhosts/ … /httpdocs/engine/Shopware/Bundle/PluginInstallerBundle/Service/UniqueIdGenerator/UniqueIdGenerator.php(97): Doctrine\DBAL\Connection->executeUpdate(‚INSERT INTO s_c…‘, Array) #2 /var/www/vhosts/ … /httpdocs/engine/Shopware/Bundle/PluginInstallerBundle/Service/UniqueIdGenerator/UniqueIdGenerator.php(57): Shopware\Bundle\PluginInstallerBundle\Service\UniqueIdGenerator\UniqueIdGenerator->storeUniqueIdInDb(‚wezigDPJcdlIr2F…‘) #3 /var/www/vhosts/ … /httpdocs/engine/Shopware/Components/Theme/Compiler.php(413): Shopware\Bundle\PluginIns in /var/www/vhosts/ … /httpdocs/vendor/doctrine/dbal/lib/Doctrine/DBAL/DBALException.php on line 179

Ist das ein Datenbank-Fehler? Bin mir nicht sicher, ob das jetzt mit dem ursprünglichen Fehler zusammenhängt oder ein neuer ist, der u.U. durch fehlerhafte Übertragung des Backups passiert ist…

 

Noch eine Idee?

Ich vermute das kommt von einem Plugin. Leider ist nicht erkennrbar welches. Vielleicht ist ein Plugin nicht richtig deinstalliert. Die Fehlermeldung gibt es nicht all zuviel her.