Map reduce temporary collection can not be removed or accessed

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Done
    • Priority: Major - P3
    • None
    • Affects Version/s: 2.4.4
    • Component/s: MapReduce
    • None
    • Environment:
      ubuntu@db:~$ uname -a
      Linux ip-10-104-157-132 3.2.0-56-virtual #86-Ubuntu SMP Wed Oct 23 09:43:22 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

      Amazon EC2 with EBS
    • Linux
    • Hide

      Can not reproduce.

      Show
      Can not reproduce.
    • None
    • 3
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Ran accidentally map reduce to a busy server and had to kill the client process as some client connections were not responding anymore. After killing all processes the temporary collection '_purge' was not removed and even after cleanly shutting down and restarting mongo it can not be removed.

      ubuntu@db:~$ /opt/mongodb/bin/mongo
      MongoDB shell version: 2.4.4
      connecting to: test
      > use mydb
      switched to db mydb
      > show collections
      _purge
      adminmessages
      ...

      > db._purge.drop()
      Sat Jan 18 06:12:06.024 JavaScript execution failed: TypeError: Cannot call method 'drop' of undefined
      > db['_purge'].count()
      Sat Jan 18 06:12:26.334 JavaScript execution failed: TypeError: Cannot call method 'count' of undefined
      > db.getCollectionNames();
      [
      "_purge",
      "adminmessages",
      ....
      Can see this from mongo log

      Sat Jan 18 04:50:54.451 [conn5226] CMD: drop war._purge
      Sat Jan 18 04:50:54.566 [conn5226] command war.$cmd command:

      { drop: "_purge" }

      ntoreturn:1 keyUpdates:0 reslen:117 140ms
      Sat Jan 18 04:50:54.695 [conn5226] command admin.$cmd command:

      { renameCollection: "war.tmp.mr.battleinbox_118", to: "war._purge", stayTemp: false }

      ntoreturn:1 keyUpdates:0 reslen:37 120ms
      Sat Jan 18 04:50:54.714 [conn5226] CMD: drop war.tmp.mr.battleinbox_118
      Sat Jan 18 04:50:54.761 [conn5226] CMD: drop war.tmp.mr.battleinbox_118
      Sat Jan 18 04:50:54.761 [conn5226] CMD: drop war.tmp.mr.battleinbox_118_inc
      Sat Jan 18 04:50:54.849 [conn5173] update war.inbox query:

      { read: false, uid: 202584 }

      update: { $set:

      { read: true }

      } nscanned:3 nupdated:2 keyUpdates:0 numYields: 1 locks(micros) w:783 107ms
      Sat Jan 18 04:50:54.849 [conn4886] insert war.mapevents ninserted:1 keyUpdates:0 locks(micros) w:435 108ms
      Sat Jan 18 04:50:54.903 [conn5145] update war.battleinbox query:

      { read: false, uid: 212933 }

      update: { $set:

      { read: true }

      } nscanned:39 nupdated:21 keyUpdates:0 numYields: 2 locks(micros) w:101363 186ms
      Sat Jan 18 04:50:54.920 [conn5226] CMD: drop war.tmp.mr.battleinbox_118
      Sat Jan 18 04:50:54.931 [conn5226] CMD: drop war.tmp.mr.battleinbox_118_inc
      Sat Jan 18 04:50:55.131 [conn5136] query war.users query:

      { gcid: "G:625654150", account_type: 6 }

      ntoreturn:1 ntoskip:0 nscanned:112460 keyUpdates:0 numYields: 251 locks(micros) r:1113617 nreturned:0 reslen:20 1933ms
      Sat Jan 18 04:50:55.135 [conn5226] command war.$cmd command: { mapreduce: "battleinbox", map:
      function()

      { emit(this.uid, 1); }

      , reduce:
      function(key, values)

      { return Array.sum(values); }

      , out: "_purge" } ntoreturn:1 keyUpdates:0 numYields: 69182 locks(micros) W:302844 r:1682304504 w:28452182 reslen:130 1952453ms

      ...
      Sat Jan 18 04:53:18.628 [conn5226] getmore war._purge cursorid:3953529293811394301 ntoreturn:0 k
      eyUpdates:0 numYields: 23 locks(micros) r:119699 nreturned:56952 reslen:1879436 134ms

              Assignee:
              Stennie Steneker (Inactive)
              Reporter:
              Teemu Ikonen
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: