Camel KratiConsumer throw OutOfMemory like this: Consumer Consumer[krati://notifications?operation=CamelKratiDelete] failed polling endpoint: Endpoint[krati://notifications?operation=CamelKratiDelete]. Will try again at next poll. Caused by: [java.lang.OutOfMemoryError - Java heap space] java.lang.OutOfMemoryError: Java heap space at java.util.ArrayList.<init>(ArrayList.java:112) at krati.store.DefaultDataStoreHandler.extractKeys(DefaultDataStoreHandler.java:226) at krati.store.DataStoreKeyIterator.findNext(DataStoreKeyIterator.java:82) at krati.store.DataStoreKeyIterator.hasNext(DataStoreKeyIterator.java:52) at krati.store.ObjectStoreKeyIterator.hasNext(ObjectStoreKeyIterator.java:43) at org.apache.camel.component.krati.KratiConsumer.poll(KratiConsumer.java:58)
I think the problem is KratiConsumer.poll(): Iterator keyIterator = dataStore.keyIterator(); while (keyIterator.hasNext()) {* //It's no limit, so use many memory* Object key = keyIterator.next(); Object value = dataStore.get(key); Exchange exchange = endpoint.createExchange(); exchange.setProperty(KratiConstants.KEY, key); exchange.getIn().setBody(value); queue.add(exchange); } return queue.isEmpty() ? 0 : processBatch(CastUtils.cast(queue)); -- View this message in context: http://camel.465427.n5.nabble.com/Camel-KratiConsumer-throw-OutOfMemory-tp5732669.html Sent from the Camel Development mailing list archive at Nabble.com.