Hi,
I'm having a problem with my map/reduce function which only occurred
after upgrading to mongodb 1.6.1. I am currently using pymongo 1.5 and
mongodb 1.6.2.
My map/reduce functions look like this:
http://pastebin.com/RZBau2Vs
And the log shows messages like these:
Mon Sep 6 10:25:20 [conn39] CMD: drop
smms_db.tmp.mr.mapreduce_1283761520_8
Mon Sep 6 10:25:20 [conn39] CMD: drop
smms_db.tmp.mr.mapreduce_1283761520_8_inc
Mon Sep 6 10:25:20 [conn39] building new index on { 0: 1 } for
smms_db.tmp.mr.mapreduce_1283761520_8_inc
Mon Sep 6 10:25:20 [conn39] Buildindex
smms_db.tmp.mr.mapreduce_1283761520_8_inc idxNo:0 { ns:
"smms_db.tmp.mr.mapreduce_1283761520_8_inc", key: { 0: 1 }, name:
"0_1" }
Mon Sep 6 10:25:20 [conn39] getFile(): n=-2
Mon Sep 6 10:25:20 [conn39] Assertion: 10295:getFile(): bad file
number value (corrupt db?): run repair
Mon Sep 6 10:25:20 [conn39] Caught Assertion in insert , continuing
Mon Sep 6 10:25:20 [conn39] insert smms_db.system.indexes exception
10295 getFile(): bad file number value (corrupt db?): run repair 5ms
Mon Sep 6 10:25:20 [conn39] building new index on { _id: 1 } for
smms_db.tmp.mr.mapreduce_1283761520_8
Mon Sep 6 10:25:20 [conn39] Buildindex
smms_db.tmp.mr.mapreduce_1283761520_8 idxNo:0 { name: "_id_", ns:
"smms_db.tmp.mr.mapreduce_1283761520_8", key: { _id: 1 } }
Mon Sep 6 10:25:20 [conn39] getFile(): n=-2
Mon Sep 6 10:25:20 [conn39] Assertion: 10295:getFile(): bad file
number value (corrupt db?): run repair
Mon Sep 6 10:25:20 [conn39] mr failed, removing collection
Mon Sep 6 10:25:20 [conn39] CMD: drop
smms_db.tmp.mr.mapreduce_1283761520_8
Mon Sep 6 10:25:20 [conn39] smms_db Assertion failure a.ext()-
>xprev.isNull() db/pdfile.cpp 705
Mon Sep 6 10:25:20 [conn39] CMD: drop
smms_db.tmp.mr.mapreduce_1283761520_8_inc
Mon Sep 6 10:25:20 [conn39] smms_db Assertion failure a.ext()-
>xprev.isNull() db/pdfile.cpp 705
Weird thing is, I just dumped and restored the whole db content last
week and also started a repairDatabase() and there was no crash oder
similar since then. My understanding from the log messages is that the
map/reduce execution inside the server runs some insert which fails
but I can't exactly tell why (and from my feeling this can only be a
bug since inserts constructed by mongodb shouldn't fail, is that
right?).
Can someone please help me on this?
Greets, Frank