Я использую Elasticsearch версии 6.8. У меня есть несколько перколяционных запросов, содержащих хранимые сценарии, которые соответствуют регулярному выражению для некоторых полей. Сценарии похожи на приведенные ниже:
{
"_id" : "05441b99218d27e831414b4584ef628e",
"found" : true,
"script" : {
"lang" : "painless",
"source" : """Pattern p = /the\s+web\S*/i;return p.matcher(params._source.summary).find();"""
}
}
Теперь, когда я пытаюсь фильтровать документ, возникает исключение пустого указателя. Запрос Percolator ниже:
GET mp_percolator_v9_2/doc/_search
{
"sort": [
{
"folderId": "asc"
}
],
"_source": [
"customerNumber",
"deliverySetId",
"folderId"
],
"query": {
"bool": {
"must": {
"percolate": {
"field": "query",
"document": {
"summary": " go to the state healthe websites ",
}
}
}
}
}
}
Ниже приведена ошибка:
{ "shard" : 1, "index" : "mp_percolator_v9_2", "node" : "o7tCbLC4T9GT61LLS5dcXw", "reason" : { "type" : "script_exception", "reason" : "runtime error", "script_stack" : [ "return p.matcher(params._source.summary).find();", " ^---- HERE" ], "script" : "05441b99218d27e831414b4584ef628e", "lang" : "painless", "caused_by" : { "type" : "null_pointer_exception", "reason" : null } } }