1.定位问题:
a.字面意思是,ElasticSearch5分钟内执行脚本编译超过75个,编译太多而拒绝编译。编译是非常耗时的,这是ES的自我保护功能。
b.我的操作是动态评分通过script实现去了。
{
"query": {
"function_score": {
"functions": [
{
"script_score": {
"script": {
"source": "_score * ((doc['scoreWords'].values.contains('大米')) ? 2.0 : 1.0)",
"lang": "painless"
}
}
}
]
}
}
}
2.寻求解决办法:一般而言是由两种解决办法,一是调高限制。二是采用filter+权重评分。
a.调高限制,官方操作方法:
PUT _cluster/settings
{
"transient" : {
"script.max_compilations_rate" : "100/1m"
}
}
b.寻找替代方法&#