ES添加文档 踩坑之 —— The number of object passed must be even but was [1]

时间:2022-01-16 20:13:26

 

读取文件,获取json格式的数据doc,

然后使用 bulkRequestBuilder.add(client.prepareIndex(index, type, id).setSource(doc));

往ES中批量插入文档,接着就报下面这个异常错误:

java.lang.IllegalArgumentException: The number of object passed must be even but was [1]

 

后来,花了点时间,才查到原因:

ES 变更版本后,此处代码不适用,会报  The number of object passed must be even but was [1] 这个异常

bulkRequestBuilder.add(client.prepareIndex(index, type, id).setSource(doc)); 中的 setSource()的参数不能是json串了

但是可以转化成 map 来使用 

 

共同学习,共同进步,若有补充,欢迎指出,谢谢!