2

we use H2 DB(version 1.4.195) in production for a Java desktop app. Recently we noticed that our customers have the corrupted DB and they all have a solid-state drive (SSD) on Windows.

the problem in the log is always about the index:

org.h2.jdbc.JdbcSQLException: File corrupted while reading record: "index not found 201". Possible solution: use the recovery tool;

the DB is connected locally and the connection string is:

jdbc:h2:file:C://TEMP//database";LOCK_TIMEOUT=10000;LOCK_MODE=3;MVCC=FALSE;MV_STORE=false;IFEXISTS=TRUE

Using the same parameters on hard disk drive (HDD) we have no problem.

Java Version: 1.8 Windows: 7/10 File system: NTFS

in house is not possible to reproduce the issue but on the customer side the problem happens often.

Any suggestion for this particular scenario?

  • I expanded your abbreviations for clarity. Please verify. – Basil Bourque May 27 '19 at 14:08
  • 1)Java version : 1.8 2)Windows : 7 / 10 3)file system : NTFS 4-5) in house is not possible to reproduce the issue but on the customer side the problem happens often – Lorenzo_Lambertini May 27 '19 at 14:18
  • Post those details as edits your Question, not as Comment. – Basil Bourque May 27 '19 at 14:44
  • 1
    Are you sure it is not a kind of user error like their computer went stand by or shut down without closing your application properly? Maybe you should gather some application logs where you can determine whether there were 2 connection attempts without proper shutdown in between. – Bela Vizer May 27 '19 at 15:55
  • I'm sure, the application has been installed for many years and only recently we have problems with DB and we noticed that our customers have always a SSD. Before that we don't have any problems with H2 DB. – Lorenzo_Lambertini Jun 03 '19 at 10:52

0 Answers0