Update Shopware auf 6.1.4

Bekomme folgende Fehlermeldung beim Update. Auch ein wiederholter aufruf und löschen vom dummy file sorgt nicht für Auflösung.
Danke für eventuelle Hinweise

Please try to fix this error and restart the update.
Response
{„code“:0,„message“:„Unable to load migration Shopware\Core\Migration\Migration1580202210DefaultRule at path /var/web/vendor/shopware/core/Migration//Migration1580202210DefaultRule.php“,„file“:"/var/web/vendor/shopware/platform/src/Core/Framework/Migration/MigrationCollection.php",„line“:37,„trace“:"#0 /var/web/vendor/shopware/platform/src/Core/Framework/Migration/MigrationCollectionLoader.php(30): Shopware\Core\Framework\Migration\MigrationCollection->getMigrationCollection()\n#1 /var/web/vendor/shopware/recovery/Common/src/Steps/MigrationStep.php(41): Shopware\Core\Framework\Migration\MigrationCollectionLoader->syncMigrationCollection(‚Shopware\\Core\\M…‘)\n#2 /var/web/vendor/shopware/recovery/Update/src/Controller/BatchController.php(60): Shopware\Recovery\Common\Steps\MigrationStep->run(‚update‘, 0, 0)\n#3 /var/web/vendor/shopware/recovery/Update/src/app.php(81): Shopware\Recovery\Update\Controller\BatchController->applyMigrations(Object(Slim\Http\Request), Object(Slim\Http\Response))\n#4 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Array)\n#5 /var/web/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php(41): call_user_func(Object(Closure), Object(Slim\Http\Request), Object(Slim\Http\Response), Array)\n#6 /var/web/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Route.php(356): Slim\Handlers\Strategies\RequestResponse->__invoke(Object(Closure), Object(Slim\Http\Request), Object(Slim\Http\Response), Array)\n#7 /var/web/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\Route->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))\n#8 /var/web/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/Route.php(334): Slim\Route->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))\n#9 /var/web/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(515): Slim\Route->run(Object(Slim\Http\Request), Object(Slim\Http\Response))\n#10 /var/web/vendor/shopware/recovery/Update/src/app.php(60): Slim\App->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))\n#11 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))\n#12 /var/web/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/DeferredCallable.php(43): call_user_func_array(Object(Closure), Array)\n#13 [internal function]: Slim\DeferredCallable->__invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))\n#14 /var/web/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))\n#15 /var/web/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))\n#16 /var/web/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(405): Slim\App->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))\n#17 /var/web/vendor/shopware/recovery/Common/vendor/slim/slim/Slim/App.php(313): Slim\App->process(Object(Slim\Http\Request), Object(Slim\Http\Response))\n#18 /var/web/vendor/shopware/recovery/Update/index.php(36): Slim\App->run()\n#19 /var/web/public/recovery/update/index.php(6): require_once(’/var/www/client…’)\n#20 {main}"}
2 / 3 Database migration in progress…

Hallo SW-Community,

den selben Fehler hatte ich jetzt auch bei dem Update auf 6.1.6 gehabt. Ich hatte über die Shell das Update-ZIP heruntergeladen, entpackt und dann den Update Prozess über den Browser gestartet. Bis zu diesem Fehler.

Das gleiche ist noch bei einer Handvoll weiteren Migrations-Dateien passiert. Kurioserweise waren alle diese Dateien bereits in der Datenbank in der Tabelle migration eingetragen - und wurden für mein Verständnis - bereits ausgeführt. Ich habe mir die Änderungen aus den Dateien angeschaut und die dort enthaltenen ALTER TABLE usw. waren bereits in der verwendeten Datenbank eingespielt. Also wurden diese Migrationen bereits durchgeführt.

Da ich den Fehler nicht korrigieren konnte, habe ich dann einfach den update-assets Ordner und danach den Cache des Shops gelöscht. Der Shop war daraufhin wieder erreichbar und hatte im Backend auch die Version 6.1.6 eingestellt.

Leider fühlt es sich nicht so an, als wäre es definitiv geupdated.

  • Wie kann ich feststellen, dass auch wirklich die Version 6.1.6 eingespielt wurde und was hat es mit diesen Fehlern auf sich?
  • Ist es korrekt das bereits ausgeführte Migrationsdateien in der DB-Tabelle migration gespeichert werden?
  • Kann ich evtl. fehlende Migrationsdateien über „php bin/console database:migrate“ einspielen? Was ist da zu beachten (abgesehen vom Backup)?

Wäre nett wenn einer der Moderatoren hier kurz ein Statement zu abgeben könnte.

Danke und schönen Gruß

  • Die 6.1.6 hat keine eigene Migration, daher wist du das am DB stand nicht erkennen, es reicht wenn die Files ausgetauscht sind

  • Die Tabelle ist korrekt

 

Der Updater muss nur jede Migration einmal durchgehen und prüfen ob die schon im System sind. Das scheint bei dir fehlgeschlagen zu sein. Bei diesem Update sind es aber nur Dateien.

Ich hatte das auch nochmal beim Update auf die 6.1.5 und 6.1.6. Es wird immer wieder auf die selben Dateien hingewiesen wie bei gomeZ.

Eine Stellungnahme zu dem Fehler und der definitiven Behebung wäre toll. der Shop ist eine Professional Edition.

@timruether schrieb:

Ich hatte das auch nochmal beim Update auf die 6.1.5 und 6.1.6. Es wird immer wieder auf die selben Dateien hingewiesen wie bei gomeZ.

Eine Stellungnahme zu dem Fehler und der definitiven Behebung wäre toll. der Shop ist eine Professional Edition.

Müsste man sich im Detail ansehen, die reine Fehlermeldung bringt da sehr wenig.

Ich würde vorschlagen, du setzt die eine Kopie des Shops auf und lässt den Shop da in den Fehler laufen und schickst das über den Support rein. Dann können die Kollegen sich das auch ansehen. Scheint ja erstmal irgendwas System-Spezifisches zu sein. Wenn du eine Professional hast, ist das der einfachste Weg um sich das anzusehen.

 

Ansonsten bleibt nicht viel über als zu schauen ob die Datei /var/web/vendor/shopware/core/Migration//Migration1580202210DefaultRule.php vorhanden ist, die Schreib- und Leserechte passen usw. Wenn das alles da ist. muss man sich Codeseitig durch den Updater debuggen.

Ansonsten bleibt nicht viel über als zu schauen ob die Datei /var/web/vendor/shopware/core/Migration//Migration1580202210DefaultRule.php vorhanden ist, die Schreib- und Leserechte passen usw. Wenn das alles da ist. muss man sich Codeseitig durch den Updater debuggen.

Also bei mir war die Datei vorhanden und die Schreib- / Leserechte hatte ich auch nochmal geprüft und alles dem www-data zugeordnet. Das sollte hoffentlich passen @Moritz Naczenski. Ist es dann soweit richtig das in der Tabelle die bereits ausgeführten Migrationen vorhanden sind. Wie du schonvgesagt hast, wird ja jede Migration nur einmal ausgeführt. Daher war ich ja auch verwundet, dass er diese Datei (und einige weitere) nochmal aufruft und ausführen wollte.

Gut, dann bleibt ja nur das debuggen durch den Updater. Gibt es hier noch einen kleinen Tipp wo man am besten ansetzt oder wo gibt es Infos zu dem Zusammenspiel von migration Tabelle und Migrationsskripten.

Danke und Gruß
gomeZ