1GB of heap is generally very small. The memory issue may or may not be related to Ignite. I would suggest increasing the heap size and check the heap graphs in any profiler, to make sure that it is not constantly growing without being reclaimed. If it is, then I would check which objects are the culprit - profiler provides this information.
On Mon, Apr 25, 2016 at 4:20 AM, Vladimir Ozerov <[email protected]> wrote: > Hi, > > Most probably, you just have insufficient heap, as queries require some > heap space during execution. Probably you should give your node more heap > and monitor it for some. If all is fine, you will see a saw-like pattern - > when memory is allocated and then release. If there is a leak, you will see > constant heap growth. > > Vladimir. > > On Sun, Apr 24, 2016 at 1:53 AM, Eduardo Julian <[email protected]> > wrote: > >> Hi, everyone. >> >> I started a program 3 days ago on a server with 1GB RAM. >> >> Everything was running smoothly until a couple of hours ago, when the >> service wasn't responding. >> When we go check the logs, there is an OOMError with an Ignite >> stack-trace tagging along. >> >> All that I store on that server is stored on Ignite (with read-through >> and write-through to a MySQL DB). >> It's fairly light stuff, just some objects with 10+ fields, and it's just >> 1 cache right now. >> >> However, in the logs, the bulk of the operations preceding the OOM error >> were read-operations that neither created nor updated the data on Ignite. >> Just performed some queries. >> >> And yet, for some reason, there was a HashMap being updated somewhere, >> which triggered the OOM error. >> >> Check it out: >> >> Apr 23, 2016 4:35:44 PM org.apache.ignite.logger.java.JavaLogger error >> SEVERE: Caught unhandled exception in NIO worker thread (restart the >> node). >> java.lang.OutOfMemoryError: Java heap space >> at java.util.HashMap$KeySet.iterator(HashMap.java:912) >> at java.util.HashSet.iterator(HashSet.java:172) >> at >> java.util.Collections$UnmodifiableCollection$1.<init>(Collections.java:1039) >> at >> java.util.Collections$UnmodifiableCollection.iterator(Collections.java:1038) >> at >> org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.checkIdle(GridNioServer.java:1489) >> at >> org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.bodyInternal(GridNioServer.java:1406) >> at >> org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.body(GridNioServer.java:1280) >> at >> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >> at java.lang.Thread.run(Thread.java:745) >> >> Apr 23, 2016 4:35:45 PM org.apache.ignite.logger.java.JavaLogger error >> SEVERE: Runtime error caught during grid runnable execution: GridWorker >> [name=grid-nio-worker-0, gridName=null, finished=false, isCancelled=false, >> hashCode=1645791145, interrupted=false, runner=grid-nio-worker-0-#40%null%] >> java.lang.OutOfMemoryError: Java heap space >> at java.util.HashMap$KeySet.iterator(HashMap.java:912) >> at java.util.HashSet.iterator(HashSet.java:172) >> at >> java.util.Collections$UnmodifiableCollection$1.<init>(Collections.java:1039) >> at >> java.util.Collections$UnmodifiableCollection.iterator(Collections.java:1038) >> at >> org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.checkIdle(GridNioServer.java:1489) >> at >> org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.bodyInternal(GridNioServer.java:1406) >> at >> org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.body(GridNioServer.java:1280) >> at >> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >> at java.lang.Thread.run(Thread.java:745) >> >> Apr 23, 2016 4:35:46 PM org.apache.ignite.logger.java.JavaLogger error >> SEVERE: Runtime error caught during grid runnable execution: GridWorker >> [name=partition-exchanger, gridName=null, finished=false, >> isCancelled=false, hashCode=685490869, interrupted=false, >> runner=exchange-worker-#45%null%] >> java.lang.OutOfMemoryError: Java heap space >> at java.util.HashMap.newNode(HashMap.java:1734) >> at java.util.HashMap.putVal(HashMap.java:630) >> at java.util.HashMap.put(HashMap.java:611) >> at >> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap2.put(GridDhtPartitionMap2.java:112) >> at >> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap2.<init>(GridDhtPartitionMap2.java:96) >> at >> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionFullMap.<init>(GridDhtPartitionFullMap.java:107) >> at >> org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtPartitionTopologyImpl.partitionMap(GridDhtPartitionTopologyImpl.java:841) >> at >> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.sendAllPartitions(GridCachePartitionExchangeManager.java:747) >> at >> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.refreshPartitions(GridCachePartitionExchangeManager.java:698) >> at >> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.refreshPartitions(GridCachePartitionExchangeManager.java:724) >> at >> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.access$1600(GridCachePartitionExchangeManager.java:107) >> at >> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:1267) >> at >> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >> at java.lang.Thread.run(Thread.java:745) >> >> Exception in thread "exchange-worker-#45%null%" Exception in thread >> "grid-nio-worker-0-#40%null%" java.lang.OutOfMemoryError: Java heap space >> at java.util.HashMap.newNode(HashMap.java:1734) >> at java.util.HashMap.putVal(HashMap.java:630) >> at java.util.HashMap.put(HashMap.java:611) >> at >> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap2.put(GridDhtPartitionMap2.java:112) >> at >> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionMap2.<init>(GridDhtPartitionMap2.java:96) >> at >> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionFullMap.<init>(GridDhtPartitionFullMap.java:107) >> at >> org.apache.ignite.internal.processors.cache.distributed.dht.GridDhtPartitionTopologyImpl.partitionMap(GridDhtPartitionTopologyImpl.java:841) >> at >> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.sendAllPartitions(GridCachePartitionExchangeManager.java:747) >> at >> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.refreshPartitions(GridCachePartitionExchangeManager.java:698) >> at >> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.refreshPartitions(GridCachePartitionExchangeManager.java:724) >> at >> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager.access$1600(GridCachePartitionExchangeManager.java:107) >> at >> org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:1267) >> at >> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >> at java.lang.Thread.run(Thread.java:745) >> java.lang.OutOfMemoryError: Java heap space >> at java.util.HashMap$KeySet.iterator(HashMap.java:912) >> at java.util.HashSet.iterator(HashSet.java:172) >> at >> java.util.Collections$UnmodifiableCollection$1.<init>(Collections.java:1039) >> at >> java.util.Collections$UnmodifiableCollection.iterator(Collections.java:1038) >> at >> org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.checkIdle(GridNioServer.java:1489) >> at >> org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.bodyInternal(GridNioServer.java:1406) >> at >> org.apache.ignite.internal.util.nio.GridNioServer$AbstractNioClientWorker.body(GridNioServer.java:1280) >> at >> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) >> at java.lang.Thread.run(Thread.java:745) >> >> >> >> --------------------------------------------------- >> >> >> I'm mostly using the default configuration for the cache. >> I don't know if maybe I might be missing something to get the most out of >> Ignite. >> >> Any tips and suggestions are welcome, as I cannot have Ignite dying on me >> (specially after just 3 days). >> >> Thanks in advance. >> > >
