在内存不足的错误上得到堆转储。分析Visual中的转储
在byte[]中看到许多TreeMap$Entry FieldCacheImpl$SortedDocValues
数组(占我们8GB堆的77%)
我们正在考虑为我们排序的字段打开docValues以“true”,但在我们试验DocValues并要求在我们的4个数据中心中的每一个重新索引我们的2亿文档索引之前,我们更愿意确定根本原因。
对于我应该在这个堆转储中寻找什么才能找到一个明确的根本原因,有什么建议吗?
发布于 2017-03-07 22:04:55
通过启用docvalue,您几乎可以保证事情会有所改善。如果在进行大范围重新索引之前需要一些证据,您可以只需:
编辑你的评论:好吧,如果你在200M docs...not上排序,确定一个4GB的堆是否如此庞大。您可以检查您是否正在缓存不需要/无效的fq (比如现在在一个具有毫秒精度的日期字段中)。fqs将占用大索引中的一些内存。
https://stackoverflow.com/questions/42656421
复制相似问题