OpenTSDB / asynchbase

A fully asynchronous, non-blocking, thread-safe, high-performance HBase client.
https://github.com/OpenTSDB/asynchbase
BSD 3-Clause "New" or "Revised" License
608 stars 303 forks source link

An exception was thrown by TimerTask. java.lang.OutOfMemoryError: Java heap space #196

Open wanygan83 opened 6 years ago

wanygan83 commented 6 years ago

2018-08-31 22:11:36,631 [AsyncHBase Timer HBaseClient #1] WARN org.jboss.netty.util.HashedWheelTimer - An exception was thrown by TimerTask. java.lang.OutOfMemoryError: Java heap space at java.util.TimSort.sort(TimSort.java:230) ~[?:1.8.0_111] at java.util.Arrays.sort(Arrays.java:1512) ~[?:1.8.0_111] at java.util.ArrayList.sort(ArrayList.java:1454) ~[?:1.8.0_111] at java.util.Collections.sort(Collections.java:175) ~[?:1.8.0_111] at org.hbase.async.MultiAction.serialize(MultiAction.java:222) ~[asynchbase-1.8.2.jar!/:?] at org.hbase.async.RegionClient.encode(RegionClient.java:1294) ~[asynchbase-1.8.2.jar!/:?] at org.hbase.async.RegionClient.sendRpc(RegionClient.java:1005) ~[asynchbase-1.8.2.jar!/:?] at org.hbase.async.RegionClient.periodicFlush(RegionClient.java:351) ~[asynchbase-1.8.2.jar!/:?] at org.hbase.async.RegionClient.access$000(RegionClient.java:88) ~[asynchbase-1.8.2.jar!/:?]

manolama commented 6 years ago

Hi, this is often caused by the default NSRE queue size that can maintain thousands of RPCs for each region that is offline. Change hbase.nsre.high_watermark to something much smaller like 10.