elasticsearch 5.0原生插件,查询报错

elasticsearch 5.0 native plugin, query error

我为 es 5.0 编写了一个本机插件,其中 extends Plugin implements ScriptPlugin 和脚本 extends AbstractSearchScript,安装正常,但是当我执行以下查询时:

"script_score": {
    "script": {
      "id": "my_script_factory_name",
      "lang" : "native"
  }
}

失败并出现以下错误:

{"error":{"root_cause":[{"type":"resource_not_found_exception","reason":"Unable to find script [native/my_script_factory_name] in cluster state"}],"type":"search_phase_execution_exception","reason":"all shards failed","phase":"query","grouped":true,

终于找到原因了,5.0官方文档是老版本指南,正确的查询应该使用inline

"script_score": {
    "script": {
      "inline": "my_script_factory_name",
      "lang" : "native",
      "params": {
        ....
      }
  }
}