camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stephan Burkard <sburk...@gmail.com>
Subject Re: How to read aggregation from HawtDB when Camel cannot read it by index
Date Fri, 03 Jan 2014 11:53:10 GMT
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 <sburkard@gmail.com>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
>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message