我正在使用弹性搜索1.7.1,当我尝试使用script_score或script_fields时,它显示错误ScriptException [类型内联的脚本],操作[search]和lang [groovy]被禁用任何人都可以告诉我我该如何删除此错误。我的代码在下面给出
function_score: {
query: {
query_string: {
query: shop_search,
fields: [ 'shop_name']
}
},
functions: [
{
script_score: {
script: "_score * doc['location'].value"
}
}
]
}
答案 0 :(得分:42)
将script.engine.groovy.inline.search: on
添加到elasticsearch.yml
配置文件并重新启动节点。
答案 1 :(得分:13)
将script.groovy.sandbox.enabled: true
添加到.yml对我有用
对于ES版本2.x +
script.inline: on
script.indexed: on
答案 2 :(得分:7)
添加
s = ScenarioEnvironment(None)
r = report()
>>> <__main__.ScenarioEnvironment instance at 0x026F4238>
>>> <__main__.ScenarioEnvironment instance at 0x026F4300>
>>> <__main__.ScenarioEnvironment instance at 0x026F4350>
到elasticsearch.yml
并重新启动
答案 3 :(得分:0)
对于那些ES 2.x +
的人 script.inline: true
script.indexed: true
请确保在行前加一个空格!