Hallo,
ich wollte das SW Update 6.3.5.1 => 6.3.5.2 installieren, und vorher deaktiviere ich wie empfohlen immer alle Plugins (bis auf unser Theme). Sowohl das Deaktivieren als auch das spätere Aktivieren dauert bei ca. 30 Plugins eine gefühlte Ewigkeit (mind 1h).
Dabei ist es egal ob ich das per Administration > Einstellungen > Plugins mache, oder per Kommandozeile, selbst wenn ich mehrere in einem Befehl deaktiviere, wird wohl jedesmal Cache geleert und alles neu kompiliert (vermute ich):
bin/console plugin:deactivate Plugin1 Plugin2 Plugin3 …
Ist das normal?
Kann ich das Cache erneuern aushebeln und stattdessen einmal am Ende machen?
Ja, SW hat mir den Tipp gegeben, Plugins per Datenbank-Query zu deaktivieren und im Anschluss einmal den Cache zu leeren. Da sollte man aber aufpassen dass man nicht wirklich alle deaktiviert, bei uns wäre z.B. eine Deaktivierung von Shopware-eigenen Plugins problematisch. Daher sichere ich mir den aktuellen Stand der Plugins in einer temporären Tabelle und stelle diesen am Ende wieder her:
DROP TABLE if EXISTS plugin_tmp;
CREATE TABLE plugin_tmp LIKE plugin;
INSERT INTO `plugin_tmp` SELECT * FROM `plugin`;
-- Alle Plugins deaktivieren außer Shopware-eigene:
UPDATE `plugin` SET `active`= 0 WHERE name NOT LIKE 'swag%';
-- Cache leeren...
An dieser Stelle spiele ich z.B. ein Shopware Update ein.
-- Plugins wieder aktivieren, alten Stand wiederherstellen:
UPDATE plugin AS p JOIN plugin_tmp AS pt ON p.id = pt.id SET p.active = pt.active;
-- Cache leeren...
Falls Plugins Aktivierungs-/Deaktivierungs-Methoden haben, was sehr selten der Fall ist, dann kann man mit dieser Variante ziemlich auf die Nase fallen.
Naja, solange man später wieder alles aktiviert vermutlich nicht ganz so dramatisch. Aber ja, denkbar wäre z.B. eine Routine die für eine neuere Shopware-Version etwas macht, für eine ältere aber nicht. In so einem Fall würde das bei einem SW-Update auf die Nase fallen.
Auf der anderen Seite ist das Vorgehen von SW sogar dokumentiert: Shopware 6 - Tutorials & FAQs - SQL Tipps & Tricks
Und was bleibt einem denn übrig, wenn das systemseitig nicht schneller zu handeln ist? Man hat ja schließlich nicht immer 1h Zeit für solche Klick-Warte-Spielchen.