Fehler bei Migration Shopware 6.5 -> 6.6.10.4

Hallo zusammen,

ich habe zwei notices bei der Migration (console system:update:finish):

14:02:40 NOTICE    [app] Migration "Shopware\Core\Migration\V6_4\Migration1674200008UpdateOrderViewerRolePrivileges" does not exist. Ignoring it
14:02:40 NOTICE    [app] Migration "Shopware\Core\Migration\V6_4\Migration1675827655UpdateVATPatternForCyprusCountry" does not exist. Ignoring it

Ich habe nach den beiden Dateien gesucht, die Migration1674200008UpdateOrderViewerRolePrivileges findet sich in vendor/shopware/core/Migration/V6_5/ (statt in V6_4), die Migration1675827655UpdateVATPatternForCyprusCountry findet sich gar nicht - auch Google brachte keine Ergebnisse.

Wie ist damit umzugehen? Mir ist klar, dass das wohl nicht dramatisch ist, aber ich hatte das System trotzdem gerne „schick“.

Danke,
Sebastian

1 „Gefällt mir“

Da hat sich wohl der Zeitstempel geändert:

Kannst du nachträglich, manuell per SQL ausführen.

Hallo,

vielen Dank für´s Feedback. Ich würde jetzt die beiden Scripte runterladen, ins Dateisystem legen und die Tabelle migrations so anpassen, dass ich die alten Datensätze für die neuen Scripte anpasse. Die Migration1674200008UpdateOrderViewerRolePrivileges.php macht ja offensichtlich kein SQL Update, sondern etwas anderes.

Korrekt so?

lg
Sebastian

Du könntest auch ein eigenes Plugin erstellen, den Inhalt der Migrations dort rein kopieren und dann das Plugin installieren.

Gibt aber auch ein Symfony Befehl um Migrations direkt auszuführen. Dazu bitte in der Doku selbst nachsehen, nutze das auch nur selten.

Hi Sebastian,

das Verhalten ist tatsächlich normal und kommt bei Major-Updates häufiger vor.
Shopware hat in neueren Versionen einige Migrations verschoben oder entfernt — dabei bleiben aber in der Migrations-Tabelle noch alte Einträge bzw. Referenzen übrig (z.B. aus vorherigen Plugin-Installationen oder aus dem Core selbst).

Die Log-Ausgabe „Migration XYZ does not exist. Ignoring it.“ ist in dem Fall rein informativ. Solange keine Fehler oder Abbrüche bei der Migration auftreten und bin/console database:migrate erfolgreich durchläuft, ist dein System technisch in Ordnung.

Dass die eine Migration jetzt in V6_5 liegt und die andere scheinbar entfernt wurde, ist soweit bekannt und sollte keine Probleme verursachen.

Wenn du es wirklich „schick“ haben willst und die NOTICE-Einträge stören, könntest du die betroffenen Migrations-IDs aus der Tabelle migration (bzw. migration-Tabelle in der DB) manuell bereinigen.
Aber Vorsicht: Nur machen, wenn du genau weißt, was du tust und vorher ein Backup machst. In 99% der Fälle lohnt sich der Aufwand nicht.

TL;DR: Alles okay, kannst du so lassen.

Viele Grüße

1 „Gefällt mir“

Hallo,

ich habe mir die Inhalte der migration Tabelle einmal angesehen und festgestellt, dass beide Migrationen zweimal enthalten waren - einmal unter V6_4 und einmal unter V6_5. Aufgrunddessen und aufgrund eurer Antworten habe ich die beiden mit V6_4 einzeln gelöscht.
Auch wenn es nicht wirklich erforderlich gewesen wäre - jetzt läuft das system:update:finish ohne weitere Meldungen durch - und man wundert sich das nächste Mal nicht erneut :-).

Vielen Dank für eure Hilfe
Sebastian