我可以在NodeJS中使用MongoJS运行简单的{ping:1}命令,但是当我尝试运行mapreduce命令时,我收到一个错误。我已经搜索出错误的废话,似乎无法在任何地方找到解决方案。
成功命令
db.runCommand({ping:1}, function(err, res){
if(!err && res.ok){
console.log("working")
}
});
命令不成功
db.runCommand({
mapreduce: "videos",
map: map,
reduce: reduce,
out: "tags"
},function(err, res){
if(!err && res.ok){
console.log("working")
}
});
收到错误
{ errmsg: 'exception: not code', code: 10062, ok: 0 }
这是mapFn和ReduceFn
var map = function() {
if (!this.tags) {
return;
}
for (index in this.tags) {
emit(this.tags[index], 1);
}
};
var reduce = function(previous, current) {
var count = 0;
for (index in current) {
count += current[index];
}
return count;
};
我直接从MongoDB cookbook拿到了这个例子。