我在Esper中收到此错误。原因是什么?
[com.espertech.esper.Timer-EsperService-0] ERROR com.espertech.esper.timer.EPLTimerTask - Timer thread caught unhandled exception: null
java.lang.StackOverflowError
at java.util.TreeMap.compare(TreeMap.java:1290)
at java.util.TreeMap$NavigableSubMap.tooHigh(TreeMap.java:1394)
at java.util.TreeMap$NavigableSubMap.absLowest(TreeMap.java:1425)
at java.util.TreeMap$AscendingSubMap$AscendingEntrySetView.iterator(TreeMap.java:1908)
at java.util.AbstractMap$2$1.<init>(AbstractMap.java:389)
at java.util.AbstractMap$2.iterator(AbstractMap.java:388)
at com.espertech.esper.filter.FilterParamIndexCompare.matchEvent(FilterParamIndexCompare.java:161)
at com.espertech.esper.filter.FilterParamIndexCompare.matchEvent(FilterParamIndexCompare.java:171)
at com.espertech.esper.filter.FilterHandleSetNode.matchEvent(FilterHandleSetNode.java:99)
at com.espertech.esper.filter.EventTypeIndex.matchType(EventTypeIndex.java:170)
at com.espertech.esper.filter.EventTypeIndex.matchEvent(EventTypeIndex.java:108)
at com.espertech.esper.filter.FilterServiceBase.retryableMatchEvent(FilterServiceBase.java:170)
答案 0 :(得分:0)
注意异常提到“StackOverflowError”。
default stack size for 64-bit Java is 1 megabyte。
使用JVM选项-Xss2m
增加到2兆字节。
请注意:增加堆栈大小会增加每线程RAM的使用量。