-
Type:
Bug
-
Resolution: Done
-
Priority:
Major - P3
-
None
-
Affects Version/s: 2.4.9, 2.5.5
-
Component/s: MapReduce
-
Query Execution
-
ALL
-
-
None
-
None
-
None
-
None
-
None
-
None
-
None
In db.currentOp() we support status output for MR jobs. However, if query filter is used, we output status incorrectly:
> db.currentOp()
{
"inprog" : [
{
"opid" : 16406,
"active" : true,
"secs_running" : 6,
"op" : "query",
"ns" : "test.test",
"query" : {
"mapreduce" : "test",
"map" : function () { sleep(1); emit(1,this.val); },
"reduce" : function (id, val) {
return Array.sum(val);
},
"out" : "map_reduce_example",
"query" : {
"val" : {
"$gt" : 1
}
}
},
"client" : "127.0.0.1:57129",
"desc" : "conn7",
"threadId" : "0x106a87000",
"connectionId" : 7,
"locks" : {
"^" : "r",
"^test" : "R"
},
"waitingForLock" : false,
"msg" : "m/r: (1/3) emit phase M/R: (1/3) Emit Progress: 5173/1 517300%",
"progress" : {
"done" : 5173,
"total" : 1
},
"numYields" : 57,
"lockStats" : {
"timeLockedMicros" : {
"r" : NumberLong(13163605),
"w" : NumberLong(1055)
},
"timeAcquiringMicros" : {
"r" : NumberLong(6595364),
"w" : NumberLong(7)
}
}
}
]
}
We need to handle filtered jobs correctly and not output misleading percentages in db.currentOp(). (output in logs is fine)
- related to
-
SERVER-9907 Allow to skip initial count() in mapreduce
-
- Closed
-