Benutzerdefinierte Felder fehlen nach update
-
@aschild Die Migration ist bei uns auf dem Server in fast allen Fällen gut durchgelaufen. Wäre interessant zu wissen, welche Fehlermeldung bei der Migration angezeigt wurde.
Und noch zum überprüfen. Es gab noch deutlich mehr Migrationen mit der neuen Version. Wenn du sichergehen willst schaust du in die Datei
system/migration/db_updates.php
Ab Zeile 7137 (case '31999':
) siehst du alle Migrationen die mit der letzten Version laufen sollten. -
Das scheint die Ursache zu sein.
Gibt es Anforderungen bezüglich MySQL/MariaDB Version und/oder Tabellenformat?2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page. 2023-05-24 3:52:05 502570 [ERROR] InnoDB: Cannot add field `heimatort` in table `churchtools`.`cdb_person` because after adding it, the row size is 8885 which is greater than maximum allowed size (8126 bytes) for a record on index leaf page.
-
@aschild da hat sich jetzt kürzlich nichts geändert. Vermutlich ist folgendes passiert:
Ihr habt eigene Felder angelegt vor längerer Zeit die in der Tabelle cdb_gemeindeperson angelegt wurden. Das war dann mit einer anderen MySQL Version die hier andere Limits hatte. Heute scheint das Limit hier anders zu sein. Vielleicht auch weil sich die Collation geändert hat und VARCHAR kann nicht mehr ganz so lange sein.
-
-
@davidschilling Ein Test den du machen kannst um zu überprüfen ob die Updates funktioniert haben ist folgende Tabellen zu überprüfen:
- cdb_gemeindeperson_gruppe
- cdb_gemeindeperson_gruppe_archive
- cdb_gruppentreffen_gemeindeperson
- cdb_gemeindeperson_tag
In diesen Tabellen sollte es jetzt eine Spalte
person_id
geben und keine Spaltegemeindeperson_id
. -
@davidschilling Die sehen alle gut aus, es schient wirklich nur die Felder nicht migrgiert zu haben.
Welches Zeilenformat sollten die Tabellen haben?
Ich vermute "dynamic" oder? -
Die Gruppenzuweisungen haben das Update auch nicht überlebt...
Zusammen mit den Berechtigungen via GruppenIn der Tabelle cdb_gemeindeperson_gruppe habe ich die neue person_id Spalte, aber die Wetre sind alle 0.
Die gemeindeperson_id spalte existiert aber noch, von da her kann ich die Daten dort übernehmen.Bei cdb_gemeindeperson_gruppe_archiv, cdg_gruppentreffen_gemeindeperson fehlt die gemeindeperson_id spalte, aber die person_id ist dort überall 0
Und in cdb_gemeindeperson_tag habe ich auch nur die person_id, aber keine Datensätze, wobei wir das vermutlich nicht gebraucht haben
-
@aschild Dann würde ich dir vorschlagen das Backup von davor einzuspielen und das Update danach nochmal neu zu machen. Davor kannst du ja schonmal die Länge der Felder in der cdb_gemeindeperson Tabelle anpassen, sodass es beim Update den Fehler nicht mehr gibt.
Beim ersten Aufruf von CT wird das Update ja ausgeführt, so kannst du dann auch die Fehlermeldungen sehen die es beim Update gibt.
-
@davidschilling Ja, habe soeben ein Restore der DB+CT gemacht und läuft es wie "gestern"
Ursache scheint das row_format Compact zu sein, welches Probleme machen kann wenn man mehr/breitere Felder hinzufügen will.
Ich habe alle Tabellen jetzt mit Dynamic Rowformmat erstellen lassen und werde in den nächsten Tagen nochmals ein Update versuchen. -
So,
heute habe ich das Update noch einmal gewagt.
Nachdem ich die DB komplett exportiert und dann im Rowformat Dynamic importiert hatte ging alles sauber durch
Danke