Moin,
hatte den gleich Fehler, der mit der Aktualisierung von Jverein aufgetreten ist.
Weiss nicht mehr genau von welcher Version ich gekommen bin, aber die Version 2.8.18 hat den Fehler geworfen.
Das Problem kann auch unabhängig von JVerein sein, weil die H2 Bibliotheken von Jameica kommen. Habe das Upgrade von 2.6 auf 2.8 gleichzeitig durchgefuehrt.
Das Upgrade der Bibliothek hat auch zur Folge, dass die Daten jetzt nicht mehr in jverein.h2.db sondern in jverein.mv.db gespeichert werden. Wer weiter nur die alte Datei sichert, sollte das fixen
Um das Problem zu fixen ist ein Upgrade der Datenbank noetig, dass man manuell machen muss.
Es ist hier beschrieben.
https://h2database.com/html/tutorial.ht ... up_restore
Den Export muss man mit einer H2 Version <= 1.4.196 machen, die nicht mehr direkt runter zu laden ist, aber noch auf dem Server verfuegbar, wenn man das Releasedatum kennt:
https://codeload.github.com/h2database/ ... on-1.4.196
Den import macht man dann mit einer aktuellen Version.
Hier noch die Kommando-Zeilen dafuer (den Pfand zur jverein.h2.db ohne die beiden Endungen angeben, sonst bekommt man wirre Fehlermeldungen):
Backup
Code: Alles auswählen
java -cp ~/Downloads/h2-1.4.196/bin/h2-1.4.196.jar org.h2.tools.Script -url "jdbc:h2:./jverein" -user "jverein" -password "jverein" -script "./backup.sql"
und dann der Restore, auch wenn das Ergebnis eine jverin.mv.db ist, muss man die jverein.h2.db aus dem Weg raeumen, sonst laueft man in den gleichen Fehler:
Code: Alles auswählen
java -cp ~/Downloads/h2/bin/h2-1.4.199.jar org.h2.tools.RunScript -url "jdbc:h2:./jverein" -user "jverein" -password "jverein" -script "./backup.sql"
Man kann auch mit dem Kommando:
Code: Alles auswählen
java -cp ~/Downloads/h2/bin/h2-1.4.199.jar org.h2.tools.RunScript -url "jdbc:h2:./jverein;MV_STORE=FALSE" -user "jverein" -password "jverein" -script "./backup.sql"
wieder eine h2.db schreiben.
Ich hoffe, das hilft jemandem seine Vereins DB wieder herzustellen.
So richtig war die Fehlermeldung nicht zu sehen. Nach dem Upgrade war einfach die Jverein DB leer.
Gruesse
Thomas