Fehler bei den Updates 6.4.11. -6.4.15

Hallo zusammen ich hänge nun seit einiger zeit beim diesem fehler
er taucht bei mir seit dem update ab 6.4.11. auf egal was ich mache

kann mir einer hier bei helfen bzw. nen lösungsweg geben

Error

Received the following error message:
An exception occurred while executing ‚ALTER TABLE cart ADD auto_increment bigint NOT NULL AUTO_INCREMENT UNIQUE;‘: SQLSTATE[42S21]: Column already exists: 1060 Duplicate column name ‚auto_increment‘

Please try to fix this error and restart the update.

Response

{„valid“:false,„errorMsg“:„An exception occurred while executing ‚ALTER TABLE cart ADD auto_increment bigint NOT NULL AUTO_INCREMENT UNIQUE;‘:\n\nSQLSTATE[42S21]: Column already exists: 1060 Duplicate column name ‚auto_increment‘“}

6.4.15.0 scheint wieder problematisch zu sein…wir haben gestern Abend auch das Update von 6.4.14 auf 15 durchgeführt…bei uns nur Probleme…Backup, noch ein Versuch, wieder Mist, Backup…jetzt erst mal abwarten.

Was ich dir jedoch vorab empfehle: Immer die Updates durchführen. Der Sprung über mehrere Versionen ist immer anfälliger für Fehler…

Also ich bin gestern auch beim 6.4.14.0 auf 6.4.15.0 Update gescheitert.
system:update:finish konnte zum Abschluss nicht durchgeführt werden, weil der inzwischen nen String erwartet aber nicht bekommt. (Z.5 von src/HttpKernel.php).

Leider sieht man das im dry-run vorher nicht und kann sich so ne Instanz gänzlich abschießen.
Workaround: Den String casten.

Also in der src/HttpKernel.php aus
protected static $kernelClass = Kernel::class;
ein
protected static string $kernelClass = Kernel::class; machen
und den Konsolenbefehl system:update:finish nochmal drauf loslassen.

Die Blumen dafür bitte an Leon Weustermann :slightly_smiling_face:

Werde es heute in der Nacht mal ausprobieren :slight_smile: Wenn es klappt, hier schon mal ein Danke! :smiley:

ja deswegen sag ich es ja habe bei allen das problem einzeln als auch beim sprung der versionen das er den datenbank fehler schmeißt und ich einfach nicht weiß wie ich den weg bekomme

A LTER TABLE cart ADD auto_increment bigint NOT NULL AUTO_INCREMENT UNIQUE;

Der Patch hat es inzwischen(?) auch in die ReleaseNotes bei Github und den Changelog geschafft.

Lösung gefunden

Das Update schlägt fehl, da das Feld "auto_increment " in der "cart " Tabelle bereits vorhanden ist und dennoch angelegt werden soll. Dies kann passieren, wenn früher bereits ein Update durchgeführt wurde, dies aber nicht vollständig durchgelaufen ist.

Daher erstellen Sie bitte ein Backup der „cart“ Tabelle und löschen Sie dann die Spalte „auto_increment“. Führen Sie dies bitte zuerst in Ihrer Testumgebung durch. Das Backup der Tabelle können Sie wie folgt erstellen:

CREATE TABLE cart_tmp LIKE cart;
INSERT INTO `cart_tmp` SELECT * FROM `cart`;

Danach sollte die Fehlermeldung beim Update nicht mehr auftreten.