试试搜索一下吧

救救孩子吧 5.5升级6.7后 painless 脚本 空指针 找了好几个小时了谢谢大神!

Elasticsearch | 作者 brooks | 发布于2019年10月27日 | 阅读数:1415

这是5.5正常的脚本
"if(params['_source']['transFilter']!=null){" +
"{ return false;}" +
"}}" +
"return true;";

transFilter是 nestd嵌套文档 有可能空
但是升级到6.7后
if(params['_source']['transFilter']!=null){
这种判断空的方式不行了
改咋么办
 
贴上报错信息
{"error":{"root_cause":[{"type":"script_exception","reason":"runtime error","script_stack":["if(params['_source']['transFilter']!=null){","         ^---- HERE"],"
"caused_by":{"type":"null_pointer_exception","reason":null}}}]},"status":500}
已邀请:

God_lockin

赞同来自:

6之后好像不是这样取值了
params['_source']
 
你试试 ctx.transFilter之类的?多看看官方文档里面的script咋取值的吧

mmjinf001

赞同来自:

doc['transFilter'].empty 试试这个
 

要回复问题请先登录注册