Hi!
We use h2-1.2.135.jar.
1) While the program worked on the drive over the place - got
IOException.
2) We have cleared space on the disk, run the application - we get
JdbcSQLException "java.lang.ArrayIndexOutOfBoundsException: -2766".
3) Recover database fails:
C:\>java -cp h2*.jar org.h2.tools.Recover -db "cash"
Error: java.lang.ArrayIndexOutOfBoundsException: -2766
Why when the disk over the place database destroyed? Why restore the
database is not possible?
Below under items 1 and 2 show stackTrace.
1 item:
23:41:09,044 [pool-11-thread-1] ERROR JDBCExceptionReporter - Ошибка
ввода/вывода: "java.io.IOException: No space left on device"; "/mnt/
hda3/tce/storage/crystal-cash/data/cash.h2.db"
IO Exception: "java.io.IOException: No space left on device"; "/mnt/
hda3/tce/storage/crystal-cash/data/cash.h2.db"; SQL statement:
delete from CG_Product where id=? [90031-135]
log4j:ERROR Failed to flush writer,
java.io.IOException: No space left on device
at java.io.FileOutputStream.writeBytes(Native Method)
at java.io.FileOutputStream.write(Unknown Source)
at sun.nio.cs.StreamEncoder.writeBytes(Unknown Source)
at sun.nio.cs.StreamEncoder.implFlushBuffer(Unknown Source)
at sun.nio.cs.StreamEncoder.implFlush(Unknown Source)
at sun.nio.cs.StreamEncoder.flush(Unknown Source)
at java.io.OutputStreamWriter.flush(Unknown Source)
at org.apache.log4j.helpers.QuietWriter.flush(QuietWriter.java:58)
at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:316)
at
org.apache.log4j.RollingFileAppender.subAppend(RollingFileAppender.java:
263)
at org.apache.log4j.WriterAppender.append(WriterAppender.java:160)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:
251)
at
org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:
66)
at org.apache.log4j.Category.cal23:41:09,200 [pool-11-thread-1] ERROR
AbstractFlushingEventListener - Could not synchronize database state
with session
org.hibernate.exception.GenericJDBCException: Could not execute JDBC
batch update
at
org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:
126)
at
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:
114)
at
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:
66)
at
org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:
275)
at
org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:
114)
at
org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:
109)
at
org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:
2515)
at
org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:
2725)
at
org.hibernate.action.EntityDeleteAction.execute(EntityDeleteAction.java:
97)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:279)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:
263)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:
172)
at
org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:
321)
at
org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:
50)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1027)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:365)
at
org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:
137)
at
ru.crystals.pos.check.service.ServicesImpl.deleteOldDocuments(Unknown
Source)
at ru.crystals.pos.check.service.ServicesImpl.closeShift(Unknown
Source)
at ru.crystals.pos.check.service.SyncToAsync.closeShift(Unknown
Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at ru.crystals.pos.ProxyClass$1.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown
Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.h2.jdbc.JdbcBatchUpdateException: Ошибка ввода/вывода:
"java.io.IOException: No space left on device"; "/mnt/hda3/tce/storage/
crystal-cash/data/cash.h2.db"
IO Exception: "java.io.IOException: No space left on device"; "/mnt/
hda3/tce/storage/crystal-cash/data/cash.h2.db"; SQL statement:
delete from CG_Product where id=? [90031-135]
at
org.h2.jdbc.JdbcPreparedStatement.executeBatch(JdbcPreparedStatement.java:
1098)
at
org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:
70)
at
org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:
268)
... 24 more
00:10:16,329 [pool-11-thread-3] ERROR JDBCExceptionReporter - Ошибка
ввода/вывода: "java.io.IOException: No space left on device"; "/mnt/
hda3/tce/storage/crystal-cash/data/cash.h2.db"
IO Exception: "java.io.IOException: No space left on device"; "/mnt/
hda3/tce/storage/crystal-cash/data/cash.h2.db"; SQL statement:
insert into CG_Product (deleted, guid, version, barCode,
barCodeToSearch, comment, id_Country, id_Group, hash, item,
id_Producer, id_Measure, name, nds, orderField, id_Price,
priceContainInDepart, shelfNum, shelfPlace, shelvingNum, statusField,
id_ProductRef, id) values
(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
[90031-135]
00:10:16,332 [pool-11-thread-3] ERROR JDBCExceptionReporter - Ошибка
ввода/вывода: "java.io.IOException: No space left on device"; "/mnt/
hda3/tce/storage/crystal-cash/data/cash.h2.db"
IO Exception: "java.io.IOException: No space left on device"; "/mnt/
hda3/tce/storage/crystal-cash/data/cash.h2.db"; SQL statement:
insert into CG_Product (deleted, guid, version, barCode,
barCodeToSearch, comment, id_Country, id_Group, hash, item,
id_Producer, id_Measure, name, nds, orderField, id_Price,
priceContainInDepart, shelfNum, shelfPlace, shelvingNum, statusField,
id_ProductRef, id) values
(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
[90031-135]
00:10:16,345 [pool-11-thread-3] ERROR AbstractFlushingEventListener -
Could not synchronize database state with session
org.hibernate.exception.GenericJDBCException: Could not execute JDBC
batch update
at
org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:
126)
at org.hibernate.
2 item:
00:21:38,140 [Thread-2] ERROR SchemaUpdate - could not get database
metadata
org.h2.jdbc.JdbcSQLException: Внутренняя ошибка:
"java.lang.ArrayIndexOutOfBoundsException: -2766"
General error: "java.lang.ArrayIndexOutOfBoundsException:
-2766" [50000-135]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:
327)
at org.h2.message.DbException.get(DbException.java:156)
at org.h2.message.DbException.convert(DbException.java:279)
at org.h2.engine.Database.openDatabase(Database.java:236)
at org.h2.engine.Database.<init>(Database.java:201)
at org.h2.engine.Engine.openSession(Engine.java:56)
at org.h2.engine.Engine.openSession(Engine.java:146)
at org.h2.engine.Engine.getSession(Engine.java:125)
at org.h2.engine.Session.createSession(Session.java:119)
at
org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:
239)
at org.h2.engine.SessionRemote.createSession(SessionRemote.java:217)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:111)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:95)
at org.h2.Driver.connect(Driver.java:58)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at
org.hibernate.connection.DriverManagerConnectionProvider.getConnection(DriverManagerConnectionProvider.java:
133)
at
org.hibernate.tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.prepare(SuppliedConnectionProviderConnectionHelper.java:
51)
at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:
150)
at
org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:
346)
at
org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:
1327)
at
org.hibernate.cfg.AnnotationConfiguration.buildSessionFactory(AnnotationConfiguration.java:
867)
at ru.crystals.pos.check.service.ServicesImpl.start(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeCustomInitMethod(AbstractAutowireCapableBeanFactory.java:
1527)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:
1468)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:
1400)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:
513)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:
450)
at org.springframework.beans.factory.support.AbstractBeanFactory
$1.getObject(AbstractBeanFactory.java:290)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:
222)
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:
287)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:
189)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:
322)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:
106)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:
1308)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:
1067)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:
511)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:
450)
at org.springframework.beans.factory.support.AbstractBeanFactory
$1.getObject(AbstractBeanFactory.java:290)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:
222)
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:
287)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:
189)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:
322)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:
106)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:
1308)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:
1067)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:
511)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:
450)
at org.springframework.beans.factory.support.AbstractBeanFactory
$1.getObject(AbstractBeanFactory.java:290)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:
222)
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:
287)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:
189)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:
322)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:
106)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:
355)
at
org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:
153)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:
1308)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:
1067)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:
511)
at
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:
450)
at org.springframework.beans.factory.support.AbstractBeanFactory
$1.getObject(AbstractBeanFactory.java:290)
at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:
222)
at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:
287)
at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:
193)
at
org.springframework.context.support.AbstractApplicationContext.registerBeanPostProcessors(AbstractApplicationContext.java:
699)
at
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:
408)
at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:
139)
at
org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:
93)
at ru.crystals.pos.loader.Loader$ThreadSpring.run(Unknown Source)
Caused by: java.lang.ArrayIndexOutOfBoundsException: -2766
at org.h2.compress.CompressLZF.expand(CompressLZF.java:255)
at org.h2.store.PageLog.recover(PageLog.java:261)
at org.h2.store.PageStore.recover(PageStore.java:1081)
at org.h2.store.PageStore.openExisting(PageStore.java:310)
at org.h2.store.PageStore.open(PageStore.java:264)
at org.h2.engine.Database.getPageStore(Database.java:2038)
at org.h2.engine.Database.open(Database.java:533)
at org.h2.engine.Database.openDatabase(Database.java:206)
... 69 more
--
You received this message because you are subscribed to the Google Groups "H2
Database" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/h2-database?hl=en.