Upgrade auf Jambeica. 2.12.x mit Linux/nixos führt zu DB Fehlern

derjohn

Betreff:

Upgrade auf Jambeica. 2.12.x mit Linux/nixos führt zu DB Fehlern

 ·  Gepostet: Gestern um 15:42 Uhr  ·  #184564
Hallo,
vielleicht kann jemand mit Detail-Java Kenntissen ein Idee, es git mit der Version, die von nixos (nicht von Olaf) eine Issue:

https://github.com/NixOS/nixpk…3776650355

Ich habe mich da reingegraben und bin zu folgende Ergebnis gekommen:

If I start jameica packages 2.12.0 packaged with nixos it creates a "mv" file .jameica//hibiscus/h2db/hibiscus.mv.db , which is a MVStore Backend for H2 DB. The file is rather small (30 KB), while the non-MV file .jameica//hibiscus/h2db/hibiscus.db is something like 30MB in my case.

Furthermore the .jameica/cfg/de.willuhn.jameica.hbci.rmi.HBCIDBService.properties get a property called database.driver.h2.encryption.algorithm=AES .

The behavior is different if I use the willuhn upstream version. I suspect there is an unwanted collateral DB migration happening, maybe with a wrong DB format or with a wrong encryption format. And that mayy have to do with different Java libs for H2 ....

Vielleicht hat ja jemand einen Tipp für mich?

Beste Grüße,
derjohn_himself

hibiscus

Betreff:

Re: Upgrade auf Jambeica. 2.12.x mit Linux/nixos führt zu DB Fehlern

 ·  Gepostet: Gestern um 18:48 Uhr  ·  #184570
Kann es sein, dass da nicht die bei Jameica beiliegende h2-Version verwendet wird? In Jameica ist nicht ohne Grund die veraltete Version 1.4.199 enthalten. Mit 2.0 (und später in 2.3 nochmal) wurde das Dateiformat von H2 nicht-abwärtskompatibel geändert. In dem Zusammenhang wurde auch die Dateiendung der Datenbank geändert.

Effekt: Beim Start mit der neuen H2-Version wird automatisch eine neue leere Datenbank erstellt. Jameica teilt dem Hibiscus-Plugin aber mit, dass es vor dem Update bereits installiert war und daher bereits eine befüllte Datenbank existieren sollte. Hibiscus überspringt daraufhin die initiale Erzeugung der SQL-Tabellen, wundert sich dann aber, dass die Tabelle "VERSION" nicht existiert. Die ja eigentlich zusammen mit allen anderen Tabellen bereits vorhanden sein sollten.

Das Jameica-Paket muss so geändert werden, dass es weiterhin die h2-Version enthält, die auch bei den Downloads auf meiner Webseite enthalten ist. H2 kann leider nicht einfach so aktualisiert werden, weil es keinen automatisierbaren Migrationsweg auf die neuen DB-Versionen gibt.