Re: java.lang.OutOfMemoryError: GC overhead limit exceeded in split bolt

2016-10-26 Thread Junguk Cho
Hi, Thank you for reply. That topology doesn’t use reliable delivery -> I thought I tested it with ack and backpressure function, but I will try it again. Try reducing the sleep time to something smaller like 5. -> Thank you for advice. Does "topology.max.spout.pending" help this situation? In

Re: When to use MemoryMapState while performing a persistentAggregate in Trident?

2016-10-26 Thread P. Taylor Goetz
Storm has support for a Redis-backed map state: https://github.com/apache/storm/blob/master/external/storm-redis/src/main/java/org/apache/storm/redis/trident/state/RedisMapState.java

Re: java.lang.OutOfMemoryError: GC overhead limit exceeded in split bolt

2016-10-26 Thread P. Taylor Goetz
That topology doesn’t use reliable delivery, so there is nothing to throttle that spout without the `sleep()`. So the spout will emit as fast as it can, which is faster than the bolts in the topology can process them. Try reducing the sleep time to something smaller like 5. -Taylor > On Oct

Re: Messages are not being delivered fast enough warning

2016-10-26 Thread P. Taylor Goetz
You can safely ignore that message, as it only relates to delivery of metrics information (i.e. not topology data). It has since been set to a DEBUG level message, but that change isn’t in an official release yet. What it means is that the handler got more than one metrics message when it was

Re: When to use MemoryMapState while performing a persistentAggregate in Trident?

2016-10-26 Thread Dinesh Babu K G
Thanks Arun. Does storm recommend any specific in-memory store for persistence? I see memached given as an example in the storm documentation but no word about other stores. On Wed, Oct 26, 2016 at 2:37 PM Arun Mahadevan wrote: > > > MemoryMapState is more for testing and does

Re: When to use MemoryMapState while performing a persistentAggregate in Trident?

2016-10-26 Thread Arun Mahadevan
MemoryMapState is more for testing and does not provide any persistence. It uses a HashMap internally. If you want persistence you need use the one based on redis or other. Thanks, Arun From: Dinesh Babu K G Reply-To: "user@storm.apache.org"

When to use MemoryMapState while performing a persistentAggregate in Trident?

2016-10-26 Thread Dinesh Babu K G
Hi all, I would like to understand when to use MemoryMapState v/s using a state that is based on a in-memory data store (like memcached, redis or aerospike) while doing persistentAggregate() in Trident. Are there any pros & cons between the two approaches? Thanks, Dinesh Babu K.G