我正在使用以下json在Cloudant中查找结果
{
"selector": {
"$and": [
{
"type": {
"$eq": "sensor"
}
},
{
"v": {
"$eq": 2355
}
},
{
"$or": [
{
"p": "#401000103"
},
{
"p": "#401000114"
}
]
},
{
"t_max": {
"$gte": 1459554894
}
},
{
"t_min": {
"$lte": 1459509591
}
}
]
},
"fields": [
"_id",
"p"
],
"limit": 200
}
如果我在cloudant数据库中再次运行此操作,则会出现以下错误:
{
"error": "unknown_error",
"reason": "function_clause",
"ref": 3379914628
}
如果我删除一个$或元素,我会得到查询结果。
(,{"p":"#401000114"}
)
如果我用#401000114替换#401000114,我得到一个结果我得到了结果。 但是当我想要使用这两个元素时,我会得到上面的错误代码。
有人能说出这个error_reason: function_clause 是什么意思?
答案 0 :(得分:2)
error_reason: function_clause
表示服务器出现问题,您应该联系Cloudant支持部门,看看他们是否可以帮助您解决问题。
答案 1 :(得分:0)
我曾与Cloudant支持人员联系过。 这是答案: 该问题通常会影响Cloudant 它会影响多租户和专用集群。
正在研究解决方案。
解决方法是在$或运算符应用的数组中有两个元素,您可以通过重复数组中的一个项来获得正确的结果。