我正在尝试使用elasticsearch手动实现对neptune db的全文搜索,但出现以下错误:
{"requestId":"bcb16f6b-7e60-4e71-b0d8-a6a4a9b38b00","code":"MalformedQueryException","detailedMessage":"Failed to interpret Gremlin query: null"}
这是我的文件:
{
"entity_id": "f8b9726f-74f9-a0e0-5fbd-b609bbb14f89",
"entity_type": [
"suggestions"
],
"document_type": "vertex",
"predicates": {
"title": {
"value": "samsung mobile"
}
}
}
查询:
g.withSideEffect('Neptune#fts.endpoint','elasticsearch cluster end point').withSideEffect('Neptune#fts.queryType', 'match').V().has('title','Neptune#fts samsung').local(values('title').fold()).limit(5).valueMap().toList()
它是给予错误,只有当我把一个现有的词在搜索,即三星,但如果我搜索一个不可用的词,它工作得很好,没有抛出任何错误。不知道这里出了什么问题,有人能帮我吗?
1条答案
按热度按时间plupiseo1#
这个
local
您显示的步骤将为找到的每个“title”属性创建一个包含该属性的列表。如果不使用本地步骤,则找到的所有值都将打包到单个列表中values('title').fold()
.但是,请注意,这可能就是查询失败的原因,您不能添加
valueMap
在那之后local
就像你想申请的那样valueMap
不是顶点,而是一个或多个字符串列表local
步骤。