Defect report:

What steps will reproduce the problem?
(simple SQL scripts or simple standalone applications are preferred)
1.
2.
3.

What is the expected output? What do you see instead?


What version of the product are you using? On what operating system, file system, and virtual machine?


Do you know a workaround?

How important/urgent is the problem for you?

In your view, is this a defect or a feature request?

Please provide any additional information below.

-----------------

Corrupted database

I am sorry to say that, but it looks like a corruption problem. I am very interested in analyzing and solving this problem. Corruption problems have top priority for me. I have a few question:

- Could you send the full stack trace of the exception?
- What is your database URL?
- What version H2 are you using?
- Did you use multiple connections?
- The first workarounds is: append ;RECOVER=1 to the database URL. Does it work when you do this?
- The second workarounds is: delete the index.db file (it is re-created automatically) and try again. Does it work when you do this?
- The third workarounds is: use the tool org.h2.tools.Recover to create the SQL script file, and then re-create the database using this script. Does it work when you do this?
- Do you use any settings or special features (for example, the setting LOG=0, or two phase commit, linked tables, cache settings)?
- Is the application multi-threaded?
- On what operating system, file system, and virtual machine (java -version)?
- How big is the database?
- Is the database usually closed normally, or is process terminated forcefully or the computer switched off?
- Is it possible to reproduce this problem using a fresh database (sometimes, or always)?
- Are there any other exceptions (maybe in the .trace.db file)? Could you send them to me please?
- Was the database originally created with an older version of H2?
- Do you still have any .trace.db files, and if yes could you send them?
- Could you send me the .data.db file where this exception occurs?
