Hi,

The error code "[50000-166]" means you are actually still using H2 version
1.3.166. A few corruption problems have been fixed since then, for example
in version 1.3.172 ("When using local temporary tables...") and also 1.3.173
 - see also http://www.h2database.com/html/changelog.html - could you try
again with the latest version? You may need to re-create the database I'm
afraid.

Regards,
Thomas




On Wed, Sep 11, 2013 at 11:16 AM, Federico Dal Castello <
[email protected]> wrote:

> Hello,
>
> days ago we experienced database corruption and I think it was due to the
> following (full stacktrace attached):
>
> org.h2.jdbc.JdbcSQLException: General error:
> "java.lang.ArrayIndexOutOfBoundsException: 17"; SQL statement:
> UPDATE jbosscache SET node = ? WHERE fqn = ? [50000-166]
>
> Afterwards, while figuring out what happened, I noticed I was able to
> successfully perform select queries on some nodes, while select queries on
> other nodes failed with the following error:
>
> File corrupted while reading record: "[738] stream data key:162 pos:11
> remaining:0"
>
> In addition, every delete operation returned the same error.
>
> We use H2 library 1.3.172 and CREATE_BUILD=166. The DB is used as jboss
> cache component. If you want I can send you the corrupted DB file but it is
> 190MB and I haven't been able to find a test case reproducing the error.
> More information:
>
> - Did the system ever run out of disk space?
>
> No
>
> - Could you send the full stack trace of the exception including message
> text?
>
> Yes, attached
>
> - Did you use SHUTDOWN DEFRAG or the database setting DEFRAG_ALWAYS with
> H2 version 1.3.159 or older?
>
> No
>
> - What is your database URL?
>
> jdbc:h2:userdata/cache/jbcache;create=true;DB_CLOSE_DELAY=1
>
> - How many connections does your application use concurrently?
>
> max pool size is 400
>
> - Do you use temporary tables?
>
> No
>
> - Did you use LOG=0 or LOG=1?
>
> No
>
> - Did the application run out of memory (once, or multiple times)?
>
> No
>
> - Do you use any settings or special features (for example cache settings,
>     two phase commit, linked tables)?
>
> We set the following properties:
> cache.jdbc.table.create=true
> cache.jdbc.table.drop=false
> cache.jdbc.fqn.type=varchar(2048)
> cache.jdbc.connection.factory=org.jboss.cache.loader.C3p0ConnectionFactory
> c3p0.maxPoolSize=400
>
> - Do you use any H2-specific system properties?
>
> See previous question
>
> - Is the application multi-threaded?
>
> Yes
>
> - What operating system, file system, and virtual machine (java -version)
> do you use?
> Os: Windows server 2008 SP2 64 bit
> File system: NTFS
> Java version: 1.6.0_20
>
> - How did you start the Java process (java -Xmx... and so on)?
>
> -MaxPermSize=256M  -Xmx2560M  -Xms2560M
>
> - Is it (or was it at some point) a networked file system?
>
> No
>
> - How big is the database (file sizes)?
>
> 190 MB
>
> - How much heap memory does the Java process have?
>
> 2560 MB
>
> - Is the database usually closed normally, or is process terminated
> forcefully or the computer switched off?
>
> Usually it is closed normally
>
> - Is it possible to reproduce this problem using a fresh database
> (sometimes, or always)?
>
> No, at least not yet
>
> --
> You received this message because you are subscribed to the Google Groups
> "H2 Database" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/h2-database.
> For more options, visit https://groups.google.com/groups/opt_out.
>

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to