【发布时间】:2016-09-17 07:35:02
【问题描述】:
我的沙发数据库中有一些带有 json 的文档,如下所示。每个 cId 都会改变。我创建了一个带有 map/reduce 函数的视图来过滤掉一些文档并返回一个 json 文档列表。
文档结构 -
{
"_id": "ccf8a36e55913b7cf5b015d6c50009f7",
"_rev": "8-586130996ad60ccef54775c51599e73f",
"cId": 1,
"Status": true
}
这里是示例地图:
function(doc) {
if(doc.Key && doc.Value && doc.Status == true)
emit(null, doc);
}
这里是减少示例:
function(key, values, rereduce){
var kv = [];
values.forEach(function(value){
if(value.cId != <some_val>){
kv.push({"k": value.cId, "v" : value});
}
});
return kv;
}
如果有两个文档,并且 reduce 输出的列表包含 1 个文档,则可以正常工作。但是,如果我再添加一个文档(cId = 2),则会引发错误-“减少输出必须更快地缩小”。为什么会这样?我怎样才能实现我的目标?
【问题讨论】:
标签: couchdb couchdb-futon