18 lines
774 B
JavaScript
18 lines
774 B
JavaScript
// Test that the eval command can't be used to invoke the mapReduce command. SERVER-17889.
|
|
(function() {
|
|
"use strict";
|
|
db.eval_mr.drop();
|
|
db.eval_mr_out.drop();
|
|
assert.writeOK(db.eval_mr.insert({val: 1}));
|
|
assert.writeOK(db.eval_mr.insert({val: 2}));
|
|
var runBasicMapReduce = function() {
|
|
return db.eval_mr.runCommand("mapReduce",
|
|
{map: function() { emit(0, this.val); },
|
|
reduce: function(id, values) { return Array.sum(values); },
|
|
out: {replace: "eval_mr_out"}});
|
|
};
|
|
assert.commandWorked(runBasicMapReduce());
|
|
assert.eq(3, db.eval_mr_out.findOne().value);
|
|
assert.commandFailed(db.eval(runBasicMapReduce));
|
|
})();
|