Mit der Migration fangen alle UUIDs an mit: 019155…
In einer anderen Installation gibt es vordefinierte mit: 0191668…
Wie wurden die erstellt?
Ich würde gern wissen, wie man bei der Migration von 5 auf 6 die gleichen UUIDs matcht falls man die Migration mehrfach ausführt.
Welches Muster haben die Shopware UUIDs um sie selbst nachzustellen?
Die Lösung alles mit md5() zu hashen ist nicht richtig sicher und ich suche einen Weg UUIDs zu nutzen wie es Shopware macht.
das ist leider nicht die Antwort die ich gesucht habe, Aber ich habe was anderes rausgefunden:
Die ersten 8 Zeichen sind die Zeit welche in Millisekunden (ge"hex"t) Vergangen ist seit „2019-01-01 00:00:00“.
Also die Differenz zwischen dem Datenbankeintrag „created_at“ und dem „2019-01-01 00:00:00“. Nettes UUIDv7-Easteregg von @Shopware, Milliseconds since Epoch = SW6 Zeitalter
Jetzt müsste ich noch wissen ob die folgenden Werte tatsächlich random sind?
In eigenen Migrations-Tools habe ich „Shopware\Core\Framework\Uuid\Uuid“ benutzt. Im Script dann „Uuid::randomHex()“ benutzt. Keine Ahnung ob dir das weiterhilft.
Die Daten werden in der Tabelle swag_migration_mapping gespeichert (alte ID, neue ID, Entity, Hash der Daten), damit bei mehrfacher Migration die bereits vorhandenen Daten erkannt werden und nur bei Änderungen an der Quelle erneut migriert werden.