出现场景
再次使用ES查询时报错,第一次查询没有问题
ES版本7.7.0
报错截图
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201024151639456.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzQ3MzMzMDIw,size_16,color_FFFFFF,t_70#pic_center)
报错源码出处![在这里插入图片描述](https://img-blog.csdnimg.cn/20201024151717883.png#pic_center)
解决方法
出现这种原因的情况是因为在进行搜索完后,没有将ESClient关闭,这样在一次进行搜索的时候,使用的还是同一个ESClient,这样就会导致重复的聚合名称出现
知道了原因,那么只需要每次在搜索完成后吧client关闭
![在这里插入图片描述](https://img-blog.csdnimg.cn/20201026114807670.png#pic_center)
同时在每次搜索前都创建一个client,不然会导致空指针异常(这里以为需要多次调用,所以把创建client封装成了方法)
![在这里插入图片描述](https://img-blog.csdnimg.cn/2020102611484539.png#pic_center)
还需注意的是,在之后的每次操作中,都需要在操作完成后将client关闭,不然时间过久后会ES服务器端会主动把连接断开