你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
输入关键字进行搜索
搜索:
没有找到相关结果
kennywu76 - Wood
赞同来自: kepmoving 、learnonly
void ensureCapacity(long offset) { if (offset > Integer.MAX_VALUE) { throw new IllegalArgumentException(getClass().getSimpleName() + " cannot hold more than 2GB of data"); } bytes = bigArrays.grow(bytes, offset); }
Cheetah
赞同来自: learnonly
要回复问题请先登录或注册
2 个回复
kennywu76 - Wood
赞同来自: kepmoving 、learnonly
也就是说date histogram内嵌stats aggs计算过程中,有一处输出的字节流长度超过上限。最好看一下出错时ES服务端日志,根据出错时的JAVA堆栈,看一下是哪个调用抛出来的,以便定位到问题根源。
timestamp和millis的数据类型需要看一下,是否会引起load fielddata。 如果timestamp和millis的字段类型配置无误的话,这个聚合看起来没啥问题。安全起见,检查一下timestamp里是否存在脏数据。 我们以前遇到过一例脏数据引起的问题, 一条不正确的时间戳数据写进来,导致聚合的时间范围超长,产生海量的bucket而出错。
Cheetah
赞同来自: learnonly
你所说你堆内存分配超过2G,但是这2G并不能全部用来fielddata,还有Segment Memory、Filter Cache、Bulk Queue、Indexing Buffer等好几个内存消耗专家,所以你这里最好的办法是将要聚合的字段设置为doc_values