Zwei Minor-Updates, die sich wie ein Major anfühlten - Ein Shopware-Update von 6.5.6.0 auf 6.7.2.2
In einem aktuellen Projekt stand ein großes Versions-Update an: Start: 6.5.6.0 → Ziel: 6.7.2.2 - mit Zwischenstopp bei 6.6.10.6.
Ein Versionssprung über zwei Minor-Releases klingt erstmal machbar, war in der Praxis aber eine echte Knochenarbeit - vor allem für die Datenbank.
Stolperstein 1: Keine Bilder im Shop
Nach dem Update war die Storefront leer, alle Bilder fehlten.
Zum Glück kannten wir das Problem schon vom Testserver und waren vorbereitet. Die Lösung bestand aus einer Konfigurationszeile und zwei Befehlen:
SHOPWARE_CDN_STRATEGY_DEFAULT=physical_filename(in der .env.local-Datei)bin/console media:update-path --forcebin/console media:generate-thumbnails
Danach war alles wieder sichtbar.
Stolperstein 2: Frontend & Admin kaum erreichbar
Unmittelbar nach dem Update war der Shop nur sehr träge oder gar nicht erreichbar, sowohl im Frontend als auch im Admin.
Was die Sache zusätzlich verwirrend gemacht hat: Der Host antwortete bei unseren Verbindungsversuchen (traceroute) mit !X – das steht für “Communication administratively prohibited”. Es sah also so aus, als würde eine Firewall oder Serverregel den Zugriff blockieren.
In Wirklichkeit war die Datenbank schlicht durch die vielen Migrationen und Änderungen vollständig ausgelastet - hier halfen nur Vertrauen und Geduld.
Ob da gerade zusätzlich jemand auf der Hostmaschine heimlich Bitcoins geschürft hat oder der Server einfach einen schlechten Tag hatte, wer weiß. Merkwürdig war es auf jeden Fall, denn bei den Testläufen lief alles völlig unauffällig.
In der Nachbetrachtung empfahl der Hoster einen PHP-Restart, das wäre in so einem Fall die schnelle Option, wenn gar nichts mehr geht. Vermutlich kam es zu Race Conditions: PHP-Prozesse blockierten sich gegenseitig, bis keine neuen mehr gestartet werden konnten. Wenn man sieht, dass die Datenbank keine Aktivität mehr zeigt und sonst nichts mehr arbeitet, kann man den Restart auch relativ gefahrlos durchführen.
Fazit
Das Update ist durch, der Shop läuft stabil.
Für die Zukunft nehmen wir mit: Lieber häufiger kleinere Updates als ein großer Versionssprung auf einmal - das schont Nerven, Server und Support.
Was läuft sonst gerade? Weitere laufende Themen ansehen