I know it is somehow the wrong place, but the HawtDB Google group seems to be dead (at least my posted question never appeared).
Is there anybody who has written or commited to the hawtdb component of Camel I can ask? Thanks Stephan On Fri, Dec 20, 2013 at 10:51 AM, Stephan Burkard <[email protected]>wrote: > Hi Camel users > > I am trying to recover data from a Camel aggregator persistent hawtdb > repository (Camel 2.9.x). The aggregator was killed unexpectedly because of > an out-of-memory-error. > > I wrote a small Java class that opens the hawtdb file, creates a > HawtDBAggregationRepository instance that uses the file and tried to get > the index keys and aggregations from it. > > I was able to get almost all aggregations from it, only two of them throw > the exception below when I try to access them. Can I access them in another > way to recover the aggregated data? > > Thanks for any help > Stephan > > > > WARN | HawtDBFile | Error executing work Getting key > [7601003010220_XML400]. Will do rollback. > org.fusesource.hawtdb.api.IndexException: java.io.EOFException > at > org.fusesource.hawtdb.api.AbstractStreamPagedAccessor.load(AbstractStreamPagedAccessor.java:66) > at > org.fusesource.hawtdb.internal.index.BTreeIndex.loadNode(BTreeIndex.java:238) > at > org.fusesource.hawtdb.internal.index.BTreeNode.getChild(BTreeNode.java:261) > at > org.fusesource.hawtdb.internal.index.BTreeNode.getLeafNode(BTreeNode.java:772) > at > org.fusesource.hawtdb.internal.index.BTreeNode.get(BTreeNode.java:652) > at > org.fusesource.hawtdb.internal.index.BTreeIndex.get(BTreeIndex.java:85) > at > org.apache.camel.component.hawtdb.HawtDBAggregationRepository$2.execute(HawtDBAggregationRepository.java:150) > at > org.apache.camel.component.hawtdb.HawtDBAggregationRepository$2.execute(HawtDBAggregationRepository.java:144) > at > org.apache.camel.component.hawtdb.HawtDBFile.doExecute(HawtDBFile.java:165) > at > org.apache.camel.component.hawtdb.HawtDBFile.execute(HawtDBFile.java:119) > at > org.apache.camel.component.hawtdb.HawtDBAggregationRepository.get(HawtDBAggregationRepository.java:144) > at > ch.visana.ke.concierge.VisanaHawtDbRecovery.readExchangeByKeyFromRepository(VisanaHawtDbRecovery.java:81) > at > ch.visana.ke.concierge.VisanaHawtDbRecovery.testGetAggregationExchangeByKey(VisanaHawtDbRecovery.java:70) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) > at > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) > at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) > at > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) > at > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) > at org.junit.rules.TestWatchman$1.evaluate(TestWatchman.java:48) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) > at > org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) > at org.junit.runners.ParentRunner.run(ParentRunner.java:236) > at > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) > at > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) > Caused by: java.io.EOFException > at > org.fusesource.hawtdb.internal.page.ExtentInputStream.read(ExtentInputStream.java:80) > at java.io.DataInputStream.readFully(DataInputStream.java:178) > at java.io.DataInputStream.readFully(DataInputStream.java:152) > at > org.fusesource.hawtbuf.codec.AbstractBufferCodec.decode(AbstractBufferCodec.java:40) > at > org.fusesource.hawtbuf.codec.AbstractBufferCodec.decode(AbstractBufferCodec.java:30) > at > org.fusesource.hawtdb.internal.index.BTreeNode.read(BTreeNode.java:207) > at > org.fusesource.hawtdb.internal.index.BTreeNode$DataPagedAccessor.decode(BTreeNode.java:228) > at > org.fusesource.hawtdb.internal.index.BTreeNode$DataPagedAccessor.decode(BTreeNode.java:214) > at > org.fusesource.hawtdb.api.AbstractStreamPagedAccessor.load(AbstractStreamPagedAccessor.java:64) > ... 38 more > > >
