Plugin "hibiscus" kann nicht initialisiert werden

Datenbankfehler nach Import

 
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 11
Dabei seit: 02 / 2007
Betreff:

Plugin "hibiscus" kann nicht initialisiert werden

 · 
Gepostet: 21.11.2007 - 09:03 Uhr  ·  #1
Guten Morgen,

gestern habe ich Kontoumsätze eines Kontos importiert (allerdings > 1500 Datensätze). Der Import wurde immer langsamer, d.h. in der Fortschrittsanzeige vielleicht nur noch alle 5-10 sec ein Datensatz. Dann kam es wie es kommen musste, Stromausfall.
Sicherlich ist jetzt die Datenbank zerschossen. Da ich aber bei anderen Konten mühselig schon etliche Kategorien zugeordnet habe, suche ich nach einer Möglichlichkeit die DB zu reparieren.

Systemversion: Mac OS X 10.4.10 (8R2232)
Kernel-Version: Darwin 8.10.1
java version "1.5.0_07"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_07-164)

Fehlermeldung: Plugin "hibiscus" kann nicht initialisiert werden. Fehler beim Initialisieren der Datenbank

System Nachricht:
Code
unable to init plugin  hibiscus
de.willuhn.util.ApplicationException: Fehler beim Initialisieren der Datenbank
  at de.willuhn.jameica.hbci.HBCI.call(HBCI.java:281)
  at de.willuhn.jameica.hbci.HBCI.init(HBCI.java:91)
  at de.willuhn.jameica.plugin.PluginLoader.initPlugin(PluginLoader.java:260)
  at de.willuhn.jameica.plugin.PluginLoader.init(PluginLoader.java:148)
  at de.willuhn.jameica.system.Application.getPluginLoader(Application.java:393)
  at de.willuhn.jameica.system.Application.init(Application.java:236)
  at de.willuhn.jameica.system.Application.newInstance(Application.java:93)
  at de.willuhn.jameica.Main.main(Main.java:78)
Caused by: java.lang.RuntimeException: IO Error: File corrupt: last_area_pointer at the end of the file.
  at com.mckoi.database.V1FileStoreSystem.openStore(V1FileStoreSystem.java:155)
  at com.mckoi.database.V2MasterTableDataSource.open(V2MasterTableDataSource.java:377)
  at com.mckoi.database.TableDataConglomerate.readVisibleTables(TableDataConglomerate.java:383)
  at com.mckoi.database.TableDataConglomerate.open(TableDataConglomerate.java:1096)
  at com.mckoi.database.Database.init(Database.java:1803)
  at com.mckoi.database.control.DBController.startDatabase(DBController.java:131)
  at com.mckoi.database.jdbcserver.DefaultLocalBootable.boot(DefaultLocalBootable.java:135)
  at com.mckoi.database.jdbc.MDriver.connectToLocal(MDriver.java:448)
  at com.mckoi.database.jdbc.MDriver.connect(MDriver.java:484)
  at java.sql.DriverManager.getConnection(DriverManager.java:525)
  at java.sql.DriverManager.getConnection(DriverManager.java:171)
  at de.willuhn.datasource.db.DBServiceImpl.createConnection(DBServiceImpl.java:179)
  at de.willuhn.datasource.db.DBServiceImpl.getConnection(DBServiceImpl.java:128)
  at de.willuhn.jameica.hbci.server.HBCIDBServiceImpl.checkConsistency(HBCIDBServiceImpl.java:127)
  at de.willuhn.jameica.hbci.HBCI$1.call(HBCI.java:95)
  at de.willuhn.jameica.hbci.HBCI.call(HBCI.java:273)
  ... 7 more


Vielen Dank für eure Hilfe
Olaf
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 10150
Dabei seit: 03 / 2005
Betreff:

Re: Plugin "hibiscus" kann nicht initialisiert werden

 · 
Gepostet: 21.11.2007 - 12:47 Uhr  ·  #2
Naja, die Meldung "IO Error: File corrupt: last_area_pointer at the end of the file. " weist ziemlich deutlich darauf hin, dass die Datenbank kaputt ist.

McKoi (die intern verwendete Datenbank) bringt jedoch ein Repair-Tool mit, mit dem du dein Glueck versuchen koenntest.

Zuerst musst du zwei Pfadangaben ermitteln. Zum einen, das Verzeichnis, in dem sich die Datei "mckoidb.jar" befindet. Sie liegt im Unterverzeichnis "lib/mckoi" von Jameica. Wo genau sich unter MacOS jedoch das Programmverzeichnis befindet, weiss ich nicht.

Ausserdem musst du das Verzeichnis suchen, in dem sich die Datenbank mit den kaputten Daten befindet. Unter MacOS sollte das /Users/$DeinUsername/.jameica/hibiscus/db sein. Achtung: Da das Verzeichnis ".jameica" mit einem Punkt beginnt, wird es vermutlich nicht angezeigt.

Oeffne nun eine Shell-Konsole und gib folgenden Befehl ein (alles in einer Zeile:

Code

java -cp $PfadZumJameicaProgrammVerzeichnis/lib/mckoi/mckoidb.jar com.mckoi.tools.DBConglomerateRepairTool -path /Users/$DeinUserName/.jameica/hibiscus/db
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 11
Dabei seit: 02 / 2007
Betreff:

Re: Plugin "hibiscus" kann nicht initialisiert werden

 · 
Gepostet: 21.11.2007 - 21:45 Uhr  ·  #3
Vielen Dank,

das war recht einfach, allerding bringt es keinen Erfolg. Die "Reparatur" dauert den Bruchteil einer Sekunde und bringt folgende Meldungen:

Code

localhost:~ olmet$ java -cp /Applications/jameica.app/lib/mckoi/mckoidb.jar com.mckoi.tools.DBConglomerateRepairTool -path /Users/olmet/.jameica/hibiscus/db
+ Found state store: DefaultDatabase_sf
+ Initialized the state store: DefaultDatabase_sf
+ Repairing V2MasterTableDataSource 000SYS_INFO_sUSRSequenceInfo
- Store: [ JournalledFileStore: 000SYS_INFO_sUSRSequenceInfo ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 33 Free count = 63
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 001SYS_INFO_sUSRSequence
- Store: [ JournalledFileStore: 001SYS_INFO_sUSRSequence ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 002SYS_INFO_sUSRPKeyInfo
- Store: [ JournalledFileStore: 002SYS_INFO_sUSRPKeyInfo ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 19 Free count = 13
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 003SYS_INFO_sUSRFKeyInfo
- Store: [ JournalledFileStore: 003SYS_INFO_sUSRFKeyInfo ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 13 Free count = 19
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 004SYS_INFO_sUSRUniqueInfo
- Store: [ JournalledFileStore: 004SYS_INFO_sUSRUniqueInfo ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 21 Free count = 11
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 005SYS_INFO_sUSRCheckInfo
- Store: [ JournalledFileStore: 005SYS_INFO_sUSRCheckInfo ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 006SYS_INFO_sUSRPrimaryColumns
- Store: [ JournalledFileStore: 006SYS_INFO_sUSRPrimaryColumns ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 19 Free count = 13
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 007SYS_INFO_sUSRUniqueColumns
- Store: [ JournalledFileStore: 007SYS_INFO_sUSRUniqueColumns ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 26 Free count = 6
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 008SYS_INFO_sUSRForeignColumns
- Store: [ JournalledFileStore: 008SYS_INFO_sUSRForeignColumns ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 13 Free count = 19
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 009SYS_INFO_sUSRSchemaInfo
- Store: [ JournalledFileStore: 009SYS_INFO_sUSRSchemaInfo ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 3 Free count = 29
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 010SYS_INFO_sUSRDatabaseVars
- Store: [ JournalledFileStore: 010SYS_INFO_sUSRDatabaseVars ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 1 Free count = 31
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 011SYS_INFO_sUSRPassword
- Store: [ JournalledFileStore: 011SYS_INFO_sUSRPassword ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 1 Free count = 31
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 012SYS_INFO_sUSRUserPriv
- Store: [ JournalledFileStore: 012SYS_INFO_sUSRUserPriv ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 1 Free count = 31
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 013SYS_INFO_sUSRUserConnectPriv
- Store: [ JournalledFileStore: 013SYS_INFO_sUSRUserConnectPriv ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 2 Free count = 30
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 014SYS_INFO_sUSRGrant
- Store: [ JournalledFileStore: 014SYS_INFO_sUSRGrant ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 83 Free count = 13
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 015SYS_INFO_sUSRService
- Store: [ JournalledFileStore: 015SYS_INFO_sUSRService ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 016SYS_INFO_sUSRFunctionFactory
- Store: [ JournalledFileStore: 016SYS_INFO_sUSRFunctionFactory ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 017SYS_INFO_sUSRFunction
- Store: [ JournalledFileStore: 017SYS_INFO_sUSRFunction ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 1 Free count = 31
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 018SYS_INFO_sUSRView
- Store: [ JournalledFileStore: 018SYS_INFO_sUSRView ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 15 Free count = 17
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 019SYS_INFO_sUSRLabel
- Store: [ JournalledFileStore: 019SYS_INFO_sUSRLabel ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 020SYS_INFO_sUSRDataTrigger
- Store: [ JournalledFileStore: 020SYS_INFO_sUSRDataTrigger ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 021APP_konto
- Store: [ JournalledFileStore: 021APP_konto ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 4 Free count = 28
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 022APP_empfaenger
- Store: [ JournalledFileStore: 022APP_empfaenger ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 1 Free count = 31
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 023APP_ueberweisung
- Store: [ JournalledFileStore: 023APP_ueberweisung ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 2 Free count = 30
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 024APP_protokoll
- Store: [ JournalledFileStore: 024APP_protokoll ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 85 Free count = 11
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 027APP_dauerauftrag
- Store: [ JournalledFileStore: 027APP_dauerauftrag ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 1 Free count = 31
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 028APP_turnus
- Store: [ JournalledFileStore: 028APP_turnus ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 6 Free count = 26
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 029APP_lastschrift
- Store: [ JournalledFileStore: 029APP_lastschrift ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 030APP_slastschrift
- Store: [ JournalledFileStore: 030APP_slastschrift ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 031APP_slastbuchung
- Store: [ JournalledFileStore: 031APP_slastbuchung ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 032APP_sueberweisung
- Store: [ JournalledFileStore: 032APP_sueberweisung ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 033APP_sueberweisungbuchung
- Store: [ JournalledFileStore: 033APP_sueberweisungbuchung ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 0 Free count = 0
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 034APP_systemnachricht
- Store: [ JournalledFileStore: 034APP_systemnachricht ]
- Store areas are intact.
+ Rebuilding free bins.
- Store repair complete.
- Checking record integrity.
* Record count = 24 Free count = 8
- Rebuilding all table index information.
- Table check complete.
+ Repairing V2MasterTableDataSource 039APP_umsatz
[com.mckoi.debug.Debug - Exception thrown: 'File corrupt: last_area_pointer at the end of the file.']
java.io.IOException: File corrupt: last_area_pointer at the end of the file.
        at com.mckoi.store.AbstractStore.open(AbstractStore.java:209)
        at com.mckoi.database.V1FileStoreSystem.openStore(V1FileStoreSystem.java:145)
        at com.mckoi.database.V2MasterTableDataSource.checkAndRepair(V2MasterTableDataSource.java:818)
        at com.mckoi.database.TableDataConglomerate.checkVisibleTables(TableDataConglomerate.java:438)
        at com.mckoi.database.TableDataConglomerate.fix(TableDataConglomerate.java:2323)
        at com.mckoi.tools.DBConglomerateRepairTool.repair(DBConglomerateRepairTool.java:57)
        at com.mckoi.tools.DBConglomerateRepairTool.main(DBConglomerateRepairTool.java:87)
Exception in thread "main" java.lang.RuntimeException: IO Error: File corrupt: last_area_pointer at the end of the file.
        at com.mckoi.database.V1FileStoreSystem.openStore(V1FileStoreSystem.java:155)
        at com.mckoi.database.V2MasterTableDataSource.checkAndRepair(V2MasterTableDataSource.java:818)
        at com.mckoi.database.TableDataConglomerate.checkVisibleTables(TableDataConglomerate.java:438)
        at com.mckoi.database.TableDataConglomerate.fix(TableDataConglomerate.java:2323)
        at com.mckoi.tools.DBConglomerateRepairTool.repair(DBConglomerateRepairTool.java:57)
        at com.mckoi.tools.DBConglomerateRepairTool.main(DBConglomerateRepairTool.java:87)


wobei sicherlich die Meldungen am Ende das Entscheidende sind. Heisst das nun die Datenbank ist unwiederruflich verloren. Vor allem was passiert beim nächsten Stromausfall oder Programmabbruch?

Code

- Table check complete.
+ Repairing V2MasterTableDataSource 039APP_umsatz
[com.mckoi.debug.Debug - Exception thrown: 'File corrupt: last_area_pointer at the end of the file.']
java.io.IOException: File corrupt: last_area_pointer at the end of the file.
        at com.mckoi.store.AbstractStore.open(AbstractStore.java:209)
        at com.mckoi.database.V1FileStoreSystem.openStore(V1FileStoreSystem.java:145)
        at com.mckoi.database.V2MasterTableDataSource.checkAndRepair(V2MasterTableDataSource.java:818)
        at com.mckoi.database.TableDataConglomerate.checkVisibleTables(TableDataConglomerate.java:438)
        at com.mckoi.database.TableDataConglomerate.fix(TableDataConglomerate.java:2323)
        at com.mckoi.tools.DBConglomerateRepairTool.repair(DBConglomerateRepairTool.java:57)
        at com.mckoi.tools.DBConglomerateRepairTool.main(DBConglomerateRepairTool.java:87)
Exception in thread "main" java.lang.RuntimeException: IO Error: File corrupt: last_area_pointer at the end of the file.
        at com.mckoi.database.V1FileStoreSystem.openStore(V1FileStoreSystem.java:155)
        at com.mckoi.database.V2MasterTableDataSource.checkAndRepair(V2MasterTableDataSource.java:818)
        at com.mckoi.database.TableDataConglomerate.checkVisibleTables(TableDataConglomerate.java:438)
        at com.mckoi.database.TableDataConglomerate.fix(TableDataConglomerate.java:2323)
        at com.mckoi.tools.DBConglomerateRepairTool.repair(DBConglomerateRepairTool.java:57)
        at com.mckoi.tools.DBConglomerateRepairTool.main(DBConglomerateRepairTool.java:87)
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 10150
Dabei seit: 03 / 2005
Betreff:

Re: Plugin "hibiscus" kann nicht initialisiert werden

 · 
Gepostet: 22.11.2007 - 10:56 Uhr  ·  #4
Zitat
wobei sicherlich die Meldungen am Ende das Entscheidende sind. Heisst das nun die Datenbank ist unwiederruflich verloren.


Ich befuerchte ja. Wenn selbst das Repair-Tool von McKoi die Daten nicht mehr retten kann, ist die Datenbank wohl irreparabel zerstoert.

Zitat
Vor allem was passiert beim nächsten Stromausfall oder Programmabbruch?


So bitter das klingt, aber bei einem unerwarteten Absturz oder Stromausfall kann sowas jederzeit wieder passieren. Sicher ist es Aufgabe der Datenbank und insbesondere des Dateisystems auf dem Rechner, sowas zu vermeiden. Das Problem ist aber weder Hibiscus- noch McKoi-spezifisch. Das kann dir mit jeder Anwendung passieren.

Hibiscus selbst hat hier keine Chance, sowas zu verhindern - es muss sich darauf verlassen, dass Datenbank und Dateisystem auch bei einem Stromausfall in einem konsistenten Zustand bleiben.
Gewählte Zitate für Mehrfachzitierung:   0